VR-Link API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
natoIffEncoder.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
6 #if DtHLA
7 
8 #ifndef DtNatoIffEncoder_H_
9 #define DtNatoIffEncoder_H_
10 
11 #include "iffEncoder.h"
12 
16 
20 
23 
26 #define DtDECLARE_NATO_IFF_ATTR_CHECKER(attrName) \
27  DtDECLARE_ATTR_CHECKER(DtIffStateRepository, attrName)
28 
31 #define DtDECLARE_NATO_IFF_ATTR_ENCODER(attrName) \
32  DtDECLARE_ATTR_ENCODER(DtIffStateRepository, attrName)
33 
38 #define DtDEFINE_SIMPLE_NATO_IFF_ATTR_ENCODER( \
39  attrName, netType, inspector) \
40  DtDEFINE_SIMPLE_ATTR_ENCODER(DtNatoIffEncoder, \
41  DtIffStateRepository, attrName, netType, inspector)
42 
48 #define DtDEFINE_SIMPLE_NATO_IFF_ATTR_CHECKER( \
49  attrName, inspector) \
50  DtDEFINE_SIMPLE_ATTR_CHECKER(DtNatoIffEncoder, \
51  DtIffStateRepository, attrName, inspector)
52 
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)
62 
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)
72 
73 
75 {
76 public:
77 
80  DtExerciseConn* exConn,
81  DtObjClassDesc* classDesc);
82 
84  virtual ~DtNatoIffEncoder();
85 
88 
91 
92 public:
93 
94  static DtHlaStateEncoder* create(
95  DtExerciseConn* exConn,
96  DtObjClassDesc* classDesc);
97 
98 protected:
99 
100  DtDECLARE_NATO_IFF_ATTR_CHECKER(AlternateMode4);
101 
102  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode1Enabled);
103  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode1IsDamaged);
104  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode1IsMalfunctioning);
106 
107  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode2Enabled);
108  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode2IsDamaged);
109  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode2IsMalfunctioning);
111 
112  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3Enabled);
113  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3IsDamaged);
114  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3IsMalfunctioning);
116 
118  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3AEnabled);
119  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3AIsDamaged);
120  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode3AIsMalfunctioning);
122 
123  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode4Enabled);
124  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode4IsDamaged);
125  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode4IsMalfunctioning);
127  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode4PseudoCrypto);
128  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode4PseudoCryptoAvailable);
129 
131  DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeCEnabled);
132  DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeCIsDamaged);
133  DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeCIsMalfunctioning);
135 
137  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode5CEnabled);
138  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode5CIsDamaged);
139  DtDECLARE_NATO_IFF_ATTR_CHECKER(Mode5CIsMalfunctioning);
141 
142  DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSEnabled);
143  DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSIsDamaged);
144  DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSIsMalfunctioning);
146  DtDECLARE_NATO_IFF_ATTR_CHECKER(ModeSIsTcasI);
147 
148  DtDECLARE_NATO_IFF_ATTR_ENCODER(AlternateMode4);
149 
150  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode1Enabled);
151  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode1IsDamaged);
152  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode1IsMalfunctioning);
154 
155  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode2Enabled);
156  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode2IsDamaged);
157  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode2IsMalfunctioning);
159 
160  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3Enabled);
161  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3IsDamaged);
162  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3IsMalfunctioning);
164 
165  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3AEnabled);
166  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3AIsDamaged);
167  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode3AIsMalfunctioning);
169 
170  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4Enabled);
171  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4IsDamaged);
172  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4IsMalfunctioning);
174  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4PseudoCrypto);
175  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode4PseudoCryptoAvailable);
176 
177  DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeCEnabled);
178  DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeCIsDamaged);
179  DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeCIsMalfunctioning);
181 
182  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode5CEnabled);
183  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode5CIsDamaged);
184  DtDECLARE_NATO_IFF_ATTR_ENCODER(Mode5CIsMalfunctioning);
186 
187  DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSEnabled);
188  DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSIsDamaged);
189  DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSIsMalfunctioning);
191  DtDECLARE_NATO_IFF_ATTR_ENCODER(ModeSIsTcasI);
192 
193 };
194 
195 #endif
196 #endif
197 

Document ID: Generated on Mon Jun 22 21:18:40 EDT 2020 from SVN revision 213785
Copyright © 2005-2018 MAK Technologies. All Rights Reserved (www.mak.com)