VR-Link API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
sovietIffEncoder.h
Go to the documentation of this file.
1 #if DtHLA
2 
3 #ifndef DtSovietIffEncoder_H_
4 #define DtSovietIffEncoder_H_
5 
6 #include "iffEncoder.h"
7 
11 
15 
18 
21 #define DtDECLARE_SOVIET_IFF_ATTR_CHECKER(attrName) \
22  DtDECLARE_ATTR_CHECKER(DtIffStateRepository, attrName)
23 
26 #define DtDECLARE_SOVIET_IFF_ATTR_ENCODER(attrName) \
27  DtDECLARE_ATTR_ENCODER(DtIffStateRepository, attrName)
28 
33 #define DtDEFINE_SIMPLE_SOVIET_IFF_ATTR_ENCODER( \
34  attrName, netType, inspector) \
35  DtDEFINE_SIMPLE_ATTR_ENCODER(DtSovietIffEncoder, \
36  DtIffStateRepository, attrName, netType, inspector)
37 
43 #define DtDEFINE_SIMPLE_SOVIET_IFF_ATTR_CHECKER( \
44  attrName, inspector) \
45  DtDEFINE_SIMPLE_ATTR_CHECKER(DtSovietIffEncoder, \
46  DtIffStateRepository, attrName, inspector)
47 
53 #define DtDEFINE_SIMPLE_SOVIET_IFF_ATTR_ENCODER_WITH_PARAM( \
54  attrName, netType, inspector, param) \
55  DtDEFINE_SIMPLE_IFF_ATTR_ENCODER_WITH_PARAM( \
56  DtSovietIffEncoder, attrName, netType, inspector, param)
57 
63 #define DtDEFINE_SIMPLE_SOVIET_IFF_ATTR_CHECKER_WITH_PARAM( \
64  attrName, inspector, param) \
65  DtDEFINE_SIMPLE_IFF_ATTR_CHECKER_WITH_PARAM( \
66  DtSovietIffEncoder, attrName, inspector, param)
67 
69 {
70 public:
73  DtExerciseConn* exConn,
74  DtObjClassDesc* classDesc);
75 
77  virtual ~DtSovietIffEncoder();
78 
81 
84 
85 public:
86 
87  static DtHlaStateEncoder* create(
88  DtExerciseConn* exConn,
89  DtObjClassDesc* classDesc);
90 
91 protected:
92 
93  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter1Enabled);
94  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter1IsMalfunctioning);
95  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter1IsDamaged);
96  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter1IsOn);
97 
98  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter2Enabled);
99  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter2IsMalfunctioning);
100  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter2IsDamaged);
101  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter2IsOn);
102 
103  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter3Enabled);
104  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter3IsMalfunctioning);
105  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter3IsDamaged);
106  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter3IsOn);
107 
108  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter4Enabled);
109  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter4IsMalfunctioning);
110  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter4IsDamaged);
111  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter4IsOn);
112 
113  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter5Enabled);
114  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter5IsMalfunctioning);
115  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter5IsDamaged);
116  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter5IsOn);
117 
118  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter6Enabled);
119  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter6IsMalfunctioning);
120  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter6IsDamaged);
121  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter6IsOn);
122 
123  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter1Enabled);
124  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter1IsMalfunctioning);
125  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter1IsDamaged);
126  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter1IsOn);
127 
128  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter2Enabled);
129  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter2IsMalfunctioning);
130  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter2IsDamaged);
131  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter2IsOn);
132 
133  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter3Enabled);
134  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter3IsMalfunctioning);
135  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter3IsDamaged);
136  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter3IsOn);
137 
138  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter4Enabled);
139  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter4IsMalfunctioning);
140  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter4IsDamaged);
141  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter4IsOn);
142 
143  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter5Enabled);
144  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter5IsMalfunctioning);
145  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter5IsDamaged);
146  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter5IsOn);
147 
148  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter6Enabled);
149  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter6IsMalfunctioning);
150  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter6IsDamaged);
151  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter6IsOn);
152 
153 };
154 
159 #define DtDEFINE_SIMPLE_MAKRPR3_SOVIET_IFF_TRANSPONDER_ATTR_ENCODER( \
160  attrName, netType, inspector) \
161  DtDEFINE_SIMPLE_ATTR_ENCODER(DtMAKRPR3_SovietIffTransponderEncoder, \
162  DtIffStateRepository, attrName, netType, inspector)
163 
169 #define DtDEFINE_SIMPLE_MAKRPR3_SOVIET_IFF_TRANSPONDER_ATTR_CHECKER( \
170  attrName, inspector) \
171  DtDEFINE_SIMPLE_ATTR_CHECKER(DtMAKRPR3_SovietIffTransponderEncoder, \
172  DtIffStateRepository, attrName, inspector)
173 
175 {
176 public:
179  DtExerciseConn* exConn,
180  DtObjClassDesc* classDesc);
181 
184 
187 
190 
191 public:
192 
193  static DtHlaStateEncoder* create(
194  DtExerciseConn* exConn,
195  DtObjClassDesc* classDesc);
196 
197 protected:
198 
199  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(SystemDesignator);
200  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(SystemDesignator);
201 
202 };
203 
208 #define DtDEFINE_SIMPLE_MAKRPR3_SOVIET_IFF_INTERROGATOR_ATTR_ENCODER( \
209  attrName, netType, inspector) \
210  DtDEFINE_SIMPLE_ATTR_ENCODER(DtMAKRPR3_SovietIffInterrogatorEncoder, \
211  DtIffStateRepository, attrName, netType, inspector)
212 
218 #define DtDEFINE_SIMPLE_MAKRPR3_SOVIET_IFF_INTERROGATOR_ATTR_CHECKER( \
219  attrName, inspector) \
220  DtDEFINE_SIMPLE_ATTR_CHECKER(DtMAKRPR3_SovietIffInterrogatorEncoder, \
221  DtIffStateRepository, attrName, inspector)
222 
224 {
225 public:
228  DtExerciseConn* exConn,
229  DtObjClassDesc* classDesc);
230 
233 
236 
239 
240 public:
241 
242  static DtHlaStateEncoder* create(
243  DtExerciseConn* exConn,
244  DtObjClassDesc* classDesc);
245 
246 protected:
247 
248  DtDECLARE_SOVIET_IFF_ATTR_CHECKER(SystemDesignator);
249  DtDECLARE_SOVIET_IFF_ATTR_ENCODER(SystemDesignator);
250 
251 };
252 
253 #endif
254 #endif
255 
Instances of DtExerciseConn are used to provide an application's interface or connection to the netwo...
Definition: exerciseConnHLA.h:60
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
This file provides a declaration of the class DtIffEncoder.
#define DtDECLARE_SOVIET_IFF_ATTR_ENCODER(attrName)
This is used to declare static member functions that perform attribute encoding.
Definition: sovietIffEncoder.h:26
Defines a protocol independent repository of attributes for IFF objects.
Definition: iffStateRepository.h:57
static DtHlaStateEncoder * create(DtExerciseConn *exConn, DtObjClassDesc *classDesc)
DtHlaStateEncoder is used to provide encoding of a state repository into a state message in an HLA (a...
Definition: hlaStateEncoder.h:30
An instance of DtObjClassDesc is a "class descriptor" for an HLA Object class.
Definition: objClassDesc13.h:41
DtSovietIffEncoder & operator=(const DtSovietIffEncoder &orig)
assignment operator
DtDECLARE_SOVIET_IFF_ATTR_CHECKER(Parameter1Enabled)
Definition: sovietIffEncoder.h:68
#define DtDECLARE_SOVIET_IFF_ATTR_CHECKER(attrName)
We define several macros that can be helpful in defining the class, and the individual decoding funct...
Definition: sovietIffEncoder.h:21
The DtIffEncoder class:
Definition: iffEncoder.h:90
DtDECLARE_SOVIET_IFF_ATTR_ENCODER(Parameter1Enabled)
static DtHlaStateEncoder * create(DtExerciseConn *exConn, DtObjClassDesc *classDesc)
Definition: sovietIffEncoder.h:174
DtIffEncoder & operator=(const DtIffEncoder &orig)
assignment operator
Definition: sovietIffEncoder.h:223

Document ID: Generated on Mon Apr 25 03:39:01 EDT 2022 from SVN revision 242502
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)