3 #ifndef DtNatoIffDecoder_H_
4 #define DtNatoIffDecoder_H_
22 #define DtDECLARE_NATO_IFF_ATTR_DECODER(attrName) \
23 DtDECLARE_ATTR_DECODER(DtIffStateRepository, attrName)
32 #define DtDEFINE_SIMPLE_NATO_IFF_ATTR_DECODER( \
33 attrName, netType, inspector) \
34 DtDEFINE_SIMPLE_NATO_IFF_ATTR_DECODER_WITH_CAST( \
35 attrName, netType, inspector, (netType))
42 #define DtDEFINE_SIMPLE_NATO_IFF_ATTR_DECODER_WITH_CAST( \
43 attrName, netType, mutator, castExpr) \
44 DtDEFINE_SIMPLE_ATTR_DECODER_WITH_CAST( \
45 DtNatoIffDecoder, DtIffStateRepository, \
46 attrName, netType, mutator, castExpr)
48 #define DtDEFINE_SIMPLE_NATO_IFF_ATTR_DECODER_WITH_CAST_AND_PARAM( \
49 attrName, netType, mutator, param, castExpr) \
50 DtDEFINE_SIMPLE_IFF_ATTR_DECODER_WITH_CAST_AND_PARAM( \
51 DtNatoIffDecoder, attrName, netType, mutator, param, castExpr)
53 class DT_DLL_VL DtNatoIffDecoder :
public DtIffDecoder
60 DtObjClassDesc* classDesc);
63 virtual ~DtNatoIffDecoder();
66 DtNatoIffDecoder(
const DtNatoIffDecoder& orig);
69 DtNatoIffDecoder& operator=(
const DtNatoIffDecoder& orig);
73 static DtHlaStateDecoder* create(
75 DtObjClassDesc* classDesc);
79 DtDECLARE_NATO_IFF_ATTR_DECODER(AlternateMode4);
81 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode1Enabled);
82 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode1IsDamaged);
83 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode1IsMalfunctioning);
84 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode1IsOn);
86 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode2Enabled);
87 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode2IsDamaged);
88 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode2IsMalfunctioning);
89 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode2IsOn);
91 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode3Enabled);
92 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode3IsDamaged);
93 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode3IsMalfunctioning);
94 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode3IsOn);
97 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode3AEnabled);
98 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode3AIsDamaged);
99 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode3AIsMalfunctioning);
100 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode3AIsOn);
102 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode4Enabled);
103 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode4IsDamaged);
104 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode4IsMalfunctioning);
105 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode4IsOn);
106 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode4PseudoCrypto);
107 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode4PseudoCryptoAvailable);
109 DtDECLARE_NATO_IFF_ATTR_DECODER(ModeCEnabled);
110 DtDECLARE_NATO_IFF_ATTR_DECODER(ModeCIsDamaged);
111 DtDECLARE_NATO_IFF_ATTR_DECODER(ModeCIsMalfunctioning);
112 DtDECLARE_NATO_IFF_ATTR_DECODER(ModeCIsOn);
114 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode5CEnabled);
115 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode5CIsDamaged);
116 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode5CIsMalfunctioning);
117 DtDECLARE_NATO_IFF_ATTR_DECODER(Mode5CIsOn);
119 DtDECLARE_NATO_IFF_ATTR_DECODER(ModeSEnabled);
120 DtDECLARE_NATO_IFF_ATTR_DECODER(ModeSIsDamaged);
121 DtDECLARE_NATO_IFF_ATTR_DECODER(ModeSIsMalfunctioning);
122 DtDECLARE_NATO_IFF_ATTR_DECODER(ModeSIsOn);
123 DtDECLARE_NATO_IFF_ATTR_DECODER(ModeSIsTcasI);