Hoyt's FORK of DemoIccMAX 2.1.17.hoyt
Documentation for Hoyt's FORK of DemoIccMAX
|
Class: CIccMpeCreator. More...
#include <IccMpeFactory.h>
Public Member Functions | |
~CIccMpeCreator () | |
Static Public Member Functions | |
static CIccMultiProcessElement * | CreateElement (icElemTypeSignature elemTypeSig) |
Function: CreateElement(elemTypeSig) Create a element of type elemTypeSig. | |
static bool | GetElementSigName (std::string &elemName, icElemTypeSignature elemTypeSig) |
Function: GetElementSigName(elemTypeSig) Get display name of elemTypeSig. | |
static IIccMpeFactory * | PopFactory () |
Function: PopFactory() Remove the top IIccMpeFactory from the stack of element factories tracked by the system. | |
static void | PushFactory (IIccMpeFactory *pFactory) |
Function: PushFactory(pFactory) Add an IIccMpeFactory to the stack of element factories tracked by the system. | |
Private Member Functions | |
CIccMpeCreator () | |
Only GetInstance() can create the singleton. | |
CIccMultiProcessElement * | DoCreateElement (icElemTypeSignature elemTypeSig) |
bool | DoGetElementSigName (std::string &elemName, icElemTypeSignature elemTypeSig) |
IIccMpeFactory * | DoPopFactory (bool bAll=false) |
void | DoPushFactory (IIccMpeFactory *pFactory) |
Static Private Member Functions | |
static CIccMpeCreator * | GetInstance () |
Function: GetInstance() Private static function to access singleton CiccElementCreator Object. | |
Private Attributes | |
CIccMpeFactoryList | factoryStack |
Static Private Attributes | |
static CIccMpeCreatorPtr | theElementCreator |
Class: CIccMpeCreator.
Purpose: CIccMpeCreator uses a singleton pattern to provide dynamically upgradeable CIccProcessElement derived object creation based on element signature.
Definition at line 196 of file IccMpeFactory.h.
CIccMpeCreator::~CIccMpeCreator | ( | ) |
Definition at line 227 of file IccMpeFactory.cpp.
|
inlineprivate |
|
inlinestatic |
Function: CreateElement(elemTypeSig) Create a element of type elemTypeSig.
Parameter(s): elemTypeSig = signature of the ICC element type for the element to be created
Returns a new CIccProcessElement object of the given signature type. Each factory in the factoryStack is used until a factory supports the signature type.
Definition at line 213 of file IccMpeFactory.h.
References DoCreateElement(), and GetInstance().
Referenced by CIccMultiProcessElement::Create().
|
private |
Definition at line 248 of file IccMpeFactory.cpp.
Referenced by CreateElement().
|
private |
Definition at line 261 of file IccMpeFactory.cpp.
Referenced by GetElementSigName().
|
private |
Definition at line 278 of file IccMpeFactory.cpp.
Referenced by PopFactory().
|
private |
Definition at line 273 of file IccMpeFactory.cpp.
|
inlinestatic |
Function: GetElementSigName(elemTypeSig) Get display name of elemTypeSig.
Parameter(s): elemName = string to put element name into elemTypeSig = signature of the ICC element type to get a name for
Returns true if element type is recognized by any factory, false if all factories do not create elemTypeSig elements. If element type is not recognized by any factories a suitable display name will be placed in elemName.
Definition at line 229 of file IccMpeFactory.h.
References DoGetElementSigName(), and GetInstance().
Referenced by CIccInfo::GetElementTypeSigName().
|
staticprivate |
Function: GetInstance() Private static function to access singleton CiccElementCreator Object.
Parameter(s): None
Returns the singleton CIccMpeCreator object. It will allocate a new one and push a single CIccSpecElement Factory object onto the factory stack if the singleton has not been intialized.
Definition at line 237 of file IccMpeFactory.cpp.
Referenced by CreateElement(), GetElementSigName(), PopFactory(), and PushFactory().
|
inlinestatic |
Function: PopFactory() Remove the top IIccMpeFactory from the stack of element factories tracked by the system.
Parameter(s): None
Returns the top IIccMpeFactory from the stack of element factories tracked by the system. The returned element factory is no longer owned by the system and needs to be deleted to avoid memory leaks.
Note: The initial CIccBasicElemFactory cannot be popped off the stack.
Definition at line 262 of file IccMpeFactory.h.
References DoPopFactory(), and GetInstance().
|
inlinestatic |
Function: PushFactory(pFactory) Add an IIccMpeFactory to the stack of element factories tracked by the system.
Parameter(s): pFactory = pointer to an IIccMpeFactory object to add to the system. The pFactory must be created with new, and will be owned CIccMpeCreator until popped off the stack using PopFactory(). Any factories not popped off will be taken care of properly on application shutdown.
Definition at line 245 of file IccMpeFactory.h.
References GetInstance().
Referenced by main().
|
private |
Definition at line 289 of file IccMpeFactory.h.
|
staticprivate |
Definition at line 287 of file IccMpeFactory.h.