VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
natoIffTransponderDecoder.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 DtNatoIffTransponderDecoder_H_
9 #define DtNatoIffTransponderDecoder_H_
10 
11 #include "natoIffDecoder.h"
12 
16 
17 #define DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(attrName) \
18  DtDECLARE_ATTR_DECODER(DtIffStateRepository, attrName)
19 
20 #define DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_DECODER( \
21  attrName, netType, inspector) \
22  DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_DECODER_WITH_CAST( \
23  attrName, netType, inspector, (netType))
24 
25 #define DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_DECODER_WITH_CAST( \
26  attrName, netType, mutator, castExpr) \
27  DtDEFINE_SIMPLE_ATTR_DECODER_WITH_CAST( \
28  DtNatoIffTransponderDecoder, DtIffStateRepository, \
29  attrName, netType, mutator, castExpr)
30 
31 #define DtDEFINE_SIMPLE_NATO_IFF_XPONDER_ATTR_DECODER_WITH_CAST_AND_PARAM( \
32  attrName, netType, mutator, param, castExpr) \
33  DtDEFINE_SIMPLE_IFF_ATTR_DECODER_WITH_CAST_AND_PARAM ( \
34  DtNatoIffTransponderDecoder, attrName, netType, mutator, param, castExpr)
35 
36 class DT_DLL_VL DtNatoIffTransponderDecoder : public DtNatoIffDecoder
37 {
38 public:
39 
41  DtNatoIffTransponderDecoder(
42  DtExerciseConn* exConn,
43  DtObjClassDesc* classDesc);
44 
46  virtual ~DtNatoIffTransponderDecoder();
47 
49  DtNatoIffTransponderDecoder(
50  const DtNatoIffTransponderDecoder& orig);
51 
53  DtNatoIffTransponderDecoder& operator=(
54  const DtNatoIffTransponderDecoder& orig);
55 
56 public:
57 
58  static DtHlaStateDecoder* create(
59  DtExerciseConn* exConn,
60  DtObjClassDesc* classDesc);
61 
62 protected:
63 
64  DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(EmergencyOn);
65  DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(IdentSquawkFlashOn);
66  DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(Mode1Code);
67  DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(Mode2Code);
68  DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(Mode3Code);
69  DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(ModeCAltitude);
70  DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(ModeCAltitudeAvailable);
71  DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(StiOn);
72 
74  DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(Mode5CAltitude);
75  DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(Mode5CAltitudeAvailable);
76 };
77 
78 #define DtDEFINE_SIMPLE_MAKRPR3_NATO_IFF_XPONDER_ATTR_DECODER_WITH_CAST( \
79  attrName, netType, mutator, castExpr) \
80  DtDEFINE_SIMPLE_ATTR_DECODER_WITH_CAST( \
81  DtMAKRPR3_NatoIffTransponderDecoder, DtIffStateRepository, \
82  attrName, netType, mutator, castExpr)
83 
84 #define DtDEFINE_SIMPLE_MAKRPR3_NATO_IFF_XPONDER_ATTR_DECODER( \
85  attrName, netType, inspector) \
86  DtDEFINE_SIMPLE_MAKRPR3_NATO_IFF_XPONDER_ATTR_DECODER_WITH_CAST( \
87  attrName, netType, inspector, (netType))
88 
89 class DT_DLL_VL DtMAKRPR3_NatoIffTransponderDecoder : public DtNatoIffTransponderDecoder
90 {
91 public:
92 
94  DtMAKRPR3_NatoIffTransponderDecoder(
95  DtExerciseConn* exConn,
96  DtObjClassDesc* classDesc);
97 
99  virtual ~DtMAKRPR3_NatoIffTransponderDecoder();
100 
102  DtMAKRPR3_NatoIffTransponderDecoder(
103  const DtMAKRPR3_NatoIffTransponderDecoder& orig);
104 
106  DtMAKRPR3_NatoIffTransponderDecoder& operator=(
107  const DtMAKRPR3_NatoIffTransponderDecoder& orig);
108 
109 public:
110 
111  static DtHlaStateDecoder* create(
112  DtExerciseConn* exConn,
113  DtObjClassDesc* classDesc);
114 
115 protected:
116 
118  DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(SystemDesignator);
119 };
120 
121 #define DtDEFINE_SIMPLE_MAKRPR3_NATO_IFF_INTERROGATOR_ATTR_DECODER_WITH_CAST( \
122  attrName, netType, mutator, castExpr) \
123  DtDEFINE_SIMPLE_ATTR_DECODER_WITH_CAST( \
124  DtMAKRPR3_NatoIffInterrogatorDecoder, DtIffStateRepository, \
125  attrName, netType, mutator, castExpr)
126 
127 #define DtDEFINE_SIMPLE_MAKRPR3_NATO_IFF_INTERROGATOR_ATTR_DECODER( \
128  attrName, netType, inspector) \
129  DtDEFINE_SIMPLE_MAKRPR3_NATO_IFF_INTERROGATOR_ATTR_DECODER_WITH_CAST( \
130  attrName, netType, inspector, (netType))
131 
132 class DT_DLL_VL DtMAKRPR3_NatoIffInterrogatorDecoder : public DtNatoIffDecoder
133 {
134 public:
135 
137  DtMAKRPR3_NatoIffInterrogatorDecoder(
138  DtExerciseConn* exConn,
139  DtObjClassDesc* classDesc);
140 
142  virtual ~DtMAKRPR3_NatoIffInterrogatorDecoder();
143 
145  DtMAKRPR3_NatoIffInterrogatorDecoder(
146  const DtMAKRPR3_NatoIffInterrogatorDecoder& orig);
147 
149  DtMAKRPR3_NatoIffInterrogatorDecoder& operator=(
150  const DtMAKRPR3_NatoIffInterrogatorDecoder& orig);
151 
152 public:
153 
154  static DtHlaStateDecoder* create(
155  DtExerciseConn* exConn,
156  DtObjClassDesc* classDesc);
157 
158 protected:
159 
161  DtDECLARE_NATO_IFF_XPONDER_ATTR_DECODER(SystemDesignator);
162 };
163 
164 #endif
165 #endif
166 
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 Tue Feb 2 21:02:17 EST 2021 from SVN revision 223668
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)