|
PTLib
Version 2.18.8
|
Template class for generic factories of an abstract class. More...
#include <pfactory.h>


Classes | |
| class | WorkerBase |
| struct | WorkerWrap |
Public Types | |
| typedef AbstractClass | Abstract_T |
| typedef ParamType | Param_T |
| typedef KeyType | Key_T |
| typedef std::vector< Key_T > | KeyList_T |
| typedef std::map< Key_T, WorkerWrap > | WorkerMap_T |
| typedef WorkerMap_T::iterator | WorkerIter_T |
Public Member Functions | |
| virtual void | DestroySingletons () |
Public Member Functions inherited from PFactoryBase | |
| virtual | ~PFactoryBase () |
Protected Member Functions | |
| PFactoryTemplate () | |
| ~PFactoryTemplate () | |
| bool | InternalRegister (const Key_T &key, WorkerBase *worker, bool autoDeleteWorker) |
| bool | InternalRegister (const Key_T &key, Abstract_T *instance, bool autoDeleteInstance) |
| PBoolean | InternalRegisterAs (const Key_T &newKey, const Key_T &oldKey) |
| void | InternalUnregister (const Key_T &key) |
| void | InternalUnregister (WorkerBase *instance) |
| void | InternalUnregisterAll () |
| bool | InternalIsRegistered (const Key_T &key) |
| Abstract_T * | InternalCreateInstance (const Key_T &key, Param_T param) |
| void | InternalDestroy (const Key_T &key, Abstract_T *instance) |
| bool | InternalIsSingleton (const Key_T &key) |
| KeyList_T | InternalGetKeyList () |
Protected Member Functions inherited from PFactoryBase | |
| PFactoryBase () | |
| PDECLARE_MUTEX (m_mutex,"PFactoryBase") | |
Protected Attributes | |
| WorkerMap_T | m_workers |
Additional Inherited Members | |
Static Public Member Functions inherited from PFactoryBase | |
| static FactoryMap & | GetFactories () |
Static Protected Member Functions inherited from PFactoryBase | |
| static PFactoryBase & | InternalGetFactory (const std::string &className, PFactoryBase *(*createFactory)()) |
| template<class TheFactory > | |
| static PFactoryBase * | CreateFactory () |
| template<class TheFactory > | |
| static TheFactory & | GetFactoryAs () |
Template class for generic factories of an abstract class.
| typedef AbstractClass PFactoryTemplate< AbstractClass, ParamType, KeyType >::Abstract_T |
| typedef KeyType PFactoryTemplate< AbstractClass, ParamType, KeyType >::Key_T |
| typedef std::vector<Key_T> PFactoryTemplate< AbstractClass, ParamType, KeyType >::KeyList_T |
| typedef ParamType PFactoryTemplate< AbstractClass, ParamType, KeyType >::Param_T |
| typedef WorkerMap_T::iterator PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerIter_T |
| typedef std::map<Key_T, WorkerWrap> PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerMap_T |
|
inlineprotected |
|
inlineprotected |
|
inlinevirtual |
Implements PFactoryBase.
Referenced by PFactoryTemplate< AbstractClass, const KeyType &, KeyType >::~PFactoryTemplate().
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
protected |
Referenced by PFactoryTemplate< AbstractClass, const KeyType &, KeyType >::DestroySingletons(), PFactoryTemplate< AbstractClass, const KeyType &, KeyType >::InternalCreateInstance(), PFactoryTemplate< AbstractClass, const KeyType &, KeyType >::InternalDestroy(), PFactoryTemplate< AbstractClass, const KeyType &, KeyType >::InternalGetKeyList(), PFactoryTemplate< AbstractClass, const KeyType &, KeyType >::InternalIsRegistered(), PFactoryTemplate< AbstractClass, const KeyType &, KeyType >::InternalIsSingleton(), PFactoryTemplate< AbstractClass, const KeyType &, KeyType >::InternalRegister(), PFactoryTemplate< AbstractClass, const KeyType &, KeyType >::InternalRegisterAs(), PFactoryTemplate< AbstractClass, const KeyType &, KeyType >::InternalUnregister(), and PFactoryTemplate< AbstractClass, const KeyType &, KeyType >::InternalUnregisterAll().