00001 /****************************************************************************** 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 00008 00009 #if DtDIS 00010 #ifndef lgrDetonationPduEncoder_H_ 00011 #define lgrDetonationPduEncoder_H_ 00012 00013 #include "lgrPduDatabaseEncoder.h" 00014 00015 namespace MAKLogger 00016 { 00017 00019 class DT_DLL_SQLEXPORTER DtLgrDetonationPduEncoder : public DtLgrPduDatabaseEncoder 00020 { 00021 public: 00022 00024 DtLgrDetonationPduEncoder(); 00025 00027 virtual ~DtLgrDetonationPduEncoder(); 00028 00030 static DtPduKind pduKind(); 00031 00033 virtual const DtString& pduName() const; 00034 00035 protected: 00038 virtual void encodePdu(const DtPdu& pdu,std::vector<DtDatabaseTableSP>& tables) const; 00039 00040 public: 00043 virtual std::vector<DtDatabaseTableSP> getTableDefinitions() const; 00044 00045 protected: 00046 DtString myTableName; 00047 00048 DtDatabaseColumn* myFiringEntityIdColumn; 00049 DtDatabaseColumn* myFiringEntityIdSiteColumn; 00050 DtDatabaseColumn* myFiringEntityIdAppColumn; 00051 DtDatabaseColumn* myFiringEntityIdEntityColumn; 00052 DtDatabaseColumn* myTargetEntityIdColumn; 00053 DtDatabaseColumn* myTargetEntityIdSiteColumn; 00054 DtDatabaseColumn* myTargetEntityIdAppColumn; 00055 DtDatabaseColumn* myTargetEntityIdEntityColumn; 00056 DtDatabaseColumn* myMunitionIdColumn; 00057 DtDatabaseColumn* myMunitionIdSiteColumn; 00058 DtDatabaseColumn* myMunitionIdAppColumn; 00059 DtDatabaseColumn* myMunitionIdEntityColumn; 00060 DtDatabaseColumn* myEventIdColumn; 00061 DtDatabaseColumn* myEventIdSiteColumn; 00062 DtDatabaseColumn* myEventIdAppColumn; 00063 DtDatabaseColumn* myEventIdEventNumberColumn; 00064 DtDatabaseColumn* myVelocityXColumn; 00065 DtDatabaseColumn* myVelocityYColumn; 00066 DtDatabaseColumn* myVelocityZColumn; 00067 DtDatabaseColumn* myLocationXColumn; 00068 DtDatabaseColumn* myLocationYColumn; 00069 DtDatabaseColumn* myLocationZColumn; 00070 DtDatabaseColumn* myMunitionTypeColumn; 00071 DtDatabaseColumn* myWarheadColumn; 00072 DtDatabaseColumn* myFuseColumn; 00073 DtDatabaseColumn* myQuantityColumn; 00074 DtDatabaseColumn* myRateColumn; 00075 DtDatabaseColumn* myLocationEntityXColumn; 00076 DtDatabaseColumn* myLocationEntityYColumn; 00077 DtDatabaseColumn* myLocationEntityZColumn; 00078 DtDatabaseColumn* myDetonationResultColumn; 00079 DtDatabaseColumn* myNumberOfArticulationParametersColumn; 00080 00081 DtString myArticulationParameterName; 00082 mutable size_t myArticulateParameterTableIndex; 00083 00084 DtDatabaseColumn* myArticulatedParameterTypeDesignatorColumn; 00085 DtDatabaseColumn* myArticulatedParameterChangeIndicatorColumn; 00086 DtDatabaseColumn* myArticulatedParameterPartIDColumn; 00087 DtDatabaseColumn* myArticulatedParameterTypeColumn; 00088 DtDatabaseColumn* myArticulatedParameterValueLoColumn; 00089 DtDatabaseColumn* myArticulatedParameterValueHiColumn; 00090 00091 DtString myAttachedPartName; 00092 mutable size_t myAttachedPartTableIndex; 00093 00094 DtDatabaseColumn* myAttachedPartTypeDesignatorColumn; 00095 DtDatabaseColumn* myAttachedPartChangeColumn; 00096 DtDatabaseColumn* myAttachedPartAttachedToIDColumn; 00097 DtDatabaseColumn* myAttachedPartStationColumn; 00098 DtDatabaseColumn* myAttachedPartTypeColumn; 00099 00100 }; 00101 00102 } 00103 00104 #endif 00105 #endif