![]() |
VR-Link API Documentation for HLA 1516
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 00007 #if DtHLA 00008 00009 #ifndef DtEnvironmentProcessDecoder_H_ 00010 #define DtEnvironmentProcessDecoder_H_ 00011 00012 #include "hostStructs.h" 00013 00014 #include "hStateDecoder.h" 00015 #include "envProcessSR.h" 00016 #include "exerciseConn.h" 00017 00021 00022 class DT_DLL_VL DtEnvironmentProcessRepository; 00023 00026 00027 #define DtDECLARE_ENVPROC_ATTR_DECODER(attrName) \ 00028 DtDECLARE_ATTR_DECODER(DtEnvironmentProcessRepository, attrName) 00029 00035 00036 class DT_DLL_VL DtEnvironmentProcessDecoder : public DtHlaStateDecoder 00037 { 00038 public: 00039 00040 //constructor 00041 DtEnvironmentProcessDecoder( 00042 DtExerciseConn* exConn, 00043 DtObjClassDesc* classDesc); 00044 00046 virtual ~DtEnvironmentProcessDecoder(); 00047 00049 DtEnvironmentProcessDecoder(const DtEnvironmentProcessDecoder& orig); 00050 00051 //asignment operator 00052 DtEnvironmentProcessDecoder& operator=( 00053 const DtEnvironmentProcessDecoder& orig); 00054 00055 public: 00056 00058 static DtHlaStateDecoder* create( 00059 DtExerciseConn* exConn, 00060 DtObjClassDesc* classDesc); 00061 00062 protected: 00063 00065 DtDECLARE_ENVPROC_ATTR_DECODER(ProcessIdentifier); 00066 DtDECLARE_ENVPROC_ATTR_DECODER(Type); 00067 DtDECLARE_ENVPROC_ATTR_DECODER(ModelType); 00068 DtDECLARE_ENVPROC_ATTR_DECODER(EnvironmentProcessActive); 00069 DtDECLARE_ENVPROC_ATTR_DECODER(SequenceNumber); 00070 DtDECLARE_ENVPROC_ATTR_DECODER(EnvironmentRecData); 00071 DtDECLARE_ENVPROC_ATTR_DECODER(EnvironmentRecData_RPR_20014); 00072 DtDECLARE_ENVPROC_ATTR_DECODER(EnvironmentRecData_RPR_20017); 00073 DtDECLARE_ENVPROC_ATTR_DECODER(EnvironmentRecData_RPR_20017_Rev4); 00074 }; 00075 00081 00082 #define DtDEFINE_SIMPLE_ENVPROC_ATTR_DECODER( \ 00083 attrName, netType, mutator) \ 00084 DtDEFINE_SIMPLE_ATTR_DECODER_WITH_CAST( \ 00085 DtEnvironmentProcessDecoder, \ 00086 DtEnvironmentProcessRepository, \ 00087 attrName, netType, mutator, (netType)) 00088 00089 #define DtDEFINE_SIMPLE_ENVPROC_ATTR_DECODER_WITH_CAST( \ 00090 attrName, netType, mutator, castExpr) \ 00091 DtDEFINE_SIMPLE_ATTR_DECODER_WITH_CAST( \ 00092 DtEnvironmentProcessDecoder, \ 00093 DtEnvironmentProcessRepository, \ 00094 attrName, netType, mutator, castExpr) 00095 00096 #endif 00097 #endif 00098