00001 /****************************************************************************** 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 00011 00012 #if DtHLA 00013 00014 #ifndef lgrHlaLegacyFileFormats_H_ 00015 #define lgrHlaLegacyFileFormats_H_ 00016 00017 #include "lgrSim.h" 00018 #include "lgrLegacyCheckpointedFormat.h" 00019 #include "lgrLegacyUncheckpointedFormat.h" 00020 00021 namespace MAKLogger 00022 { 00023 class DtLoggerFile; 00024 00027 class DT_DLL_LGRSIM DtLgrLegacyHlaUncheckpointedFormat : 00028 public DtLgrLegacyUncheckpointedFormat 00029 { 00030 public: 00032 DtLgrLegacyHlaUncheckpointedFormat(DtLoggerFile*); 00034 virtual ~DtLgrLegacyHlaUncheckpointedFormat(); 00035 00036 private: 00038 DtLgrLegacyHlaUncheckpointedFormat 00039 (const DtLgrLegacyHlaUncheckpointedFormat&); 00041 DtLgrLegacyHlaUncheckpointedFormat& operator=( 00042 const DtLgrLegacyHlaUncheckpointedFormat&); 00043 00044 public: 00045 00047 virtual void copyMetaData(const DtLgrFileFormatter* formatter); 00048 00049 protected: 00050 00053 virtual void validateType(int type); 00054 00056 virtual int decodeTypeFromFlags(unsigned int flags); 00057 00059 virtual void readStartMetaData(); 00060 00062 virtual void writeStartMetaData(); 00063 00065 virtual void readFomMetaData(); 00066 00068 virtual void writeFomMetaData(); 00069 00070 protected: 00071 00072 DtFilePosition myFomPosition; 00073 }; 00074 00077 class DT_DLL_LGRSIM DtLgrLegacyHlaCheckpointedFormat : 00078 public DtLgrLegacyCheckpointedFormat 00079 { 00080 public: 00082 DtLgrLegacyHlaCheckpointedFormat(DtLoggerFile*); 00084 virtual ~DtLgrLegacyHlaCheckpointedFormat(); 00085 00086 private: 00088 DtLgrLegacyHlaCheckpointedFormat(const DtLgrLegacyHlaCheckpointedFormat&); 00090 DtLgrLegacyHlaCheckpointedFormat& operator=( 00091 const DtLgrLegacyHlaCheckpointedFormat&); 00092 00093 public: 00094 00096 virtual void copyMetaData(const DtLgrFileFormatter* formatter); 00097 00098 protected: 00099 00102 virtual void validateType(int type); 00103 00105 virtual int decodeTypeFromFlags(unsigned int flags); 00106 00108 virtual void readStartMetaData(); 00109 00111 virtual void writeStartMetaData(); 00112 00114 virtual void readEndMetaData(); 00115 00117 virtual void writeEndMetaData(); 00118 00120 virtual void readFomMetaData(); 00121 00123 virtual void writeFomMetaData(); 00124 00125 protected: 00126 00127 DtFilePosition myFomPosition; 00128 }; 00129 00130 class DT_DLL_LGRSIM DtLgrLegacyHla4_0Format : public DtLgrLegacyHlaCheckpointedFormat 00131 { 00132 public: 00133 DtLgrLegacyHla4_0Format(DtLoggerFile*); 00134 00135 virtual ~DtLgrLegacyHla4_0Format(); 00136 00139 virtual void validateType(int type); 00140 00141 private: 00143 DtLgrLegacyHla4_0Format(const DtLgrLegacyHla4_0Format&); 00145 DtLgrLegacyHla4_0Format& operator=( 00146 const DtLgrLegacyHla4_0Format&); 00147 00148 protected: 00149 00151 virtual void readFomMetaData(); 00152 00154 virtual void writeFomMetaData(); 00155 }; 00156 00157 00158 class DT_DLL_LGRSIM DtLgrLegacyHla4_2Format : public DtLgrLegacyHla4_0Format 00159 { 00160 public: 00161 DtLgrLegacyHla4_2Format(DtLoggerFile*); 00162 00163 virtual ~DtLgrLegacyHla4_2Format(); 00164 00167 virtual void validateType(int type); 00168 00169 protected: 00170 00172 virtual void readEndMetaData(); 00173 00175 virtual void writeEndMetaData(); 00176 00177 00178 }; 00179 00180 00181 00182 } 00183 00184 #endif 00185 #endif