PTLib  Version 2.18.8
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PParamFactory< AbstractClass, ParamType, KeyType >::Worker< ConcreteClass > Class Template Reference

#include <pfactory.h>

Inheritance diagram for PParamFactory< AbstractClass, ParamType, KeyType >::Worker< ConcreteClass >:
Collaboration diagram for PParamFactory< AbstractClass, ParamType, KeyType >::Worker< ConcreteClass >:

Public Member Functions

 Worker (const Key_T &key, bool singleton=false)
 
 ~Worker ()
 
const Key_TGetKey () const
 

Protected Member Functions

virtual Abstract_TCreate (Param_T param) const
 
 WorkerBase (bool singleton=false)
 
 WorkerBase (Abstract_T *instance, bool delSingleton=true)
 
virtual ~WorkerBase ()
 
Abstract_TCreateInstance (Param_T param)
 
virtual void DestroySingleton ()
 
bool IsSingleton () const
 

Additional Inherited Members

- Protected Types inherited from PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase
enum  Types { NonSingleton, StaticSingleton, DynamicSingleton }
 
- Protected Attributes inherited from PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase
Types m_type
 
Abstract_Tm_singletonInstance
 

Constructor & Destructor Documentation

template<class AbstractClass , typename ParamType , typename KeyType = PDefaultPFactoryKey>
template<class ConcreteClass >
PParamFactory< AbstractClass, ParamType, KeyType >::Worker< ConcreteClass >::Worker ( const Key_T key,
bool  singleton = false 
)
inline

References PAssert.

template<class AbstractClass , typename ParamType , typename KeyType = PDefaultPFactoryKey>
template<class ConcreteClass >
PParamFactory< AbstractClass, ParamType, KeyType >::Worker< ConcreteClass >::~Worker ( )
inline

Member Function Documentation

template<class AbstractClass , typename ParamType , typename KeyType = PDefaultPFactoryKey>
template<class ConcreteClass >
virtual Abstract_T* PParamFactory< AbstractClass, ParamType, KeyType >::Worker< ConcreteClass >::Create ( Param_T  param) const
inlineprotectedvirtual
template<class AbstractClass , typename ParamType , typename KeyType = PDefaultPFactoryKey>
template<class ConcreteClass >
const Key_T& PParamFactory< AbstractClass, ParamType, KeyType >::Worker< ConcreteClass >::GetKey ( ) const
inline

The documentation for this class was generated from the following file: