![]() |
VR-Link API Documentation for DIS
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 00007 #if DtHLA 00008 00009 #ifndef DtEmitterSystemEncoder_H_ 00010 #define DtEmitterSystemEncoder_H_ 00011 00012 00013 #include "hBaseEmbedEnc.h" 00014 00018 00019 class DT_DLL_VL DtEmitterSystemRepository; 00020 00023 #define DtDECLARE_EMITTERSYS_ATTR_CHECKER(attrName) \ 00024 DtDECLARE_ATTR_CHECKER(DtEmitterSystemRepository, attrName) 00025 00028 #define DtDECLARE_EMITTERSYS_ATTR_ENCODER(attrName) \ 00029 DtDECLARE_ATTR_ENCODER(DtEmitterSystemRepository, attrName) 00030 00035 00036 class DT_DLL_VL DtEmitterSystemEncoder : public DtBaseEmbeddedSystemEncoder 00037 { 00038 public: 00039 00041 DtEmitterSystemEncoder( 00042 DtExerciseConn* exConn, 00043 DtObjClassDesc* classDesc); 00044 00046 virtual ~DtEmitterSystemEncoder(); 00047 00049 DtEmitterSystemEncoder(const DtEmitterSystemEncoder& orig); 00050 00052 DtEmitterSystemEncoder& operator=(const DtEmitterSystemEncoder& orig); 00053 00054 public: 00055 00057 static DtHlaStateEncoder* create( 00058 DtExerciseConn* exConn, 00059 DtObjClassDesc* classDesc); 00060 00061 protected: 00062 00064 DtDECLARE_EMITTERSYS_ATTR_CHECKER(EmitterFunction); 00065 DtDECLARE_EMITTERSYS_ATTR_CHECKER(EmitterName); 00066 DtDECLARE_EMITTERSYS_ATTR_CHECKER(EmitterNumber); 00067 DtDECLARE_EMITTERSYS_ATTR_CHECKER(EventID); 00069 DtDECLARE_EMITTERSYS_ATTR_CHECKER(EmitterFunctionCode); 00070 DtDECLARE_EMITTERSYS_ATTR_CHECKER(EmitterType); 00071 DtDECLARE_EMITTERSYS_ATTR_CHECKER(EmitterIndex); 00072 DtDECLARE_EMITTERSYS_ATTR_CHECKER(EventIdentifier); 00073 00075 DtDECLARE_EMITTERSYS_ATTR_ENCODER(EmitterFunction); 00076 DtDECLARE_EMITTERSYS_ATTR_ENCODER(EmitterName); 00077 DtDECLARE_EMITTERSYS_ATTR_ENCODER(EmitterNumber); 00078 DtDECLARE_EMITTERSYS_ATTR_ENCODER(EventID); 00080 DtDECLARE_EMITTERSYS_ATTR_ENCODER(EmitterFunctionCode); 00081 DtDECLARE_EMITTERSYS_ATTR_ENCODER(EmitterType); 00082 DtDECLARE_EMITTERSYS_ATTR_ENCODER(EmitterIndex); 00083 DtDECLARE_EMITTERSYS_ATTR_ENCODER(EventIdentifier); 00084 }; 00085 00091 #define DtDEFINE_SIMPLE_EMITTERSYS_ATTR_ENCODER( \ 00092 attrName, netType, inspector) \ 00093 DtDEFINE_SIMPLE_ATTR_ENCODER(DtEmitterSystemEncoder, \ 00094 DtEmitterSystemRepository, \ 00095 attrName, netType, inspector) 00096 00102 #define DtDEFINE_SIMPLE_EMITTERSYS_ATTR_CHECKER( \ 00103 attrName, inspector) \ 00104 DtDEFINE_SIMPLE_ATTR_CHECKER(DtEmitterSystemEncoder, \ 00105 DtEmitterSystemRepository, \ 00106 attrName, inspector) 00107 00108 #endif //DtEmitterSystemEncoder_H_ 00109 00110 #endif //DtHLA 00111