![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 1999 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: stmtFactory.h,v $ $Revision: 1.9 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00017 00018 #ifndef DtStatementFactory_H_ 00019 #define DtStatementFactory_H_ 00020 00021 #include <vlutil/vlHashlist.h> 00022 00023 class DtStatementFactoryEntry; 00024 class DtReaderWriterRegistry; 00025 class DtSimStatement; 00026 00027 typedef DtSimStatement * (*DtStatementCreatorFcn) 00028 (DtReaderWriterRegistry* parentRegistry); 00029 00036 00037 #include "vrfplan/vrfplanDefines.h" 00038 class DT_DLL_vrfplan DtStatementFactory 00039 { 00040 public: 00042 DtStatementFactory(); 00043 00045 DtStatementFactory(const DtStatementFactory& orig); 00046 00048 const DtStatementFactory& operator=(const DtStatementFactory& orig); 00049 00051 virtual ~DtStatementFactory(); 00052 00054 virtual void addCreatorFcn(const DtString& type, const int intType, 00055 DtStatementCreatorFcn fcn); 00056 00057 virtual DtSimStatement * createStatement( 00058 const DtString& type, DtReaderWriterRegistry* parentRegistry); 00059 virtual DtSimStatement* createStatement( 00060 int type, DtReaderWriterRegistry* parentRegistry); 00061 00062 static DtStatementFactory* create(); 00063 00064 protected: 00065 00066 DtHashlist myStringTypeHashlist; 00067 DtHashlist myIntTypeHashlist; 00068 00069 }; 00070 00071 #endif 00072