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
Classes | Public Types | Public Member Functions | Static Public Member Functions | List of all members
PParamFactory< AbstractClass, ParamType, KeyType > Class Template Reference

Class for a factory to create concrete class instances which have a single parameter during construction. More...

`#include <pfactory.h>`

Inheritance diagram for PParamFactory< AbstractClass, ParamType, KeyType >:
[legend]
Collaboration diagram for PParamFactory< AbstractClass, ParamType, KeyType >:
[legend]

## Classes
class | Worker

## Public Types
typedef PFactoryTemplate < AbstractClass, ParamType, KeyType > | Base_T
typedef Base_T::WorkerBase | WorkerBase_T
typedef Base_T::Abstract_T | Abstract_T
typedef Base_T::Param_T | Param_T
typedef Base_T::Key_T | Key_T
Public Types inherited from PFactoryTemplate< AbstractClass, ParamType, KeyType >
typedef AbstractClass | Abstract_T
typedef ParamType | Param_T
typedef KeyType | Key_T
typedef std::vector< Key_T > | KeyList_T
typedef std::map< Key_T, WorkerBase * > | WorkerMap_T
typedef WorkerMap_T::iterator | WorkerIter_T

## Public Member Functions
| PFACTORY_STATICS (PParamFactory)
Public Member Functions inherited from PFactoryTemplate< AbstractClass, ParamType, KeyType >
virtual void | DestroySingletons ()
Public Member Functions inherited from PFactoryBase
virtual | ~PFactoryBase ()

## Static Public Member Functions
static Abstract_T * | CreateInstance (const Key_T &key, Param_T param)
template<class Derived_T >
static Derived_T * | CreateInstanceAs (const Key_T &key, Param_T param)

## Additional Inherited Members
Protected Member Functions inherited from PFactoryTemplate< AbstractClass, ParamType, KeyType >
| PFactoryTemplate ()
| ~PFactoryTemplate ()
bool | InternalRegister (const Key_T &key, WorkerBase *worker)
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 ()
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 ()
Protected Attributes inherited from PFactoryTemplate< AbstractClass, ParamType, KeyType >
WorkerMap_T | m_workers

## Detailed Description

### template<class AbstractClass, typename ParamType, typename KeyType = PDefaultPFactoryKey>
class PParamFactory< AbstractClass, ParamType, KeyType >

Class for a factory to create concrete class instances which have a single parameter during construction.

## Member Typedef Documentation

template<class AbstractClass , typename ParamType , typename KeyType = PDefaultPFactoryKey>

typedef Base_T::Abstract_T PParamFactory< AbstractClass, ParamType, KeyType >::Abstract_T

template<class AbstractClass , typename ParamType , typename KeyType = PDefaultPFactoryKey>

typedef PFactoryTemplate<AbstractClass, ParamType, KeyType> PParamFactory< AbstractClass, ParamType, KeyType >::Base_T

template<class AbstractClass , typename ParamType , typename KeyType = PDefaultPFactoryKey>

typedef Base_T::Key_T PParamFactory< AbstractClass, ParamType, KeyType >::Key_T

template<class AbstractClass , typename ParamType , typename KeyType = PDefaultPFactoryKey>

typedef Base_T::Param_T PParamFactory< AbstractClass, ParamType, KeyType >::Param_T

template<class AbstractClass , typename ParamType , typename KeyType = PDefaultPFactoryKey>

typedef Base_T::WorkerBase PParamFactory< AbstractClass, ParamType, KeyType >::WorkerBase_T

## Member Function Documentation

template<class AbstractClass , typename ParamType , typename KeyType = PDefaultPFactoryKey>

static Abstract_T* PParamFactory< AbstractClass, ParamType, KeyType >::CreateInstance | ( | const Key_T & | key,
|  | Param_T | param
| ) |  |
| inline static

template<class AbstractClass , typename ParamType , typename KeyType = PDefaultPFactoryKey>
template<class Derived_T >

static Derived_T* PParamFactory< AbstractClass, ParamType, KeyType >::CreateInstanceAs | ( | const Key_T & | key,
|  | Param_T | param
| ) |  |
| inline static

template<class AbstractClass , typename ParamType , typename KeyType = PDefaultPFactoryKey>

PParamFactory< AbstractClass, ParamType, KeyType >::PFACTORY_STATICS | ( | PParamFactory< AbstractClass, ParamType, KeyType > |  | ) |

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

- pfactory.h