![]() |
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 hBrlinObjEnc_H_ 00010 #define hBrlinObjEnc_H_ 00011 00012 00013 #include "hEnvObjEnc.h" 00014 00018 00019 class DT_DLL_VL DtLinearObjectRepository; 00020 00023 #define DtDECLARE_BREACH_LINEAR_OBJ_ATTR_CHECKER(attrName) \ 00024 DtDECLARE_ATTR_CHECKER(DtLinearObjectRepository, attrName) 00025 00028 #define DtDECLARE_BREACH_LINEAR_OBJ_ATTR_ENCODER(attrName) \ 00029 DtDECLARE_ATTR_ENCODER(DtLinearObjectRepository, attrName) 00030 00031 00034 00035 class DT_DLL_VL DtBreachableLinearObjectEncoder : public DtEnvironmentObjectEncoder 00036 { 00037 public: 00038 00040 DtBreachableLinearObjectEncoder( 00041 DtExerciseConn* exConn, 00042 DtObjClassDesc* classDesc); 00043 00045 virtual ~DtBreachableLinearObjectEncoder(); 00046 00048 DtBreachableLinearObjectEncoder(const DtBreachableLinearObjectEncoder& orig); 00049 00051 DtBreachableLinearObjectEncoder& operator=(const DtBreachableLinearObjectEncoder& orig); 00052 00053 public: 00054 00056 static DtHlaStateEncoder* create( 00057 DtExerciseConn* exConn, 00058 DtObjClassDesc* classDesc); 00059 00060 protected: 00061 00062 DtDECLARE_BREACH_LINEAR_OBJ_ATTR_CHECKER(SegmentRecords); 00063 00064 DtDECLARE_BREACH_LINEAR_OBJ_ATTR_ENCODER(SegmentRecords); 00065 }; 00066 00072 #define DtDEFINE_SIMPLE_BREACH_LINEAR_OBJ_ATTR_ENCODER( \ 00073 attrName, netType, inspector) \ 00074 DtDEFINE_SIMPLE_ATTR_ENCODER(DtLinearObjectEncoder, \ 00075 DtLinearObjectRepository, \ 00076 attrName, netType, inspector) 00077 00083 #define DtDEFINE_SIMPLE_BREACH_LINEAR_OBJ_ATTR_CHECKER( \ 00084 attrName, inspector) \ 00085 DtDEFINE_SIMPLE_ATTR_CHECKER(DtLinearObjectEncoder, \ 00086 DtLinearObjectRepository, \ 00087 attrName, inspector) 00088 00089 #endif //hBrLinObjEnc_H_ 00090 00091 #endif //DtHLA 00092