MDSTk Libraries  1.1.0
Medical Data Segmentation Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Friends
mds::mod::CCompressorFactory Class Reference

Channel compressors creation factory. More...

#include <mdsCompressorFactory.h>

Inheritance diagram for mds::mod::CCompressorFactory:
Inheritance graph
[legend]

List of all members.

Public Types

enum  { CLASS_SINGLETON }
 Templates that require members of the CSingleton class can use this enum to check the existence. More...
enum  { LONGEVITY = L }
 Object longevity. More...
typedef mds::base::CFactory
< CChannelCompressor, int
tBase
 Base class.
typedef tObject *(* tCreationFunction )()
 Object creation function.
typedef int tIdentifier
 Object identifier type.
typedef CLibraryLockableClass
< CFactory< CChannelCompressor,
int > >::CLock 
tLock
 Lock type.
typedef CChannelCompressor tObject
 Produced object type.

Public Member Functions

tObjectcreate (const tIdentifier &Id)
 Creates a new object having the identifier 'Id'.
bool registerObject (const tIdentifier &Id, tCreationFunction Function)
 Registers an object creation function.
bool unregisterObject (const tIdentifier &Id)
 Unregisters the object creation function.
 ~CCompressorFactory ()
 Destructor.

Static Public Member Functions

static void lock ()
 Locks the object.
static void unlock ()
 Locks the object.

Protected Types

typedef std::map< tIdentifier,
tCreationFunction
tFunctions
 Map of creation functions.

Protected Member Functions

 CCompressorFactory ()
 Private constructor.

Protected Attributes

tFunctions m_Functions
 Map of all registered creation functions.

Friends

class mds::base::CSingletonHolder< CCompressorFactory >
 Allow factory instantiation using singleton holder.
class mds::base::CSingletonHolder< CFactory >
 Allow factory instantiation using singleton holder.

Detailed Description

Channel compressors creation factory.


Member Typedef Documentation

Base class.

Object creation function.

typedef std::map<tIdentifier, tCreationFunction> mds::base::CFactory< CChannelCompressor , int >::tFunctions [protected, inherited]

Map of creation functions.

Object identifier type.

typedef CLibraryLockableClass<CFactory<CChannelCompressor ,int > >::CLock mds::base::CFactory< CChannelCompressor , int >::tLock [inherited]

Lock type.

Produced object type.


Member Enumeration Documentation

template<int L>
anonymous enum [inherited]

Templates that require members of the CSingleton class can use this enum to check the existence.

Enumerator:
CLASS_SINGLETON 
template<int L>
anonymous enum [inherited]

Object longevity.

Enumerator:
LONGEVITY 

Constructor & Destructor Documentation

Destructor.

Private constructor.


Member Function Documentation

Creates a new object having the identifier 'Id'.

template<class T>
static void mds::base::CLockableClass< T >::lock ( ) [static, inherited]

Locks the object.

bool mds::base::CFactory< CChannelCompressor , int >::registerObject ( const tIdentifier Id,
tCreationFunction  Function 
) [inherited]

Registers an object creation function.

template<class T>
static void mds::base::CLockableClass< T >::unlock ( ) [static, inherited]

Locks the object.

bool mds::base::CFactory< CChannelCompressor , int >::unregisterObject ( const tIdentifier Id) [inherited]

Unregisters the object creation function.


Friends And Related Function Documentation

Allow factory instantiation using singleton holder.

friend class mds::base::CSingletonHolder< CFactory > [friend, inherited]

Allow factory instantiation using singleton holder.


Member Data Documentation

Map of all registered creation functions.


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