![]() |
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 hArealObjEnc_H_ 00010 #define hArealObjEnc_H_ 00011 00012 00013 #include "hEnvObjEnc.h" 00014 00018 00019 class DT_DLL_VL DtArealObjectRepository; 00020 00023 #define DtDECLARE_AREAL_OBJ_ATTR_CHECKER(attrName) \ 00024 DtDECLARE_ATTR_CHECKER(DtArealObjectRepository, attrName) 00025 00028 #define DtDECLARE_AREAL_OBJ_ATTR_ENCODER(attrName) \ 00029 DtDECLARE_ATTR_ENCODER(DtArealObjectRepository, attrName) 00030 00031 00035 class DT_DLL_VL DtArealObjectEncoder : public DtEnvironmentObjectEncoder 00036 { 00037 public: 00038 00040 DtArealObjectEncoder( 00041 DtExerciseConn* exConn, 00042 DtObjClassDesc* classDesc); 00043 00045 virtual ~DtArealObjectEncoder(); 00046 00048 DtArealObjectEncoder(const DtArealObjectEncoder& orig); 00049 00051 DtArealObjectEncoder& operator=(const DtArealObjectEncoder& orig); 00052 00053 public: 00054 00056 static DtHlaStateEncoder* create( 00057 DtExerciseConn* exConn, 00058 DtObjClassDesc* classDesc); 00059 00060 protected: 00061 00062 DtDECLARE_AREAL_OBJ_ATTR_CHECKER(PointsData); 00063 DtDECLARE_AREAL_OBJ_ATTR_CHECKER(PercentComplete); 00064 DtDECLARE_AREAL_OBJ_ATTR_CHECKER(DamagedAppearance); 00065 DtDECLARE_AREAL_OBJ_ATTR_CHECKER(ObjectPreDistributed); 00066 DtDECLARE_AREAL_OBJ_ATTR_CHECKER(Deactivated); 00067 DtDECLARE_AREAL_OBJ_ATTR_CHECKER(Smoking); 00068 DtDECLARE_AREAL_OBJ_ATTR_CHECKER(Flaming); 00069 00070 DtDECLARE_AREAL_OBJ_ATTR_ENCODER(PointsData); 00071 DtDECLARE_AREAL_OBJ_ATTR_ENCODER(PercentComplete); 00072 DtDECLARE_AREAL_OBJ_ATTR_ENCODER(DamagedAppearance); 00073 DtDECLARE_AREAL_OBJ_ATTR_ENCODER(ObjectPreDistributed); 00074 DtDECLARE_AREAL_OBJ_ATTR_ENCODER(Deactivated); 00075 DtDECLARE_AREAL_OBJ_ATTR_ENCODER(Smoking); 00076 DtDECLARE_AREAL_OBJ_ATTR_ENCODER(Flaming); 00077 }; 00078 00084 #define DtDEFINE_SIMPLE_AREAL_OBJ_ATTR_ENCODER( \ 00085 attrName, netType, inspector) \ 00086 DtDEFINE_SIMPLE_ATTR_ENCODER(DtArealObjectEncoder, \ 00087 DtArealObjectRepository, \ 00088 attrName, netType, inspector) 00089 00095 #define DtDEFINE_SIMPLE_AREAL_OBJ_ATTR_CHECKER( \ 00096 attrName, inspector) \ 00097 DtDEFINE_SIMPLE_ATTR_CHECKER(DtArealObjectEncoder, \ 00098 DtArealObjectRepository, \ 00099 attrName, inspector) 00100 00101 #endif //hArealObjEnc_H_ 00102 00103 #endif //DtHLA 00104