VR-Link API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
iffState.h
Go to the documentation of this file.
1 /*********************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************************/
5 
10 #pragma once
11 
13 
14 #include <string>
15 #include <matrix/vlVector.h>
16 
17 
19 {
20 public:
21  enum CapabilityReport {CapabilityReport_NoCapability = 0, CapabilityReport_CommAB7Ground = 4, CapabilityReport_CommAB7Airborne = 5, CapabilityReport_CommAB7GroundAirborne = 6, CapabilityReport_DR1FS2345AirborneGround = 7, CapabilityReport_NoStatement = 255};
22  enum ModeSLevelsPresent {ModeSLevelsPresent_Level1 = 1, ModeSLevelsPresent_Level2Elementary = 2, ModeSLevelsPresent_Level2Enhanced = 3, ModeSLevelsPresent_Level3 = 4, ModeSLevelsPresent_Level4 = 5};
23  enum SystemName {SystemName_OtherSysName = 0, SystemName_MarkX = 1, SystemName_MarkXII = 2, SystemName_ATCRBS = 3, SystemName_Soviet = 4, SystemName_ModeS = 5, SystemName_MarkX_XII_ATCRBS = 6, SystemName_MarkX_XII_ATCRBS_ModeS = 7};
24  enum SystemType {SystemType_OtherSysType = 0, SystemType_Transponder = 1, SystemType_Interrogator = 2, SystemType_SovietTransponder = 3, SystemType_SovietInterrogator = 4};
25  enum AircraftPresentDomain {AircraftPresentDomain_NoStatement = 0, AircraftPresentDomain_Airborne = 1, AircraftPresentDomain_OnGroundSurface = 2};
26  enum OperationalParameter1 {OperationalParameter1_OtherOperationalParameter1 = 0};
27  enum DAPSource {DAPSource_IASBit = 0, DAPSource_MachNumberBit = 1, DAPSource_GroundSpeedBit = 2, DAPSource_MagneticHeadingBit = 3, DAPSource_TrackAngleRateBit = 4, DAPSource_TrueTrackAngleBit = 5, DAPSource_TrueAirspeedBit = 6, DAPSource_VerticalRateBit = 7};
28  enum AircraftIdentificationType {AircraftIdentificationType_NoStatement = 0, AircraftIdentificationType_FlightNumber = 1, AircraftIdentificationType_TailNumber = 2};
29  enum DataCategory {DataCategory_NoStatement = 0, DataCategory_FunctionalData = 1, DataCategory_DataLinkMessages = 2};
30  enum AltParm4 {AltParm4_Other = 0, AltParm4_Valid = 1, AltParm4_Invalid = 2, AltParm4_NoResponse = 3};
31  enum NavigationSource {NavigationSource_NoStatement = 0, NavigationSource_GPS = 1, NavigationSource_INS = 2, NavigationSource_INSGPS = 3};
32  enum OperationalParameter2 {OperationalParameter2_OtherOperationalParameter2 = 0};
33 
34 
36  {
37  unsigned short mySiteId;
38  unsigned short myApplicationId;
39 
40 
41  int size()
42  {
43  int size=0;
44  size+=sizeof(unsigned short);
45  size+=sizeof(unsigned short);
46 
47  return size;
48  }
49 
50  void serialize(DtStreamWriter& writer)
51  {
52  writer.writeUInt16(mySiteId);
53  writer.writeUInt16(myApplicationId);
54 
55  }
56 
58  {
59  mySiteId=reader.readUInt16();
60  myApplicationId=reader.readUInt16();
61 
62  }
63  };
64 
65 
66 
67 
69  virtual ~IffStateMessage();
70 
71  virtual std::string getHostGlobalIdentifier();
72  virtual void setHostGlobalIdentifier(std::string val);
73 
74  virtual unsigned short getEmbeddedIndex();
75  virtual void setEmbeddedIndex(unsigned short val);
76 
77  virtual SystemType getSystemType();
78  virtual void setSystemType(SystemType val);
79 
80  virtual std::string getHostEntityIdentifier();
81  virtual void setHostEntityIdentifier(std::string val);
82 
83  virtual DtVector32 getRelativePosition();
84  virtual void setRelativePosition(DtVector32 val);
85 
86  virtual SystemName getSystemName();
87  virtual void setSystemName(SystemName val);
88 
89  virtual unsigned char getSystemMode();
90  virtual void setSystemMode(unsigned char val);
91 
92  virtual std::string getEventId();
93  virtual void setEventId(std::string val);
94 
95  virtual AltParm4 getAlternateMode4();
96  virtual void setAlternateMode4(AltParm4 val);
97 
98  virtual bool getSystemIsOn();
99  virtual void setSystemIsOn(bool val);
100 
101  virtual bool getSystemIsOperational();
102  virtual void setSystemIsOperational(bool val);
103 
104  virtual bool getSimulationMode();
105  virtual void setSimulationMode(bool val);
106 
107  virtual bool getInteractiveCapable();
108  virtual void setInteractiveCapable(bool val);
109 
110  virtual unsigned short getMode4PseudoCrypto();
111  virtual void setMode4PseudoCrypto(unsigned short val);
112 
113  virtual bool getMode4PseudoCryptoAvailable();
114  virtual void setMode4PseudoCryptoAvailable(bool val);
115 
116  virtual bool getModeSIsTcasI();
117  virtual void setModeSIsTcasI(bool val);
118 
119  virtual bool getEmergencyOn();
120  virtual void setEmergencyOn(bool val);
121 
122  virtual bool getIdentSquawkFlashOn();
123  virtual void setIdentSquawkFlashOn(bool val);
124 
125  virtual bool getUnmannedAircraftOn();
126  virtual void setUnmannedAircraftOn(bool val);
127 
128  virtual bool getModeCAltitudeAvailable();
129  virtual void setModeCAltitudeAvailable(bool val);
130 
131  virtual short getModeCAltitude();
132  virtual void setModeCAltitude(short val);
133 
134  virtual bool getStiOn();
135  virtual void setStiOn(bool val);
136 
137  virtual unsigned char getCode();
138  virtual void setCode(unsigned char val);
139 
140  virtual bool getPowerReduction();
141  virtual void setPowerReduction(bool val);
142 
143  virtual bool getIsDamaged();
144  virtual void setIsDamaged(bool val);
145 
146  virtual bool getIsMalfunctioning();
147  virtual void setIsMalfunctioning(bool val);
148 
149  virtual bool getIsOn();
150  virtual void setIsOn(bool val);
151 
152  virtual bool getRadarEnhancement();
153  virtual void setRadarEnhancement(bool val);
154 
155  virtual bool getLayer2DataAvailable();
156  virtual void setLayer2DataAvailable(bool val);
157 
158  virtual bool getLayer3DataAvailable();
159  virtual void setLayer3DataAvailable(bool val);
160 
161  virtual bool getLayer4DataAvailable();
162  virtual void setLayer4DataAvailable(bool val);
163 
164  virtual bool getLayer5DataAvailable();
165  virtual void setLayer5DataAvailable(bool val);
166 
167  virtual unsigned int getLayer2SpecificInfo();
168  virtual void setLayer2SpecificInfo(unsigned int val);
169 
170  virtual unsigned int getLayer3SpecificInfo();
171  virtual void setLayer3SpecificInfo(unsigned int val);
172 
173  virtual unsigned int getLayer4SpecificInfo();
174  virtual void setLayer4SpecificInfo(unsigned int val);
175 
176  virtual unsigned int getLayer5SpecificInfo();
177  virtual void setLayer5SpecificInfo(unsigned int val);
178 
179  virtual float getAzimuthCenter();
180  virtual void setAzimuthCenter(float val);
181 
182  virtual float getAzimuthSweep();
183  virtual void setAzimuthSweep(float val);
184 
185  virtual float getElevationCenter();
186  virtual void setElevationCenter(float val);
187 
188  virtual float getElevationSweep();
189  virtual void setElevationSweep(float val);
190 
191  virtual float getSweepSync();
192  virtual void setSweepSync(float val);
193 
194  virtual OperationalParameter1 getSecondaryOperationalDataParameter1();
195  virtual void setSecondaryOperationalDataParameter1(OperationalParameter1 val);
196 
197  virtual OperationalParameter2 getSecondaryOperationalDataParameter2();
198  virtual void setSecondaryOperationalDataParameter2(OperationalParameter2 val);
199 
200  virtual unsigned char getSystemSpecificData();
201  virtual void setSystemSpecificData(unsigned char val);
202 
203  virtual SimulationAddress getReportingSimulation();
204  virtual void setReportingSimulation(SimulationAddress val);
205 
206  virtual unsigned int getMessageFormatsPresent();
207  virtual void setMessageFormatsPresent(unsigned int val);
208 
209  virtual unsigned char getMode5InterrogatorStatus();
210  virtual void setMode5InterrogatorStatus(unsigned char val);
211 
212  virtual std::string getInterrogatedEntityID();
213  virtual void setInterrogatedEntityID(std::string val);
214 
215  virtual unsigned short getMode5TransponderStatus();
216  virtual void setMode5TransponderStatus(unsigned short val);
217 
218  virtual unsigned short getPin();
219  virtual void setPin(unsigned short val);
220 
221  virtual unsigned int getEnhancedMode1Code1();
222  virtual void setEnhancedMode1Code1(unsigned int val);
223 
224  virtual unsigned int getEnhancedMode1Code2();
225  virtual void setEnhancedMode1Code2(unsigned int val);
226 
227  virtual unsigned int getEnhancedMode1Code3();
228  virtual void setEnhancedMode1Code3(unsigned int val);
229 
230  virtual unsigned int getEnhancedMode1Code4();
231  virtual void setEnhancedMode1Code4(unsigned int val);
232 
233  virtual bool getEnhancedMode1On();
234  virtual void setEnhancedMode1On(bool val);
235 
236  virtual bool getEnhancedMode1DamageStatus();
237  virtual void setEnhancedMode1DamageStatus(bool val);
238 
239  virtual bool getEnhancedMode1MalfunctionStatus();
240  virtual void setEnhancedMode1MalfunctionStatus(bool val);
241 
242  virtual unsigned short getNationalOrigin();
243  virtual void setNationalOrigin(unsigned short val);
244 
245  virtual unsigned char getSupplementalData();
246  virtual void setSupplementalData(unsigned char val);
247 
248  virtual NavigationSource getNavigationSource();
249  virtual void setNavigationSource(NavigationSource val);
250 
251  virtual unsigned char getFigureOfMerit();
252  virtual void setFigureOfMerit(unsigned char val);
253 
254  virtual ModeSLevelsPresent getModeSLevelsPresent();
255  virtual void setModeSLevelsPresent(ModeSLevelsPresent val);
256 
257  virtual unsigned char getModeSInterrogatorStatus();
258  virtual void setModeSInterrogatorStatus(unsigned char val);
259 
260  virtual unsigned short getModeSTransponderStatus();
261  virtual void setModeSTransponderStatus(unsigned short val);
262 
263  virtual AircraftPresentDomain getAircraftPresentDomain();
264  virtual void setAircraftPresentDomain(AircraftPresentDomain val);
265 
266  virtual unsigned char getAircraftID();
267  virtual void setAircraftID(unsigned char val);
268 
269  virtual unsigned int getAircraftAddress();
270  virtual void setAircraftAddress(unsigned int val);
271 
272  virtual AircraftIdentificationType getAircraftIDType();
273  virtual void setAircraftIDType(AircraftIdentificationType val);
274 
275  virtual DAPSource getDapSource();
276  virtual void setDapSource(DAPSource val);
277 
278  virtual unsigned short getModeSAltitude();
279  virtual void setModeSAltitude(unsigned short val);
280 
281  virtual CapabilityReport getCapabilityReport();
282  virtual void setCapabilityReport(CapabilityReport val);
283 
284  virtual unsigned char getAvailableLayers();
285  virtual void setAvailableLayers(unsigned char val);
286 
287  virtual DataCategory getDataCategory();
288  virtual void setDataCategory(DataCategory val);
289 
290 
291 
292  virtual int messageSize();
293 
294  static DtMessage* decode(unsigned char* buffer, int length);
295  static std::string theMessageName();
296 
297 protected:
298  static std::string theFullName;
299 
301  unsigned short myEmbeddedIndex;
306  unsigned char mySystemMode;
307  std::string myEventId;
313  unsigned short myMode4PseudoCrypto;
321  bool myStiOn;
322  unsigned char myCode;
326  bool myIsOn;
332  unsigned int myLayer2SpecificInfo;
333  unsigned int myLayer3SpecificInfo;
334  unsigned int myLayer4SpecificInfo;
335  unsigned int myLayer5SpecificInfo;
340  float mySweepSync;
343  unsigned char mySystemSpecificData;
348  unsigned short myMode5TransponderStatus;
349  unsigned short myPin;
350  unsigned int myEnhancedMode1Code1;
351  unsigned int myEnhancedMode1Code2;
352  unsigned int myEnhancedMode1Code3;
353  unsigned int myEnhancedMode1Code4;
357  unsigned short myNationalOrigin;
358  unsigned char mySupplementalData;
360  unsigned char myFigureOfMerit;
363  unsigned short myModeSTransponderStatus;
365  unsigned char myAircraftID;
366  unsigned int myAircraftAddress;
369  unsigned short myModeSAltitude;
371  unsigned char myAvailableLayers;
373 
374  virtual void serialize(DtStreamWriter& writer);
375  virtual void deserialize(DtStreamReader& reader);
376 };
std::string myHostEntityIdentifier
Definition: iffState.h:303
unsigned short myMode5TransponderStatus
Definition: iffState.h:348
unsigned int myMessageFormatsPresent
Definition: iffState.h:345
Definition: iffState.h:35
bool myLayer2DataAvailable
Definition: iffState.h:328
bool mySimulationMode
Definition: iffState.h:311
unsigned int myLayer5SpecificInfo
Definition: iffState.h:335
float myElevationSweep
Definition: iffState.h:339
bool myPowerReduction
Definition: iffState.h:323
unsigned short myPin
Definition: iffState.h:349
bool myEnhancedMode1On
Definition: iffState.h:354
AltParm4 myAlternateMode4
Definition: iffState.h:308
unsigned char myAircraftID
Definition: iffState.h:365
int size()
Definition: iffState.h:41
static std::string theFullName
Definition: iffState.h:298
unsigned int myEnhancedMode1Code4
Definition: iffState.h:353
SystemName
Definition: iffState.h:23
SystemType mySystemType
Definition: iffState.h:302
bool myMode4PseudoCryptoAvailable
Definition: iffState.h:314
void writeUInt16(unsigned short num)
value readers return a value and increment the current position in the byte stream based on the size ...
virtual int messageSize()
this function needs to be in each derived class for decoding
#define MANAGEDINTERFACE_DLL
Definition: plugin.h:15
DataCategory
Definition: iffState.h:29
unsigned char mySystemMode
Definition: iffState.h:306
unsigned char mySystemSpecificData
Definition: iffState.h:343
void deserialize(DtStreamReader &reader)
Definition: iffState.h:57
ModeSLevelsPresent myModeSLevelsPresent
Definition: iffState.h:361
OperationalParameter1
Definition: iffState.h:26
unsigned char myAvailableLayers
Definition: iffState.h:371
OperationalParameter1 mySecondaryOperationalDataParameter1
Definition: iffState.h:341
bool myLayer3DataAvailable
Definition: iffState.h:329
std::string myInterrogatedEntityID
Definition: iffState.h:347
unsigned char myMode5InterrogatorStatus
Definition: iffState.h:346
bool myIsOn
Definition: iffState.h:326
bool myIdentSquawkFlashOn
Definition: iffState.h:317
Defines the base class for all messages that are sent to and from C#.
bool myLayer5DataAvailable
Definition: iffState.h:331
NavigationSource
Definition: iffState.h:31
This is the DtMessage class.
Definition: message.h:20
bool myEmergencyOn
Definition: iffState.h:316
unsigned short readUInt16()
value readers return a value and increment the current position in the byte stream based on the size ...
unsigned short mySiteId
Definition: iffState.h:37
bool myInteractiveCapable
Definition: iffState.h:312
SystemName mySystemName
Definition: iffState.h:305
unsigned short myNationalOrigin
Definition: iffState.h:357
bool myIsMalfunctioning
Definition: iffState.h:325
unsigned int myLayer4SpecificInfo
Definition: iffState.h:334
This file declares DtVector and DtVector32.
AircraftPresentDomain
Definition: iffState.h:25
bool myEnhancedMode1DamageStatus
Definition: iffState.h:355
unsigned short myEmbeddedIndex
Definition: iffState.h:301
unsigned int myEnhancedMode1Code3
Definition: iffState.h:352
unsigned short myModeSTransponderStatus
Definition: iffState.h:363
void serialize(DtStreamWriter &writer)
Definition: iffState.h:50
float myAzimuthCenter
Definition: iffState.h:336
unsigned char mySupplementalData
Definition: iffState.h:358
CapabilityReport myCapabilityReport
Definition: iffState.h:370
unsigned short myModeSAltitude
Definition: iffState.h:369
Definition: vlVector.h:162
CapabilityReport
Definition: iffState.h:21
float myElevationCenter
Definition: iffState.h:338
unsigned char myFigureOfMerit
Definition: iffState.h:360
OperationalParameter2 mySecondaryOperationalDataParameter2
Definition: iffState.h:342
AircraftIdentificationType myAircraftIDType
Definition: iffState.h:367
SimulationAddress myReportingSimulation
Definition: iffState.h:344
Instances of DtStreamWriter encode values into a byte array.
Definition: byteStream.h:74
bool myIsDamaged
Definition: iffState.h:324
AircraftIdentificationType
Definition: iffState.h:28
bool mySystemIsOn
Definition: iffState.h:309
NavigationSource myNavigationSource
Definition: iffState.h:359
unsigned int myLayer2SpecificInfo
Definition: iffState.h:332
DtVector32 myRelativePosition
Definition: iffState.h:304
unsigned short myApplicationId
Definition: iffState.h:38
unsigned int myAircraftAddress
Definition: iffState.h:366
unsigned int myEnhancedMode1Code2
Definition: iffState.h:351
Instances of DtStreamReader decode values from a byte array.
Definition: byteStream.h:31
bool myEnhancedMode1MalfunctionStatus
Definition: iffState.h:356
virtual void serialize(DtStreamWriter &writer)
std::string myEventId
Definition: iffState.h:307
bool mySystemIsOperational
Definition: iffState.h:310
OperationalParameter2
Definition: iffState.h:32
float myAzimuthSweep
Definition: iffState.h:337
bool myLayer4DataAvailable
Definition: iffState.h:330
AircraftPresentDomain myAircraftPresentDomain
Definition: iffState.h:364
bool myModeSIsTcasI
Definition: iffState.h:315
unsigned short myMode4PseudoCrypto
Definition: iffState.h:313
DAPSource myDapSource
Definition: iffState.h:368
bool myModeCAltitudeAvailable
Definition: iffState.h:319
bool myUnmannedAircraftOn
Definition: iffState.h:318
unsigned char myModeSInterrogatorStatus
Definition: iffState.h:362
bool myRadarEnhancement
Definition: iffState.h:327
bool myStiOn
Definition: iffState.h:321
std::string myHostGlobalIdentifier
Definition: iffState.h:300
unsigned char myCode
Definition: iffState.h:322
float mySweepSync
Definition: iffState.h:340
ModeSLevelsPresent
Definition: iffState.h:22
AltParm4
Definition: iffState.h:30
SystemType
Definition: iffState.h:24
DataCategory myDataCategory
Definition: iffState.h:372
unsigned int myLayer3SpecificInfo
Definition: iffState.h:333
Definition: iffState.h:18
DAPSource
Definition: iffState.h:27
short myModeCAltitude
Definition: iffState.h:320
unsigned int myEnhancedMode1Code1
Definition: iffState.h:350
virtual void deserialize(DtStreamReader &reader)

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)