![]() |
VR-Link API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 00007 #if DtHLA 00008 00009 #ifndef DtBaseEmbeddedSystemEncoder_H_ 00010 #define DtBaseEmbeddedSystemEncoder_H_ 00011 00012 00013 #include "hStateEncoder.h" 00014 00018 00019 class DT_DLL_VL DtEmbeddedSystemRepository; 00020 00023 #define DtDECLARE_BASE_EMBEDSYS_ATTR_CHECKER(attrName) \ 00024 DtDECLARE_ATTR_CHECKER(DtEmbeddedSystemRepository, attrName) 00025 00028 #define DtDECLARE_BASE_EMBEDSYS_ATTR_ENCODER(attrName) \ 00029 DtDECLARE_ATTR_ENCODER(DtEmbeddedSystemRepository, attrName) 00030 00031 00035 class DT_DLL_VL DtBaseEmbeddedSystemEncoder : public DtHlaStateEncoder 00036 { 00037 public: 00038 00040 DtBaseEmbeddedSystemEncoder( 00041 DtExerciseConn* exConn, 00042 DtObjClassDesc* classDesc); 00043 00045 virtual ~DtBaseEmbeddedSystemEncoder(); 00046 00048 DtBaseEmbeddedSystemEncoder(const DtBaseEmbeddedSystemEncoder& orig); 00049 00051 DtBaseEmbeddedSystemEncoder& operator=(const DtBaseEmbeddedSystemEncoder& orig); 00052 00053 public: 00054 00056 static DtHlaStateEncoder* create( 00057 DtExerciseConn* exConn, 00058 DtObjClassDesc* classDesc); 00059 00060 protected: 00061 00062 DtDECLARE_BASE_EMBEDSYS_ATTR_CHECKER(RelativePosition); 00064 DtDECLARE_BASE_EMBEDSYS_ATTR_CHECKER(EntityID); 00065 DtDECLARE_BASE_EMBEDSYS_ATTR_CHECKER(HostObjectID); 00067 DtDECLARE_BASE_EMBEDSYS_ATTR_CHECKER(EntityIdentifier); 00068 DtDECLARE_BASE_EMBEDSYS_ATTR_CHECKER(HostObjectIdentifier); 00069 00070 DtDECLARE_BASE_EMBEDSYS_ATTR_ENCODER(RelativePosition); 00072 DtDECLARE_BASE_EMBEDSYS_ATTR_ENCODER(EntityID); 00073 DtDECLARE_BASE_EMBEDSYS_ATTR_ENCODER(HostObjectID); 00075 DtDECLARE_BASE_EMBEDSYS_ATTR_ENCODER(EntityIdentifier); 00076 DtDECLARE_BASE_EMBEDSYS_ATTR_ENCODER(HostObjectIdentifier); 00077 }; 00078 00079 00085 #define DtDEFINE_SIMPLE_BASE_EMBEDSYS_ATTR_ENCODER( \ 00086 attrName, netType, inspector) \ 00087 DtDEFINE_SIMPLE_ATTR_ENCODER(DtBaseEmbeddedSystemEncoder, \ 00088 DtEmbeddedSystemRepository, \ 00089 attrName, netType, inspector) 00090 00096 #define DtDEFINE_SIMPLE_BASE_EMBEDSYS_ATTR_CHECKER( \ 00097 attrName, inspector) \ 00098 DtDEFINE_SIMPLE_ATTR_CHECKER(DtBaseEmbeddedSystemEncoder, \ 00099 DtEmbeddedSystemRepository, \ 00100 attrName, inspector) 00101 00102 #endif //DtBaseEmbeddedSystemEncoder_H_ 00103 00104 #endif //DtHLA 00105