![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2005 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: signaturePropagatorDescFact.h,v $ $Revision: 1.3 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00013 00014 #ifndef signaturePropagatorDescFact_H_ 00015 #define signaturePropagatorDescFact_H_ 00016 00017 #include "vrfobjparam/signaturePropagatorDesc.h" 00018 #include <map> 00019 00020 typedef DtSignaturePropagatorDescriptor * (*DtSignaturePropagatorDescriptorCreatorFcn)(); 00021 00023 #include "vrfobjparam/vrfobjparamDefines.h" 00024 class DT_DLL_vrfobjparam DtSignaturePropagatorDescriptorFactory 00025 { 00026 public: 00028 DtSignaturePropagatorDescriptorFactory(); 00029 00031 virtual ~DtSignaturePropagatorDescriptorFactory(); 00032 00034 virtual void addCreatorFcn(const DtString& type, 00035 DtSignaturePropagatorDescriptorCreatorFcn fcn); 00036 00039 virtual DtSignaturePropagatorDescriptor* 00040 createSignaturePropagatorDescriptor(const DtString& type); 00041 00042 static DtSignaturePropagatorDescriptorFactory* create(); 00043 00044 private: 00046 DtSignaturePropagatorDescriptorFactory( 00047 const DtSignaturePropagatorDescriptorFactory& orig); 00049 DtSignaturePropagatorDescriptorFactory& operator=( 00050 const DtSignaturePropagatorDescriptorFactory& orig); 00051 00052 protected: 00053 typedef std::map<DtString, DtSignaturePropagatorDescriptorCreatorFcn> 00054 DtSignaturePropagatorDescriptorCreatorMap; 00055 DtSignaturePropagatorDescriptorCreatorMap myCreatorMap; 00056 }; 00057 00058 #endif