17 #ifndef IFF_MODE_CODE_SIZE
18 #define IFF_MODE_CODE_SIZE 3
24 enum CapabilityReport {CapabilityReport_NoCapability = 0, CapabilityReport_CommAB7Ground = 4, CapabilityReport_CommAB7Airborne = 5, CapabilityReport_CommAB7GroundAirborne = 6, CapabilityReport_DR1FS2345AirborneGround = 7, CapabilityReport_NoStatement = 255};
25 enum ModeSLevelsPresent {ModeSLevelsPresent_Level1 = 1, ModeSLevelsPresent_Level2Elementary = 2, ModeSLevelsPresent_Level2Enhanced = 3, ModeSLevelsPresent_Level3 = 4, ModeSLevelsPresent_Level4 = 5};
26 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};
27 enum SystemType {SystemType_OtherSysType = 0, SystemType_Transponder = 1, SystemType_Interrogator = 2, SystemType_SovietTransponder = 3, SystemType_SovietInterrogator = 4};
28 enum AircraftPresentDomain {AircraftPresentDomain_NoStatement = 0, AircraftPresentDomain_Airborne = 1, AircraftPresentDomain_OnGroundSurface = 2};
30 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};
31 enum AircraftIdentificationType {AircraftIdentificationType_NoStatement = 0, AircraftIdentificationType_FlightNumber = 1, AircraftIdentificationType_TailNumber = 2};
32 enum DataCategory {DataCategory_NoStatement = 0, DataCategory_FunctionalData = 1, DataCategory_DataLinkMessages = 2};
33 enum AltParm4 {AltParm4_Other = 0, AltParm4_Valid = 1, AltParm4_Invalid = 2, AltParm4_NoResponse = 3};
34 enum NavigationSource {NavigationSource_NoStatement = 0, NavigationSource_GPS = 1, NavigationSource_INS = 2, NavigationSource_INSGPS = 3};
48 size+=
sizeof(
unsigned short);
49 size+=
sizeof(
unsigned short);
75 virtual std::string getEntityIdentifier();
76 virtual void setEntityIdentifier(std::string val);
78 virtual std::string getHostEntityIdentifier();
79 virtual void setHostEntityIdentifier(std::string val);
82 virtual void setRelativePosition(
DtVector32 val);
84 virtual SystemType getSystemType();
85 virtual void setSystemType(SystemType val);
87 virtual SystemName getSystemName();
88 virtual void setSystemName(SystemName val);
90 virtual unsigned char getSystemMode();
91 virtual void setSystemMode(
unsigned char val);
93 virtual std::string getEventId();
94 virtual void setEventId(std::string val);
96 virtual AltParm4 getAlternateMode4();
97 virtual void setAlternateMode4(AltParm4 val);
99 virtual bool getSystemIsOn();
100 virtual void setSystemIsOn(
bool val);
102 virtual bool getSystemIsOperational();
103 virtual void setSystemIsOperational(
bool val);
105 virtual bool getSimulationMode();
106 virtual void setSimulationMode(
bool val);
108 virtual bool getInteractiveCapable();
109 virtual void setInteractiveCapable(
bool val);
111 virtual void setModeOrParameterVal(
char type,
int status,
bool onOff);
112 virtual void setModeOrParameterVal(
int type,
int status,
bool onOff);
113 virtual bool getModeOrParameterVal(
char type,
int status)
const;
114 virtual bool getModeOrParameterVal(
int type,
int status)
const;
116 virtual void setModeEnabled(
int modeType,
bool onOff);
117 virtual bool modeEnabled(
int modeType)
const;
118 virtual void setModeEnabled(
char modeType,
bool onOff);
119 virtual bool modeEnabled(
char modeType)
const;
121 virtual void setModeIsMalfunctioning(
int modeType,
bool onOff);
122 virtual bool modeIsMalfunctioning(
int modeType)
const;
123 virtual void setModeIsMalfunctioning(
char modeType,
bool onOff);
124 virtual bool modeIsMalfunctioning(
char modeType)
const;
126 virtual void setModeIsDamaged(
int modeType,
bool onOff);
127 virtual bool modeIsDamaged(
int modeType)
const;
128 virtual void setModeIsDamaged(
char modeType,
bool onOff);
129 virtual bool modeIsDamaged(
char modeType)
const;
131 virtual void setModeIsOn(
int modeType,
bool onOff);
132 virtual bool modeIsOn(
int modeType)
const;
133 virtual void setModeIsOn(
char modeType,
bool onOff);
134 virtual bool modeIsOn(
char modeType)
const;
136 virtual unsigned short getMode4PseudoCrypto();
137 virtual void setMode4PseudoCrypto(
unsigned short val);
139 virtual bool getMode4PseudoCryptoAvailable();
140 virtual void setMode4PseudoCryptoAvailable(
bool val);
142 virtual bool getModeSIsTcasI();
143 virtual void setModeSIsTcasI(
bool val);
145 virtual unsigned short modeCode(
int modeCodeNum);
146 virtual void setModeCode(
int modeCodeNum,
unsigned short val);
148 virtual bool getEmergencyOn();
149 virtual void setEmergencyOn(
bool val);
151 virtual bool getIdentSquawkFlashOn();
152 virtual void setIdentSquawkFlashOn(
bool val);
154 virtual bool getUnmannedAircraftOn();
155 virtual void setUnmannedAircraftOn(
bool val);
157 virtual bool getModeCAltitudeAvailable();
158 virtual void setModeCAltitudeAvailable(
bool val);
160 virtual short getModeCAltitude();
161 virtual void setModeCAltitude(
short val);
163 virtual bool getStiOn();
164 virtual void setStiOn(
bool val);
166 virtual unsigned char getCode();
167 virtual void setCode(
unsigned char val);
169 virtual bool getPowerReduction();
170 virtual void setPowerReduction(
bool val);
172 virtual bool getIsDamaged();
173 virtual void setIsDamaged(
bool val);
175 virtual bool getIsMalfunctioning();
176 virtual void setIsMalfunctioning(
bool val);
178 virtual bool getIsOn();
179 virtual void setIsOn(
bool val);
181 virtual bool getRadarEnhancement();
182 virtual void setRadarEnhancement(
bool val);
184 virtual bool getLayer2DataAvailable();
185 virtual void setLayer2DataAvailable(
bool val);
187 virtual bool getLayer3DataAvailable();
188 virtual void setLayer3DataAvailable(
bool val);
190 virtual bool getLayer4DataAvailable();
191 virtual void setLayer4DataAvailable(
bool val);
193 virtual bool getLayer5DataAvailable();
194 virtual void setLayer5DataAvailable(
bool val);
196 virtual unsigned int getLayer2SpecificInfo();
197 virtual void setLayer2SpecificInfo(
unsigned int val);
199 virtual unsigned int getLayer3SpecificInfo();
200 virtual void setLayer3SpecificInfo(
unsigned int val);
202 virtual unsigned int getLayer4SpecificInfo();
203 virtual void setLayer4SpecificInfo(
unsigned int val);
205 virtual unsigned int getLayer5SpecificInfo();
206 virtual void setLayer5SpecificInfo(
unsigned int val);
208 virtual float getAzimuthCenter();
209 virtual void setAzimuthCenter(
float val);
211 virtual float getAzimuthSweep();
212 virtual void setAzimuthSweep(
float val);
214 virtual float getElevationCenter();
215 virtual void setElevationCenter(
float val);
217 virtual float getElevationSweep();
218 virtual void setElevationSweep(
float val);
220 virtual float getSweepSync();
221 virtual void setSweepSync(
float val);
223 virtual OperationalParameter1 getSecondaryOperationalDataParameter1();
224 virtual void setSecondaryOperationalDataParameter1(OperationalParameter1 val);
226 virtual OperationalParameter2 getSecondaryOperationalDataParameter2();
227 virtual void setSecondaryOperationalDataParameter2(OperationalParameter2 val);
229 virtual unsigned char getSystemDesignator();
230 virtual void setSystemDesignator(
unsigned char val);
232 virtual unsigned char getSystemSpecificData();
233 virtual void setSystemSpecificData(
unsigned char val);
235 virtual SimulationAddress getReportingSimulation();
236 virtual void setReportingSimulation(SimulationAddress val);
238 virtual unsigned int getMessageFormatsPresent();
239 virtual void setMessageFormatsPresent(
unsigned int val);
241 virtual unsigned char getMode5InterrogatorStatus();
242 virtual void setMode5InterrogatorStatus(
unsigned char val);
244 virtual std::string getInterrogatedEntityID();
245 virtual void setInterrogatedEntityID(std::string val);
247 virtual unsigned short getMode5TransponderStatus();
248 virtual void setMode5TransponderStatus(
unsigned short val);
250 virtual unsigned short getPin();
251 virtual void setPin(
unsigned short val);
253 virtual unsigned short getEnhancedMode1();
254 virtual void setEnhancedMode1(
unsigned short val);
256 virtual unsigned int getEnhancedMode1Code1();
257 virtual void setEnhancedMode1Code1(
unsigned int val);
259 virtual unsigned int getEnhancedMode1Code2();
260 virtual void setEnhancedMode1Code2(
unsigned int val);
262 virtual unsigned int getEnhancedMode1Code3();
263 virtual void setEnhancedMode1Code3(
unsigned int val);
265 virtual unsigned int getEnhancedMode1Code4();
266 virtual void setEnhancedMode1Code4(
unsigned int val);
268 virtual bool getEnhancedMode1OnOff();
269 virtual void setEnhancedMode1OnOff(
bool val);
271 virtual bool getEnhancedMode1DamageStatus();
272 virtual void setEnhancedMode1DamageStatus(
bool val);
274 virtual bool getEnhancedMode1MalfunctionStatus();
275 virtual void setEnhancedMode1MalfunctionStatus(
bool val);
277 virtual unsigned short getNationalOrigin();
278 virtual void setNationalOrigin(
unsigned short val);
280 virtual unsigned char getSupplementalData();
281 virtual void setSupplementalData(
unsigned char val);
283 virtual NavigationSource getNavigationSource();
284 virtual void setNavigationSource(NavigationSource val);
286 virtual unsigned char getFigureOfMerit();
287 virtual void setFigureOfMerit(
unsigned char val);
289 virtual ModeSLevelsPresent getModeSLevelsPresent();
290 virtual void setModeSLevelsPresent(ModeSLevelsPresent val);
292 virtual unsigned char getModeSInterrogatorStatus();
293 virtual void setModeSInterrogatorStatus(
unsigned char val);
295 virtual unsigned short getModeSTransponderStatus();
296 virtual void setModeSTransponderStatus(
unsigned short val);
298 virtual AircraftPresentDomain getAircraftPresentDomain();
299 virtual void setAircraftPresentDomain(AircraftPresentDomain val);
301 virtual unsigned char getAircraftID();
302 virtual void setAircraftID(
unsigned char val);
304 virtual unsigned int getAircraftAddress();
305 virtual void setAircraftAddress(
unsigned int val);
307 virtual AircraftIdentificationType getAircraftIDType();
308 virtual void setAircraftIDType(AircraftIdentificationType val);
310 virtual DAPSource getDapSource();
311 virtual void setDapSource(DAPSource val);
313 virtual unsigned short getModeSAltitude();
314 virtual void setModeSAltitude(
unsigned short val);
316 virtual CapabilityReport getCapabilityReport();
317 virtual void setCapabilityReport(CapabilityReport val);
319 virtual unsigned char getAvailableLayers();
320 virtual void setAvailableLayers(
unsigned char val);
322 virtual DataCategory getDataCategory();
323 virtual void setDataCategory(DataCategory val);
329 static DtMessage* decode(
unsigned char* buffer,
int length);
330 static std::string theMessageName();
411 bool myModeParameterStatusValues[6][4];
std::string myHostEntityIdentifier
Definition: iffState.h:336
unsigned short myMode5TransponderStatus
Definition: iffState.h:383
unsigned int myMessageFormatsPresent
Definition: iffState.h:380
Definition: iffState.h:39
bool myLayer2DataAvailable
Definition: iffState.h:362
bool mySimulationMode
Definition: iffState.h:345
unsigned int myLayer5SpecificInfo
Definition: iffState.h:369
float myElevationSweep
Definition: iffState.h:373
bool myPowerReduction
Definition: iffState.h:357
unsigned short myPin
Definition: iffState.h:384
DtModeOrParameterKind
Definition: iffState.h:36
AltParm4 myAlternateMode4
Definition: iffState.h:342
unsigned char myAircraftID
Definition: iffState.h:401
#define IFF_MODE_CODE_SIZE
Definition: iffState.h:18
int size()
Definition: iffState.h:45
static std::string theFullName
Definition: iffState.h:333
unsigned short myEnhancedMode1
Definition: iffState.h:385
unsigned int myEnhancedMode1Code4
Definition: iffState.h:389
SystemName
Definition: iffState.h:26
SystemType mySystemType
Definition: iffState.h:338
bool myMode4PseudoCryptoAvailable
Definition: iffState.h:348
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:32
unsigned char mySystemMode
Definition: iffState.h:340
unsigned char mySystemSpecificData
Definition: iffState.h:378
void deserialize(DtStreamReader &reader)
Definition: iffState.h:61
ModeSLevelsPresent myModeSLevelsPresent
Definition: iffState.h:397
OperationalParameter1
Definition: iffState.h:29
unsigned char myAvailableLayers
Definition: iffState.h:407
OperationalParameter1 mySecondaryOperationalDataParameter1
Definition: iffState.h:375
bool myLayer3DataAvailable
Definition: iffState.h:363
std::string myInterrogatedEntityID
Definition: iffState.h:382
unsigned char myMode5InterrogatorStatus
Definition: iffState.h:381
bool myEnhancedMode1OnOff
Definition: iffState.h:390
bool myIsOn
Definition: iffState.h:360
bool myIdentSquawkFlashOn
Definition: iffState.h:351
Defines the base class for all messages that are sent to and from C#.
bool myLayer5DataAvailable
Definition: iffState.h:365
NavigationSource
Definition: iffState.h:34
This is the DtMessage class.
Definition: message.h:20
bool myEmergencyOn
Definition: iffState.h:350
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:41
bool myInteractiveCapable
Definition: iffState.h:346
SystemName mySystemName
Definition: iffState.h:339
unsigned short myNationalOrigin
Definition: iffState.h:393
bool myIsMalfunctioning
Definition: iffState.h:359
unsigned int myLayer4SpecificInfo
Definition: iffState.h:368
This file declares DtVector and DtVector32.
AircraftPresentDomain
Definition: iffState.h:28
bool myEnhancedMode1DamageStatus
Definition: iffState.h:391
unsigned int myEnhancedMode1Code3
Definition: iffState.h:388
unsigned short myModeSTransponderStatus
Definition: iffState.h:399
void serialize(DtStreamWriter &writer)
Definition: iffState.h:54
float myAzimuthCenter
Definition: iffState.h:370
unsigned char mySupplementalData
Definition: iffState.h:394
CapabilityReport myCapabilityReport
Definition: iffState.h:406
unsigned short myModeSAltitude
Definition: iffState.h:405
Definition: vlVector.h:162
CapabilityReport
Definition: iffState.h:24
float myElevationCenter
Definition: iffState.h:372
unsigned char myFigureOfMerit
Definition: iffState.h:396
OperationalParameter2 mySecondaryOperationalDataParameter2
Definition: iffState.h:376
AircraftIdentificationType myAircraftIDType
Definition: iffState.h:403
SimulationAddress myReportingSimulation
Definition: iffState.h:379
Instances of DtStreamWriter encode values into a byte array.
Definition: byteStream.h:74
bool myIsDamaged
Definition: iffState.h:358
AircraftIdentificationType
Definition: iffState.h:31
bool mySystemIsOn
Definition: iffState.h:343
NavigationSource myNavigationSource
Definition: iffState.h:395
unsigned int myLayer2SpecificInfo
Definition: iffState.h:366
DtVector32 myRelativePosition
Definition: iffState.h:337
unsigned short myApplicationId
Definition: iffState.h:42
unsigned int myAircraftAddress
Definition: iffState.h:402
unsigned int myEnhancedMode1Code2
Definition: iffState.h:387
Instances of DtStreamReader decode values from a byte array.
Definition: byteStream.h:31
bool myEnhancedMode1MalfunctionStatus
Definition: iffState.h:392
virtual void serialize(DtStreamWriter &writer)
std::string myEventId
Definition: iffState.h:341
bool mySystemIsOperational
Definition: iffState.h:344
OperationalParameter2
Definition: iffState.h:35
float myAzimuthSweep
Definition: iffState.h:371
bool myLayer4DataAvailable
Definition: iffState.h:364
std::string myEntityIdentifier
Definition: iffState.h:335
AircraftPresentDomain myAircraftPresentDomain
Definition: iffState.h:400
bool myModeSIsTcasI
Definition: iffState.h:349
unsigned short myMode4PseudoCrypto
Definition: iffState.h:347
DAPSource myDapSource
Definition: iffState.h:404
bool myModeCAltitudeAvailable
Definition: iffState.h:353
bool myUnmannedAircraftOn
Definition: iffState.h:352
unsigned char myModeSInterrogatorStatus
Definition: iffState.h:398
bool myRadarEnhancement
Definition: iffState.h:361
bool myStiOn
Definition: iffState.h:355
unsigned char myCode
Definition: iffState.h:356
float mySweepSync
Definition: iffState.h:374
unsigned char mySystemDesignator
Definition: iffState.h:377
ModeSLevelsPresent
Definition: iffState.h:25
AltParm4
Definition: iffState.h:33
SystemType
Definition: iffState.h:27
DataCategory myDataCategory
Definition: iffState.h:408
unsigned int myLayer3SpecificInfo
Definition: iffState.h:367
Definition: iffState.h:21
DAPSource
Definition: iffState.h:30
short myModeCAltitude
Definition: iffState.h:354
unsigned int myEnhancedMode1Code1
Definition: iffState.h:386
virtual void deserialize(DtStreamReader &reader)