VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
natoIffTransponderEncoder.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
6 
7 
8 #if DtHLA
9 
10 #ifndef DtNatoIffTransponderEncoder_H_
11 #define DtNatoIffTransponderEncoder_H_
12 
13 #include "natoIffEncoder.h"
14 
18 
19 #define DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(attrName) \
20  DtDECLARE_ATTR_CHECKER(DtIffStateRepository, attrName)
21 
22 #define DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(attrName) \
23  DtDECLARE_ATTR_ENCODER(DtIffStateRepository, attrName)
24 
25 #define DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_CHECKER( \
26  attrName, inspector) \
27  DtDEFINE_SIMPLE_ATTR_CHECKER(DtNatoIffTransponderEncoder, \
28  DtIffStateRepository, attrName, inspector)
29 
30 #define DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_ENCODER( \
31  attrName, netType, inspector) \
32  DtDEFINE_SIMPLE_ATTR_ENCODER(DtNatoIffTransponderEncoder, \
33  DtIffStateRepository, attrName, netType, inspector)
34 
35 #define DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_CHECKER_WITH_PARAM( \
36  attrName, mutator, param) \
37  DtDEFINE_SIMPLE_IFF_ATTR_CHECKER_WITH_PARAM ( \
38  DtNatoIffTransponderEncoder, attrName, mutator, param)
39 
40 #define DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_ENCODER_WITH_PARAM( \
41  attrName, netType, mutator, param) \
42  DtDEFINE_SIMPLE_IFF_ATTR_ENCODER_WITH_PARAM ( \
43  DtNatoIffTransponderEncoder, attrName, netType, mutator, param)
44 
45 class DT_DLL_VL DtNatoIffTransponderEncoder : public DtNatoIffEncoder
46 {
47 public:
48 
50  DtNatoIffTransponderEncoder(
51  DtExerciseConn* exConn,
52  DtObjClassDesc* classDesc);
53 
55  virtual ~DtNatoIffTransponderEncoder();
56 
58  DtNatoIffTransponderEncoder(
59  const DtNatoIffTransponderEncoder& orig);
60 
62  DtNatoIffTransponderEncoder& operator=(
63  const DtNatoIffTransponderEncoder& orig);
64 
65 public:
66 
67  static DtHlaStateEncoder* create(
68  DtExerciseConn* exConn,
69  DtObjClassDesc* classDesc);
70 
71 protected:
72 
73  DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(EmergencyOn);
74  DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(IdentSquawkFlashOn);
75  DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(Mode1Code);
76  DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(Mode2Code);
77  DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(Mode3Code);
78  DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(StiOn);
79 
80  DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(EmergencyOn);
81  DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(IdentSquawkFlashOn);
82  DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(Mode1Code);
83  DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(Mode2Code);
84  DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(Mode3Code);
85  DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(StiOn);
86 
88  DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(ModeCAltitude);
89  DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(ModeCAltitudeAvailable);
90  DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(ModeCAltitude);
91  DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(ModeCAltitudeAvailable);
92 
94  DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(Mode5CAltitude);
95  DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(Mode5CAltitudeAvailable);
96  DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(Mode5CAltitude);
97  DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(Mode5CAltitudeAvailable);
98 };
99 
100 #define DtDEFINE_SIMPLE_MAKRPR3_NATO_IFF_XPONDER_ATTR_CHECKER( \
101  attrName, inspector) \
102  DtDEFINE_SIMPLE_ATTR_CHECKER(DtMAKRPR3_NatoIffTransponderEncoder, \
103  DtIffStateRepository, attrName, inspector)
104 
105 #define DtDEFINE_SIMPLE_MAKRPR3_NATO_IFF_XPONDER_ATTR_ENCODER( \
106  attrName, netType, inspector) \
107  DtDEFINE_SIMPLE_ATTR_ENCODER(DtMAKRPR3_NatoIffTransponderEncoder, \
108  DtIffStateRepository, attrName, netType, inspector)
109 
110 class DT_DLL_VL DtMAKRPR3_NatoIffTransponderEncoder : public DtNatoIffTransponderEncoder
111 {
112 public:
113 
115  DtMAKRPR3_NatoIffTransponderEncoder(
116  DtExerciseConn* exConn,
117  DtObjClassDesc* classDesc);
118 
120  virtual ~DtMAKRPR3_NatoIffTransponderEncoder();
121 
123  DtMAKRPR3_NatoIffTransponderEncoder(
124  const DtMAKRPR3_NatoIffTransponderEncoder& orig);
125 
127  DtMAKRPR3_NatoIffTransponderEncoder& operator=(
128  const DtMAKRPR3_NatoIffTransponderEncoder& orig);
129 
130 public:
131 
132  static DtHlaStateEncoder* create(
133  DtExerciseConn* exConn,
134  DtObjClassDesc* classDesc);
135 
136 protected:
137 
138  DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(SystemDesignator);
139  DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(SystemDesignator);
140 };
141 
142 #define DtDEFINE_SIMPLE_MAKRPR3_NATO_IFF_INTERROGATOR_ATTR_CHECKER( \
143  attrName, inspector) \
144  DtDEFINE_SIMPLE_ATTR_CHECKER(DtMAKRPR3_NatoIffInterrogatorEncoder, \
145  DtIffStateRepository, attrName, inspector)
146 
147 #define DtDEFINE_SIMPLE_MAKRPR3_NATO_IFF_INTERROGATOR_ATTR_ENCODER( \
148  attrName, netType, inspector) \
149  DtDEFINE_SIMPLE_ATTR_ENCODER(DtMAKRPR3_NatoIffInterrogatorEncoder, \
150  DtIffStateRepository, attrName, netType, inspector)
151 
152 class DT_DLL_VL DtMAKRPR3_NatoIffInterrogatorEncoder : public DtNatoIffEncoder
153 {
154 public:
155 
157  DtMAKRPR3_NatoIffInterrogatorEncoder(
158  DtExerciseConn* exConn,
159  DtObjClassDesc* classDesc);
160 
162  virtual ~DtMAKRPR3_NatoIffInterrogatorEncoder();
163 
165  DtMAKRPR3_NatoIffInterrogatorEncoder(
166  const DtMAKRPR3_NatoIffInterrogatorEncoder& orig);
167 
169  DtMAKRPR3_NatoIffInterrogatorEncoder& operator=(
170  const DtMAKRPR3_NatoIffInterrogatorEncoder& orig);
171 
172 public:
173 
174  static DtHlaStateEncoder* create(
175  DtExerciseConn* exConn,
176  DtObjClassDesc* classDesc);
177 
178 protected:
179 
180  DtDECLARE_NATO_IFF_XPONDER_ATTR_CHECKER(SystemDesignator);
181  DtDECLARE_NATO_IFF_XPONDER_ATTR_ENCODER(SystemDesignator);
182 };
183 
184 #endif
185 #endif
186 
Instances of DtExerciseConn are used to provide an application's interface or connection to the netwo...
Definition: exerciseConnDIS.h:61
#define DT_DLL_VL
Definition: vlMachineTypes.h:108

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)