00001 /****************************************************************************** 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 00008 00009 #ifndef lgrEEPduEncoder_H_ 00010 #define lgrEEPduEncoder_H_ 00011 00012 #if DtDIS 00013 00014 #include "lgrPduDatabaseEncoder.h" 00015 00016 namespace MAKLogger 00017 { 00018 00020 class DT_DLL_SQLEXPORTER DtLgrEEPduEncoder : public DtLgrPduDatabaseEncoder 00021 { 00022 public: 00023 00025 DtLgrEEPduEncoder(); 00026 00028 virtual ~DtLgrEEPduEncoder(); 00029 00031 static DtPduKind pduKind(); 00032 00034 virtual const DtString& pduName() const; 00035 00036 protected: 00039 virtual void encodePdu(const DtPdu& pdu,std::vector<DtDatabaseTableSP>& tables) const; 00040 00041 public: 00044 virtual std::vector<DtDatabaseTableSP> getTableDefinitions() const; 00045 00046 protected: 00047 00048 DtString myTableName; 00049 00050 DtDatabaseColumn* myEntityIdColumn; 00051 DtDatabaseColumn* myEntityIdSiteColumn; 00052 DtDatabaseColumn* myEntityIdAppColumn; 00053 DtDatabaseColumn* myEntityIdEntityColumn; 00054 DtDatabaseColumn* myEventIdColumn; 00055 DtDatabaseColumn* myEventIdSiteColumn; 00056 DtDatabaseColumn* myEventIdAppColumn; 00057 DtDatabaseColumn* myEventIdEventNumberColumn; 00058 DtDatabaseColumn* myStateUpdateIndicatorColumn; 00059 DtDatabaseColumn* myNumberOfSystemsColumn; 00060 00061 DtString mySystemTableName; 00062 mutable int mySystemTableIndex; 00063 00064 DtDatabaseColumn* mySystemDataLengthColumn; 00065 DtDatabaseColumn* myNumberOfBeamsColumn; 00066 DtDatabaseColumn* myEmitterNameColumn; 00067 DtDatabaseColumn* myEmitterFunctionColumn; 00068 DtDatabaseColumn* myEmitterIdNumberColumn; 00069 DtDatabaseColumn* myLocationXColumn; 00070 DtDatabaseColumn* myLocationYColumn; 00071 DtDatabaseColumn* myLocationZColumn; 00072 00073 DtString myBeamTableName; 00074 mutable int myBeamTableIndex; 00075 00076 // Reuse emitter id number column 00077 DtDatabaseColumn* myBeamDataLengthColumn; 00078 DtDatabaseColumn* myBeamIdColumn; 00079 DtDatabaseColumn* myBeamParameterIndexColumn; 00080 DtDatabaseColumn* myFunParamFrequencyColumn; 00081 DtDatabaseColumn* myFunParamFrequencyRangeColumn; 00082 DtDatabaseColumn* myFunParamEffectivePowerColumn; 00083 DtDatabaseColumn* myFunParamPulseFrequencyColumn; 00084 DtDatabaseColumn* myFunParamPulseWidthColumn; 00085 DtDatabaseColumn* myFunParamBeamAzimuthCenterColumn; 00086 DtDatabaseColumn* myFunParamBeamAzimuthSweepColumn; 00087 DtDatabaseColumn* myFunParamBeamElevationCenterColumn; 00088 DtDatabaseColumn* myFunParamBeamElevationSweepColumn; 00089 DtDatabaseColumn* myFunParamBeamSweepSyncColumn; 00090 DtDatabaseColumn* myBeamFunctionColumn; 00091 DtDatabaseColumn* myNumberOfTargetsColumn; 00092 DtDatabaseColumn* myHighDensityColumn; 00093 DtDatabaseColumn* myJammingModeSequenceColumn; 00094 00095 DtString myTrackJamTableName; 00096 mutable int myTrackJamTableIndex; 00097 00098 //Reuse parent emitter id column 00099 //Reuse beam id column 00100 DtDatabaseColumn* myTargetIdColumn; 00101 DtDatabaseColumn* myTargetIdSiteColumn; 00102 DtDatabaseColumn* myTargetIdAppColumn; 00103 DtDatabaseColumn* myTargetIdEntityColumn; 00104 DtDatabaseColumn* myTargetEmitterIdColumn; 00105 DtDatabaseColumn* myTargetBeamIdColumn; 00106 }; 00107 00108 } 00109 00110 #endif 00111 00112 #endif