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:

## Protected Types

enum | Types { NonSingleton, StaticSingleton, DynamicSingleton }

## Protected Member Functions

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

## Protected Attributes

enum PFactory::WorkerBase::Types | m_type
Abstract_T * | m_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` | ) |

inline protected

template<class AbstractClass , typename KeyType = PDefaultPFactoryKey>

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

inline protected

template<class AbstractClass , typename KeyType = PDefaultPFactoryKey>

virtual PFactory< AbstractClass, KeyType >::WorkerBase::~WorkerBase | ( |  | ) |

inline protected virtual

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

## Member Function Documentation

template<class AbstractClass , typename KeyType = PDefaultPFactoryKey>

virtual Abstract_T* PFactory< AbstractClass, KeyType >::WorkerBase::Create | ( | const Key_T & |  | ) | const

inline protected virtual

Reimplemented in PFactory< AbstractClass, KeyType >::Worker< ConcreteClass >, and PDevicePluginFactory< AbstractClass, KeyType >::Worker.

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

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

template<class AbstractClass , typename KeyType = PDefaultPFactoryKey>

Abstract_T* PFactory< AbstractClass, KeyType >::WorkerBase::CreateInstance | ( | const Key_T & | key | ) |

inline protected

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

template<class AbstractClass , typename KeyType = PDefaultPFactoryKey>

virtual void PFactory< AbstractClass, KeyType >::WorkerBase::DestroySingleton | ( |  | ) |

inline protected virtual

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

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

template<class AbstractClass , typename KeyType = PDefaultPFactoryKey>

bool PFactory< AbstractClass, KeyType >::WorkerBase::IsSingleton | ( |  | ) | const

inline protected

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

## Member Data Documentation

template<class AbstractClass , typename KeyType = PDefaultPFactoryKey>

Abstract_T* PFactory< AbstractClass, KeyType >::WorkerBase::m_singletonInstance

protected

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

template<class AbstractClass , typename KeyType = PDefaultPFactoryKey>

enum PFactory::WorkerBase::Types PFactory< AbstractClass, KeyType >::WorkerBase::m_type

protected

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

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

- pfactory.h