![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 1999 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: simReport.h,v $ $Revision: 1.20 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00017 00018 00019 #ifndef DtSimReport_H_ 00020 #define DtSimReport_H_ 00021 00022 #include "vrfutil/rdrWritr.h" 00023 #include "vrftasks/reportFactory.h" 00024 #include "tdbutil/translation.h" 00025 #include "vrftasks/vrftasksDefines.h" 00026 #include "tdbutil/tdbUnits.h" 00027 00028 class DtRwString; 00029 00037 class DT_DLL_vrftasks DtSimReport : public DtReaderWriter 00038 { 00039 protected: 00042 00044 DtSimReport(); 00045 00048 DtSimReport(const DtString & writeName, 00049 DtReaderWriterRegistry * parentRegistry = 0); 00050 00052 DtSimReport(const DtString & writeName, const DtSimReport & orig, 00053 DtReaderWriterRegistry * parentRegistry = 0); 00054 00056 const DtSimReport & operator=(const DtSimReport & orig); 00057 00058 public: 00059 00061 virtual ~DtSimReport(); 00062 00065 virtual bool init(); 00066 00072 virtual int type() const = 0; 00073 00078 virtual DtSimReport * clone(const DtString & name, DtReaderWriterRegistry * 00079 parentRegistry = 0) const = 0; 00080 00083 virtual void putData(FILE *fp, int indentLevel = 0); 00084 00087 virtual DtlObjPtr getData(DtlObjPtr args, const DtFilename& searchPath, 00088 const DtVariableBindingsList& variableBindings); 00089 00090 virtual char* netRep(); 00091 00096 virtual void clearNetRep(); 00097 00098 virtual int netRepSize() const = 0; 00099 00100 virtual bool setFromNet(const char* contentBuffer, 00101 unsigned contentSize) = 0; 00102 00103 virtual bool setToNet() = 0; 00104 00105 virtual DtString stringRep() const; 00106 00110 00112 static DtSimReport * createReport(int reportType); 00113 00115 static DtSimReport* createReport(const DtString& reportTypeString); 00116 00117 static void addReportCreatorFcn(const DtString & reportName, int reportType, 00118 DtSimReportCreatorFcn fcn); 00119 00120 static void setFactory(DtSimReportFactory * factory); 00121 static DtSimReportFactory* factory(); 00122 00123 static bool getReportNameFromReportType(int reportType, 00124 DtString& reportName); 00125 static bool getReportTypeFromReportName(const DtString& reportName, 00126 int& reportType); 00127 00128 protected: 00129 virtual char* createNetworkBuffer(); 00130 00131 protected: 00132 00133 char* myNetRep; 00134 00135 protected: 00136 static DtSimReportFactory* myFactory; 00137 00138 }; 00139 00140 00141 #endif 00142 00143