00001 /****************************************************************************** 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 00008 00009 #ifndef lgrCollisionPduEncoder_H_ 00010 #define lgrCollisionPduEncoder_H_ 00011 00012 #include "lgrPduDatabaseEncoder.h" 00013 #include <vlutil/vlString.h> 00014 00015 namespace MAKLogger 00016 { 00017 00018 class DT_DLL_SQLEXPORTER DtLgrCollisionPduEncoder : public DtLgrPduDatabaseEncoder 00019 { 00020 public: 00022 DtLgrCollisionPduEncoder(); 00023 00025 virtual ~DtLgrCollisionPduEncoder(); 00026 00028 static DtPduKind pduKind(); 00029 00031 virtual const DtString& pduName() const; 00032 00033 protected: 00036 virtual void encodePdu(const DtPdu& pdu,std::vector<DtDatabaseTableSP>& tables) const; 00037 00038 public: 00041 virtual std::vector<DtDatabaseTableSP> getTableDefinitions() const; 00042 00043 protected: 00044 DtString myTableName; 00045 DtDatabaseColumn* myIssuingEntityIdColumn; 00046 DtDatabaseColumn* myIssuingEntityIdSiteColumn; 00047 DtDatabaseColumn* myIssuingEntityIdAppColumn; 00048 DtDatabaseColumn* myIssuingEntityIdEntityColumn; 00049 DtDatabaseColumn* myCollidingEntityIdColumn; 00050 DtDatabaseColumn* myCollidingEntityIdSiteColumn; 00051 DtDatabaseColumn* myCollidingEntityIdAppColumn; 00052 DtDatabaseColumn* myCollidingEntityIdEntityColumn; 00053 DtDatabaseColumn* myEventIdColumn; 00054 DtDatabaseColumn* myEventIdSiteColumn; 00055 DtDatabaseColumn* myEventIdAppColumn; 00056 DtDatabaseColumn* myEventIdEventNumberColumn; 00057 DtDatabaseColumn* myCollisionTypeColumn; 00058 DtDatabaseColumn* myPaddingColumn; 00059 DtDatabaseColumn* myVelocityXColumn; 00060 DtDatabaseColumn* myVelocityYColumn; 00061 DtDatabaseColumn* myVelocityZColumn; 00062 DtDatabaseColumn* myMassColumn; 00063 DtDatabaseColumn* myLocationXColumn; 00064 DtDatabaseColumn* myLocationYColumn; 00065 DtDatabaseColumn* myLocationZColumn; 00066 }; 00067 00068 } 00069 00070 #endif