PTLib  Version 2.10.10
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PFactory< AbstractClass, KeyType >::WorkerBase Class Reference

#include <pfactory.h>

Inheritance diagram for PFactory< AbstractClass, KeyType >::WorkerBase:
PDevicePluginFactory< AbstractClass, KeyType >::Worker PFactory< AbstractClass, KeyType >::Worker< ConcreteClass >

Protected Types

enum  Types { NonSingleton, StaticSingleton, DynamicSingleton }

Protected Member Functions

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

Protected Attributes

enum PFactory::WorkerBase::Types m_type
Abstract_Tm_singletonInstance

Member Enumeration Documentation

template<class AbstractClass , typename KeyType = PDefaultPFactoryKey>
enum PFactory::WorkerBase::Types
protected
Enumerator:
NonSingleton 
StaticSingleton 
DynamicSingleton 

Constructor & Destructor Documentation

template<class AbstractClass , typename KeyType = PDefaultPFactoryKey>
PFactory< AbstractClass, KeyType >::WorkerBase::WorkerBase ( bool  singleton = false)
inlineprotected
template<class AbstractClass , typename KeyType = PDefaultPFactoryKey>
PFactory< AbstractClass, KeyType >::WorkerBase::WorkerBase ( Abstract_T instance,
bool  delSingleton = true 
)
inlineprotected
template<class AbstractClass , typename KeyType = PDefaultPFactoryKey>
virtual PFactory< AbstractClass, KeyType >::WorkerBase::~WorkerBase ( )
inlineprotectedvirtual

Member Function Documentation

template<class AbstractClass , typename KeyType = PDefaultPFactoryKey>
virtual Abstract_T* PFactory< AbstractClass, KeyType >::WorkerBase::Create ( const Key_T ) const
inlineprotectedvirtual
template<class AbstractClass , typename KeyType = PDefaultPFactoryKey>
Abstract_T* PFactory< AbstractClass, KeyType >::WorkerBase::CreateInstance ( const Key_T key)
inlineprotected
template<class AbstractClass , typename KeyType = PDefaultPFactoryKey>
virtual void PFactory< AbstractClass, KeyType >::WorkerBase::DestroySingleton ( )
inlineprotectedvirtual
template<class AbstractClass , typename KeyType = PDefaultPFactoryKey>
bool PFactory< AbstractClass, KeyType >::WorkerBase::IsSingleton ( ) const
inlineprotected

Member Data Documentation

template<class AbstractClass , typename KeyType = PDefaultPFactoryKey>
Abstract_T* PFactory< AbstractClass, KeyType >::WorkerBase::m_singletonInstance
protected

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