![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2007 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: combatIdentificationLevelTable.h,v $ $Revision: 1.8 $ $State: Exp $ 00007 ** Created: 4/2/07 MEM 00008 *******************************************************************************/ 00009 00012 00014 00015 #ifndef combatIdentificationLevelTable_H_ 00016 #define combatIdentificationLevelTable_H_ 00017 00018 #include "vrfutil/csvReaderWriter.h" 00019 #include <vlutil/vlMachineTypes.h> 00020 #include "vrfutil/vrfutilDefines.h" 00021 #include <vector> 00022 00023 class DtString; 00024 class DtReaderWriterRegistry; 00025 class DtCombatIdentificationLevelTableEntry; 00026 00034 class DT_DLL_vrfutil DtCombatIdentificationLevelTable : public DtCSVReaderWriter 00035 { 00036 public: 00037 00038 typedef std::vector<DtCombatIdentificationLevelTableEntry*> DtCombatIdentificationEntryList; 00039 00041 DtCombatIdentificationLevelTable(); 00042 00044 DtCombatIdentificationLevelTable(const DtString& name, DtReaderWriterRegistry* 00045 parentRegistry = NULL); 00046 00047 DtCombatIdentificationLevelTable(const DtSymbolString& name, DtReaderWriterRegistry* 00048 parentRegistry = NULL); 00049 00051 DtCombatIdentificationLevelTable(const DtString& name, const 00052 DtCombatIdentificationLevelTable& orig, DtReaderWriterRegistry* 00053 parentRegistry = NULL); 00054 00055 DtCombatIdentificationLevelTable(const DtSymbolString& name, const 00056 DtCombatIdentificationLevelTable& orig, DtReaderWriterRegistry* 00057 parentRegistry = NULL); 00058 00059 const DtCombatIdentificationLevelTable& operator=(const 00060 DtCombatIdentificationLevelTable& orig); 00061 00063 virtual ~DtCombatIdentificationLevelTable(); 00064 00065 public: 00066 00071 virtual void putSelf(FILE* fp, int indentLevel = 0, 00072 bool writeUnspecified = false, const DtFilename& path = 00073 DtFilename::nullFilename()); 00074 00078 virtual void getSelf( FILE* fp, const DtFilename& searchPath = 00079 DtFilename::nullFilename()); 00080 00083 virtual int getIdentificationLevel(DtReal& appSig, DtReal & detInterval) const; 00084 00086 virtual const DtCombatIdentificationLevelTableEntry * getEntryForAppSignature( 00087 double & appSig,bool needmatch = false) const; 00088 00092 virtual const char* readerWriterType() const; 00093 00094 virtual DtCombatIdentificationEntryList & identificationEntries(); 00095 virtual const DtCombatIdentificationEntryList & identificationEntries() const; 00096 00099 virtual void addTableEntry(DtCombatIdentificationLevelTableEntry * entry); 00100 00101 protected: 00102 00103 void printTable(); 00106 void clearTable(); 00110 void copyTableFrom(const DtCombatIdentificationEntryList& sourceTable); 00111 00112 protected: 00113 00114 DtCombatIdentificationEntryList myCombatIdentificationEntries; 00115 00116 }; 00117 00118 #endif 00119 00120 00121