00001 /****************************************************************************** 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 00008 00009 #if DtDIS 00010 #ifndef lgrEntityPduEncoder_H_ 00011 #define lgrEntityPduEncoder_H_ 00012 00013 #include "lgrPduDatabaseEncoder.h" 00014 #include <vlutil/vlString.h> 00015 00016 namespace MAKLogger 00017 { 00018 00019 class DT_DLL_SQLEXPORTER DtLgrEntityPduEncoder : public DtLgrPduDatabaseEncoder 00020 { 00021 public: 00023 DtLgrEntityPduEncoder(); 00024 00026 virtual ~DtLgrEntityPduEncoder(); 00027 00029 static DtPduKind pduKind(); 00030 00032 virtual const DtString& pduName() const; 00033 00034 protected: 00037 virtual void encodePdu(const DtPdu& pdu,std::vector<DtDatabaseTableSP>& tables) const; 00038 00039 public: 00042 virtual std::vector<DtDatabaseTableSP> getTableDefinitions() const; 00043 00044 protected: 00045 DtString myTableName; 00046 00047 DtDatabaseColumn* myEntityIdColumn; 00048 DtDatabaseColumn* myEntityIdSiteColumn; 00049 DtDatabaseColumn* myEntityIdAppColumn; 00050 DtDatabaseColumn* myEntityIdEntityColumn; 00051 00052 DtDatabaseColumn* myForceIDColumn; 00053 DtDatabaseColumn* myArticulationParameterCountColumn; 00054 00055 DtDatabaseColumn* myEntityTypeColumn; 00056 DtDatabaseColumn* myEntityTypeEntityKindColumn; 00057 DtDatabaseColumn* myEntityTypeDomainColumn; 00058 DtDatabaseColumn* myEntityTypeCountryColumn; 00059 DtDatabaseColumn* myEntityTypeCategoryColumn; 00060 DtDatabaseColumn* myEntityTypeSubcategoryColumn; 00061 DtDatabaseColumn* myEntityTypeSpecificColumn; 00062 DtDatabaseColumn* myEntityTypeExtraColumn; 00063 00064 DtDatabaseColumn* myAlternativeEntityTypeColumn; 00065 DtDatabaseColumn* myAlternativeEntityTypeEntityKindColumn; 00066 DtDatabaseColumn* myAlternativeEntityTypeDomainAppColumn; 00067 DtDatabaseColumn* myAlternativeEntityTypeCountryColumn; 00068 DtDatabaseColumn* myAlternativeEntityTypeCategoryColumn; 00069 DtDatabaseColumn* myAlternativeEntityTypeSubcategoryColumn; 00070 DtDatabaseColumn* myAlternativeEntityTypeSpecificColumn; 00071 DtDatabaseColumn* myAlternativeEntityTypeExtraColumn; 00072 00073 DtDatabaseColumn* myVelocityXColumn; 00074 DtDatabaseColumn* myVelocityYColumn; 00075 DtDatabaseColumn* myVelocityZColumn; 00076 00077 DtDatabaseColumn* myLocationXColumn; 00078 DtDatabaseColumn* myLocationYColumn; 00079 DtDatabaseColumn* myLocationZColumn; 00080 00081 DtDatabaseColumn* myOrientationPsiColumn; 00082 DtDatabaseColumn* myOrientationThetaColumn; 00083 DtDatabaseColumn* myOrientationPhiColumn; 00084 00085 DtDatabaseColumn* myApperanceColumn; 00086 00087 DtDatabaseColumn* myDeadReckoningAlgorithmColumn; 00088 DtDatabaseColumn* myDeadReckoningParametersColumn; 00089 DtDatabaseColumn* myDeadReckoningAccelerationXColumn; 00090 DtDatabaseColumn* myDeadReckoningAccelerationYColumn; 00091 DtDatabaseColumn* myDeadReckoningAccelerationZColumn; 00092 DtDatabaseColumn* myDeadReckoningAngularVelocityXColumn; 00093 DtDatabaseColumn* myDeadReckoningAngularVelocityYColumn; 00094 DtDatabaseColumn* myDeadReckoningAngularVelocityZColumn; 00095 00096 DtDatabaseColumn* myEntityMarkingCharacterSetColumn; 00097 DtDatabaseColumn* myEntityMarkingCharacterTextColumn; 00098 00099 DtString myArticulationParameterName; 00100 mutable size_t myArticulateParameterTableIndex; 00101 00102 DtDatabaseColumn* myArticulatedParameterTypeDesignatorColumn; 00103 DtDatabaseColumn* myArticulatedParameterChangeIndicatorColumn; 00104 DtDatabaseColumn* myArticulatedParameterPartIDColumn; 00105 DtDatabaseColumn* myArticulatedParameterTypeColumn; 00106 DtDatabaseColumn* myArticulatedParameterValueLoColumn; 00107 DtDatabaseColumn* myArticulatedParameterValueHiColumn; 00108 00109 DtString myAttachedPartName; 00110 mutable size_t myAttachedPartTableIndex; 00111 00112 DtDatabaseColumn* myAttachedPartTypeDesignatorColumn; 00113 DtDatabaseColumn* myAttachedPartChangeColumn; 00114 DtDatabaseColumn* myAttachedPartAttachedToIDColumn; 00115 DtDatabaseColumn* myAttachedPartStation; 00116 DtDatabaseColumn* myAttachedPartTypeColumn; 00117 00118 }; 00119 00120 } 00121 00122 #endif 00123 #endif