8 #ifndef DtNatoIffEncoder_H_
9 #define DtNatoIffEncoder_H_
26 #define DtDECLARE_NATO_IFF_ATTR_CHECKER(attrName) \
27 DtDECLARE_ATTR_CHECKER(DtIffStateRepository, attrName)
31 #define DtDECLARE_NATO_IFF_ATTR_ENCODER(attrName) \
32 DtDECLARE_ATTR_ENCODER(DtIffStateRepository, attrName)
38 #define DtDEFINE_SIMPLE_NATO_IFF_ATTR_ENCODER( \
39 attrName, netType, inspector) \
40 DtDEFINE_SIMPLE_ATTR_ENCODER(DtNatoIffEncoder, \
41 DtIffStateRepository, attrName, netType, inspector)
48 #define DtDEFINE_SIMPLE_NATO_IFF_ATTR_CHECKER( \
49 attrName, inspector) \
50 DtDEFINE_SIMPLE_ATTR_CHECKER(DtNatoIffEncoder, \
51 DtIffStateRepository, attrName, inspector)
58 #define DtDEFINE_SIMPLE_NATO_IFF_ATTR_ENCODER_WITH_PARAM( \
59 attrName, netType, inspector, param) \
60 DtDEFINE_SIMPLE_IFF_ATTR_ENCODER_WITH_PARAM( \
61 DtNatoIffEncoder, attrName, netType, inspector, param)
68 #define DtDEFINE_SIMPLE_NATO_IFF_ATTR_CHECKER_WITH_PARAM( \
69 attrName, inspector, param) \
70 DtDEFINE_SIMPLE_IFF_ATTR_CHECKER_WITH_PARAM( \
71 DtNatoIffEncoder, attrName, inspector, param)
74 class DT_DLL_VL DtNatoIffEncoder :
public DtIffEncoder
81 DtObjClassDesc* classDesc);
84 virtual ~DtNatoIffEncoder();
87 DtNatoIffEncoder(
const DtNatoIffEncoder& orig);
90 DtNatoIffEncoder& operator=(
const DtNatoIffEncoder& orig);
94 static DtHlaStateEncoder* create(
96 DtObjClassDesc* classDesc);
100 DtDECLARE_NATO_IFF_ATTR_CHECKER(AlternateMode4);
102 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode1Enabled);
103 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode1IsDamaged);
104 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode1IsMalfunctioning);
105 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode1IsOn);
107 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode2Enabled);
108 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode2IsDamaged);
109 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode2IsMalfunctioning);
110 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode2IsOn);
112 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3Enabled);
113 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3IsDamaged);
114 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3IsMalfunctioning);
115 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3IsOn);
118 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3AEnabled);
119 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3AIsDamaged);
120 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3AIsMalfunctioning);
121 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3AIsOn);
123 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode4Enabled);
124 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode4IsDamaged);
125 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode4IsMalfunctioning);
126 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode4IsOn);
127 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode4PseudoCrypto);
128 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode4PseudoCryptoAvailable);
131 DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeCEnabled);
132 DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeCIsDamaged);
133 DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeCIsMalfunctioning);
134 DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeCIsOn);
137 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode5CEnabled);
138 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode5CIsDamaged);
139 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode5CIsMalfunctioning);
140 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode5CIsOn);
142 DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSEnabled);
143 DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSIsDamaged);
144 DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSIsMalfunctioning);
145 DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSIsOn);
146 DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSIsTcasI);
148 DtDECLARE_NATO_IFF_ATTR_ENCODER(AlternateMode4);
150 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode1Enabled);
151 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode1IsDamaged);
152 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode1IsMalfunctioning);
153 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode1IsOn);
155 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode2Enabled);
156 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode2IsDamaged);
157 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode2IsMalfunctioning);
158 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode2IsOn);
160 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3Enabled);
161 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3IsDamaged);
162 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3IsMalfunctioning);
163 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3IsOn);
165 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3AEnabled);
166 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3AIsDamaged);
167 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3AIsMalfunctioning);
168 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3AIsOn);
170 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4Enabled);
171 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4IsDamaged);
172 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4IsMalfunctioning);
173 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4IsOn);
174 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4PseudoCrypto);
175 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4PseudoCryptoAvailable);
177 DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeCEnabled);
178 DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeCIsDamaged);
179 DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeCIsMalfunctioning);
180 DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeCIsOn);
182 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode5CEnabled);
183 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode5CIsDamaged);
184 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode5CIsMalfunctioning);
185 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode5CIsOn);
187 DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSEnabled);
188 DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSIsDamaged);
189 DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSIsMalfunctioning);
190 DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSIsOn);
191 DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSIsTcasI);