![]() |
VR-Link API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 ** Copyright (c) 1998 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 #if DtHLA 00007 00008 #ifndef VehicleDecoder_H_ 00009 #define VehicleDecoder_H_ 00010 00011 #include "myFomMap.h" 00012 #include <vl/hStateDecoder.h> 00013 00014 // Forward declaration of DtEntityStateRepository class. 00015 class DT_DLL_VL DtEntityStateRepository; 00016 00017 // We define several macros that can be helpful in defining the class, and the 00018 // individual decoding functions. 00019 00024 #define DtDECLARE_VEHICLE_ATTR_DECODER(attrName) \ 00025 DtDECLARE_ATTR_DECODER(DtEntityStateRepository, attrName) 00026 00029 class DT_DLL_FOMMAP VehicleDecoder : public DtHlaStateDecoder 00030 { 00031 public: 00032 00033 // default constructor 00034 VehicleDecoder(DtExerciseConn* exConn, DtObjClassDesc* classDesc); 00035 00036 // destructor 00037 virtual ~VehicleDecoder(); 00038 00039 protected: 00040 00041 // Individual attribute decoding functions - one for each attribute. 00042 // These macros expand to look like this: 00043 // static void decodeVehicleType(DtEntityStateRepository* stateRep, 00044 // const RTI::AttributeHandleValuePairSet& attrs, int pairSetIndex) 00045 00046 DtDECLARE_VEHICLE_ATTR_DECODER(VehicleType); 00047 DtDECLARE_VEHICLE_ATTR_DECODER(GeocLoc); 00048 }; 00049 00050 #endif 00051 #endif