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);
130 DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeCEnabled);
131 DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeCIsDamaged);
132 DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeCIsMalfunctioning);
133 DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeCIsOn);
136 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode5CEnabled);
137 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode5CIsDamaged);
138 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode5CIsMalfunctioning);
139 DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode5CIsOn);
141 DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSEnabled);
142 DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSIsDamaged);
143 DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSIsMalfunctioning);
144 DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSIsOn);
145 DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSIsTcasI);
147 DtDECLARE_NATO_IFF_ATTR_ENCODER(AlternateMode4);
149 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode1Enabled);
150 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode1IsDamaged);
151 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode1IsMalfunctioning);
152 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode1IsOn);
154 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode2Enabled);
155 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode2IsDamaged);
156 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode2IsMalfunctioning);
157 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode2IsOn);
159 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3Enabled);
160 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3IsDamaged);
161 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3IsMalfunctioning);
162 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3IsOn);
164 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3AEnabled);
165 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3AIsDamaged);
166 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3AIsMalfunctioning);
167 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3AIsOn);
169 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4Enabled);
170 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4IsDamaged);
171 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4IsMalfunctioning);
172 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4IsOn);
173 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4PseudoCrypto);
175 DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeCEnabled);
176 DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeCIsDamaged);
177 DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeCIsMalfunctioning);
178 DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeCIsOn);
180 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode5CEnabled);
181 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode5CIsDamaged);
182 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode5CIsMalfunctioning);
183 DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode5CIsOn);
185 DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSEnabled);
186 DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSIsDamaged);
187 DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSIsMalfunctioning);
188 DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSIsOn);
189 DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSIsTcasI);