![]() |
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 hMinefldObjEnc_H_ 00010 #define hMinefldObjEnc_H_ 00011 00012 00013 #include "hArealObjEnc.h" 00014 00018 00019 class DT_DLL_VL DtArealObjectRepository; 00020 00023 #define DtDECLARE_MINE_FIELD_OBJ_ATTR_CHECKER(attrName) \ 00024 DtDECLARE_ATTR_CHECKER(DtArealObjectRepository, attrName) 00025 00028 #define DtDECLARE_MINE_FIELD_OBJ_ATTR_ENCODER(attrName) \ 00029 DtDECLARE_ATTR_ENCODER(DtArealObjectRepository, attrName) 00030 00035 00036 class DT_DLL_VL DtMinefieldObjectEncoder : public DtArealObjectEncoder 00037 { 00038 public: 00039 00041 DtMinefieldObjectEncoder( 00042 DtExerciseConn* exConn, 00043 DtObjClassDesc* classDesc); 00044 00046 virtual ~DtMinefieldObjectEncoder(); 00047 00049 DtMinefieldObjectEncoder(const DtMinefieldObjectEncoder& orig); 00050 00052 DtMinefieldObjectEncoder& operator=(const DtMinefieldObjectEncoder& orig); 00053 00054 public: 00055 00057 static DtHlaStateEncoder* create( 00058 DtExerciseConn* exConn, 00059 DtObjClassDesc* classDesc); 00060 00061 protected: 00062 00063 DtDECLARE_MINE_FIELD_OBJ_ATTR_CHECKER(BreachedStatus); 00064 DtDECLARE_MINE_FIELD_OBJ_ATTR_CHECKER(MineCount); 00065 00066 DtDECLARE_MINE_FIELD_OBJ_ATTR_ENCODER(BreachedStatus); 00067 DtDECLARE_MINE_FIELD_OBJ_ATTR_ENCODER(MineCount); 00068 }; 00069 00075 #define DtDEFINE_SIMPLE_MINE_FIELD_OBJ_ATTR_ENCODER( \ 00076 attrName, netType, inspector) \ 00077 DtDEFINE_SIMPLE_ATTR_ENCODER(DtMinefieldObjectEncoder, \ 00078 DtArealObjectRepository, \ 00079 attrName, netType, inspector) 00080 00086 #define DtDEFINE_SIMPLE_MINE_FIELD_OBJ_ATTR_CHECKER( \ 00087 attrName, inspector) \ 00088 DtDEFINE_SIMPLE_ATTR_CHECKER(DtMinefieldObjectEncoder, \ 00089 DtArealObjectRepository, \ 00090 attrName, inspector) 00091 00092 #endif //hMinefldObjEnc_H_ 00093 00094 #endif //DtHLA 00095