![]() |
VR-Link API Documentation for HLA Evolved
|
00001 /********************************************************************* 00002 ** Copyright (c) 1992-2010 VT MAK 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 00006 #if DtHLA 00007 00008 #ifndef DtNatoIffTransponderDecoder_H_ 00009 #define DtNatoIffTransponderDecoder_H_ 00010 00011 #include "hNatoIffDec.h" 00012 00016 00017 #define DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(attrName) \ 00018 DtDECLARE_ATTR_DECODER(DtIffStateRepository, attrName) 00019 00020 #define DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_DECODER( \ 00021 attrName, netType, inspector) \ 00022 DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_DECODER_WITH_CAST( \ 00023 attrName, netType, inspector, (netType)) 00024 00025 #define DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_DECODER_WITH_CAST( \ 00026 attrName, netType, mutator, castExpr) \ 00027 DtDEFINE_SIMPLE_ATTR_DECODER_WITH_CAST( \ 00028 DtNatoIffTransponderDecoder, DtIffStateRepository, \ 00029 attrName, netType, mutator, castExpr) 00030 00031 #define DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_DECODER_WITH_CAST_AND_PARAM( \ 00032 attrName, netType, mutator, param, castExpr) \ 00033 DtDEFINE_SIMPLE_IFF_ATTR_DECODER_WITH_CAST_AND_PARAM ( \ 00034 DtNatoIffTransponderDecoder, attrName, netType, mutator, param, castExpr) 00035 00036 class DT_DLL_VL DtNatoIffTransponderDecoder : public DtNatoIffDecoder 00037 { 00038 public: 00039 00041 DtNatoIffTransponderDecoder( 00042 DtExerciseConn* exConn, 00043 DtObjClassDesc* classDesc); 00044 00046 virtual ~DtNatoIffTransponderDecoder(); 00047 00049 DtNatoIffTransponderDecoder( 00050 const DtNatoIffTransponderDecoder& orig); 00051 00053 DtNatoIffTransponderDecoder& operator=( 00054 const DtNatoIffTransponderDecoder& orig); 00055 00056 public: 00057 00058 static DtHlaStateDecoder* create( 00059 DtExerciseConn* exConn, 00060 DtObjClassDesc* classDesc); 00061 00062 protected: 00063 00064 DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(EmergencyOn); 00065 DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(IdentSquawkFlashOn); 00066 DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(Mode1Code); 00067 DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(Mode2Code); 00068 DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(Mode3Code); 00069 DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(ModeCAltitude); 00070 DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(ModeCAltitudeAvailable); 00071 DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(StiOn); 00072 00074 DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(Mode5CAltitude); 00075 DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(Mode5CAltitudeAvailable); 00076 }; 00077 00078 #endif 00079 #endif 00080