PTLib Version 2.12.9

- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase Class Reference

`#include <pfactory.h>`

Inheritance diagram for PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase:
[legend]

## Public Types
enum | Types { NonSingleton, StaticSingleton, DynamicSingleton }

## Public Member Functions
| WorkerBase (bool singleton=false)
| WorkerBase (Abstract_T *instance, bool delSingleton=true)
virtual | ~WorkerBase ()
Abstract_T * | CreateInstance (Param_T param)
virtual void | DestroySingleton ()
bool | IsSingleton () const

## Protected Member Functions
virtual Abstract_T * | Create (Param_T) const

## Protected Attributes
Types | m_type
Abstract_T * | m_singletonInstance

## Member Enumeration Documentation

template<class AbstractClass, typename ParamType, typename KeyType>

enum PFactoryTemplate::WorkerBase::Types

Enumerator
NonSingleton |
StaticSingleton |
DynamicSingleton |

## Constructor & Destructor Documentation

template<class AbstractClass, typename ParamType, typename KeyType>

PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::WorkerBase | ( | bool | singleton = `false` | ) |
| inline

template<class AbstractClass, typename ParamType, typename KeyType>

PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::WorkerBase | ( | Abstract_T * | instance,
|  | bool | delSingleton = `true`
| ) |  |
| inline

template<class AbstractClass, typename ParamType, typename KeyType>

virtual PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::~WorkerBase | ( |  | ) |
| inline virtual

References PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::DestroySingleton().

## Member Function Documentation

template<class AbstractClass, typename ParamType, typename KeyType>

virtual Abstract_T* PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::Create | ( | Param_T |  | ) | const
| inline protected virtual

Reimplemented in PParamFactory< AbstractClass, ParamType, KeyType >::Worker< ConcreteClass >.

References PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::m_singletonInstance, PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::m_type, PAssert, and PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::StaticSingleton.

Referenced by PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::CreateInstance().

template<class AbstractClass, typename ParamType, typename KeyType>

Abstract_T* PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::CreateInstance | ( | Param_T | param | ) |
| inline

References PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::Create(), PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::m_singletonInstance, PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::m_type, and PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::NonSingleton.

template<class AbstractClass, typename ParamType, typename KeyType>

virtual void PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::DestroySingleton | ( |  | ) |
| inline virtual

References PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::DynamicSingleton, PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::m_singletonInstance, and PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::m_type.

Referenced by PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::~WorkerBase().

template<class AbstractClass, typename ParamType, typename KeyType>

bool PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::IsSingleton | ( |  | ) | const
| inline

References PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::m_type, and PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::NonSingleton.

## Member Data Documentation

template<class AbstractClass, typename ParamType, typename KeyType>

Abstract_T* PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::m_singletonInstance
| protected

Referenced by PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::Create(), PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::CreateInstance(), and PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::DestroySingleton().

template<class AbstractClass, typename ParamType, typename KeyType>

Types PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::m_type
| protected

Referenced by PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::Create(), PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::CreateInstance(), PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::DestroySingleton(), and PFactoryTemplate< AbstractClass, ParamType, KeyType >::WorkerBase::IsSingleton().

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

- pfactory.h