9 #include <vlpi/entityIdentifier.h>
13 #include <vlutil/vlString.h>
15 class DtRunwayStateComponent;
21 , myCenterLineLight(100)
22 , myDistanceToGoLight(100)
24 , myDisplacedThresholdLight(100)
25 , myRapidExitTaxiwayLight(100)
26 , myRunwayExitLight(100)
28 , myTouchDownZoneLight(100)
29 , myThresholdLightingLight(100)
30 , myEndIndicatorLight(100)
31 , myApproachLight(100)
33 , myArrestorGear(false)
34 , myTaxiwayLeadOnLight(100)
35 , myTaxiwayStopBarLight(100)
36 , myPrethresholdEdgeLight(100)
88 const bool&
active()
const {
return myActive; };
109 unsigned char endLight()
const {
return myEndLight; }
140 int restoreFromArchive(
int& startIndex,
const std::vector<DtString>&);
166 return !(*
this == rhs);
175 else if (value ==
"ArrestorGear")
177 return arrestorGear();
179 else if (value ==
"Active")
183 else if (value ==
"Approach")
185 return approachLight();
187 else if (value ==
"CenterLine")
189 return centerLineLight();
191 else if (value ==
"DistanceToGo")
193 return distanceToGoLight();
195 else if (value ==
"TDZ")
197 return touchDownZoneLight();
199 else if (value ==
"DisplacedThreshold")
201 return displacedThresholdLight();
203 else if (value ==
"ThresholdLighting")
205 return thresholdLightingLight();
207 else if (value ==
"RapidExitTaxiwayLight")
209 return rapidExitTaxiwayLight();
211 else if (value ==
"RunwayExitLight")
213 return runwayExitLight();
215 else if (value ==
"TaxiwayLeadOnLight")
217 return taxiwayLeadOnLight();
219 else if (value ==
"TaxiwayStopBarLight")
221 return taxiwayStopBarLight();
223 else if (value ==
"PrethresholdEdgeLight")
225 return prethresholdEdgeLight();
227 else if (value ==
"REILS")
229 return endIndicatorLight();
231 else if (value ==
"RunwayEndLight")
235 else if (value ==
"VSGI")
239 else if (value ==
"All")
249 if ((value ==
"All") || (value ==
"Edge"))
254 if ((value ==
"All") || (value ==
"Approach"))
259 if ((value ==
"All") || (value ==
"CenterLine"))
261 setCenterLineLight(v);
264 if ((value ==
"All") || (value ==
"DistanceToGo"))
266 setDistanceToGoLight(v);
269 if ((value ==
"All") || (value ==
"TDZ"))
271 setTouchDownZoneLight(v);
274 if ((value ==
"All") || (value ==
"DisplacedThreshold"))
276 setDisplacedThresholdLight(v);
279 if ((value ==
"All") || (value ==
"ThresholdLighting"))
281 setThresholdLightingLight(v);
284 if ((value ==
"All") || (value ==
"RapidExitTaxiwayLight"))
286 setRapidExitTaxiwayLight(v);
289 if ((value ==
"All") || (value ==
"RunwayExitLight"))
291 setRunwayExitLight(v);
294 if ((value ==
"All") || (value ==
"TaxiwayLeadOnLight"))
296 setTaxiwayLeadOnLight(v);
299 if ((value ==
"All") || (value ==
"TaxiwayStopBarLight"))
301 setTaxiwayStopBarLight(v);
304 if ((value ==
"All") || (value ==
"PrethresholdEdgeLight"))
306 setPrethresholdEdgeLight(v);
309 if ((value ==
"All") || (value ==
"REILS"))
311 setEndIndicatorLight(v);
314 if ((value ==
"All") || (value ==
"RunwayEndLight"))
319 if ((value ==
"All") || (value ==
"VSGI"))
324 if (value ==
"ArrestorGear")
326 setArrestorGear(v == 1);
328 else if (value ==
"Active")
363 myRunwayLightState.resize(2);
390 return ((myUUID == rhs.
myUUID) &&
400 return !(*
this == rhs);
405 if ((value ==
"RunwayGuard") ||
406 (value ==
"Condition") ||
407 (value ==
"Active") ||
408 (value ==
"Damaged"))
418 if (value ==
"RunwayGuard")
422 else if (value ==
"Condition")
426 else if (value ==
"Active")
430 else if (value ==
"Damaged")
434 else if (value ==
"All")
444 if ((value ==
"All") || (value ==
"RunwayGuard"))
446 return setGuardLight(v);
449 if (value ==
"Condition")
451 return setCondition(v);
453 else if (value ==
"Active")
455 return setActive(v == 1);
457 else if (value ==
"Damaged")
459 return setDamaged(v == 1);
464 void setActive(
bool b) { myRunwayLightState[0].setActive(b); myRunwayLightState[1].setActive(b); };
479 const std::vector<DtRunwayLightStateData>&
runwayLightState()
const {
return myRunwayLightState; };
482 void restoreRunwayFromArchive(
const DtString&);
484 const std::vector<DtVector>&
runwayPoints()
const {
return myRunwayPoints; };
485 void setRunwayPoints(
const std::vector<DtVector>& runwayPoints) { myRunwayPoints = runwayPoints; };
487 DtString name()
const {
return myRunwayLightState[0].runwayName() +
"/" + myRunwayLightState[1].runwayName(); };
501 : myUUID(
DtUUID::nullUUID())
507 , myApronFloodLight(100)
508 , myClearanceBarLight(100)
509 , myTaxiwayCentreLight(100)
510 , myTaxiwayEdgeLight(100)
511 , myTaxiwayIdentifierMarkerBoardLight(100)
512 , myUndercarriageInspectionSystem(0)
561 return ((myUUID == rhs.
myUUID) &&
582 return !(*
this == rhs);
589 myRunways[sd.
uuid()] = sd;
591 return myRunways[sd.
uuid()];
596 std::map<DtUUID, DtRunwayStateData>::iterator iter = myRunways.find(u);
598 if (iter != myRunways.end())
600 myRunways.erase(iter);
609 std::map<DtUUID, DtRunwayStateData>::iterator iter = myRunways.find(u);
611 if (iter != myRunways.end())
617 return theDefaultRunwayStateData;
622 for (
auto& runway : myRunways)
624 if ((runway.second.name() == u) || (runway.second.runwayLightState()[0].runwayName() == u) || (runway.second.runwayLightState()[1].runwayName() == u))
626 return runway.second;
631 return theDefaultRunwayStateData;
636 std::map<DtUUID, DtRunwayStateData>::const_iterator iter = myRunways.find(u);
638 if (iter != myRunways.end())
644 return theDefaultRunwayStateData;
649 for (
auto& runway : myRunways)
651 if ((runway.second.name() == u) || (runway.second.runwayLightState()[0].runwayName() == u) || (runway.second.runwayLightState()[1].runwayName() == u))
653 return runway.second;
658 return theDefaultRunwayStateData;
661 const std::map<DtUUID, DtRunwayStateData>&
runways()
const
666 std::map<DtUUID, DtRunwayStateData>&
runways()
692 const bool&
isLocal()
const {
return myIsLocal; }
695 const bool&
active()
const {
return myActive; }
721 if ((s ==
"All") || (s ==
"ApronLight"))
726 if ((s ==
"All") || (s ==
"ApronFloodLight"))
728 setApronFloodLight(v);
731 if ((s ==
"All") || (s ==
"ClearanceBarLight"))
733 setClearanceBarLight(v);
736 if ((s ==
"All") || (s ==
"TaxiwayCentreLight"))
738 setTaxiwayCentreLight(v);
741 if ((s ==
"All") || (s ==
"TaxiwayEdgeLight"))
743 setTaxiwayEdgeLight(v);
746 if ((s ==
"All") || (s ==
"TaxiwayIdentifierMarkerBoardLight"))
748 setTaxiwayIdentifierMarkerBoardLight(v);
751 if (s ==
"Undercarriage")
753 setUndercarriageInspectionSystem(v == 1);
759 if (s ==
"ApronLight")
763 else if (s ==
"ApronFloodLight")
765 return apronFloodLight();
767 else if (s ==
"ClearanceBarLight")
769 return clearanceBarLight();
771 else if (s ==
"TaxiwayCentreLight")
773 return taxiwayCentreLight();
775 else if (s ==
"TaxiwayEdgeLight")
777 return taxiwayEdgeLight();
779 else if (s ==
"TaxiwayIdentifierMarkerBoardLight")
781 return taxiwayIdentifierMarkerBoardLight();
783 else if (s ==
"Undercarriage")
785 return undercarriageInspectionSystem();
795 std::vector<DtString> runwaysArchived()
const;
796 void restoreRunwaysFromArchive(
const std::vector<DtString>&);
799 void restoreFromArchive(
const DtString&);
const std::vector< DtRunwayLightStateData > & runwayLightState() const
Definition: aerodromeStateData.h:479
UUID is a unique ID wrapper class.
Definition: uuid.h:59
void setUUID(const DtUUID &u)
Definition: aerodromeStateData.h:681
unsigned char displacedThresholdLight() const
Definition: aerodromeStateData.h:127
void setArrestorGear(bool c)
Definition: aerodromeStateData.h:137
void setEdgeLight(unsigned char c)
Definition: aerodromeStateData.h:131
std::vector< DtVector > myRunwayPoints
Definition: aerodromeStateData.h:495
const bool & active() const
Definition: aerodromeStateData.h:88
unsigned char myClearanceBarLight
Definition: aerodromeStateData.h:814
unsigned char touchDownZoneLight() const
Definition: aerodromeStateData.h:103
void setTouchDownZoneLight(unsigned char c)
Definition: aerodromeStateData.h:104
unsigned char myApproachLight
Definition: aerodromeStateData.h:346
void setVGSILight(unsigned char c)
Definition: aerodromeStateData.h:107
void setRunwayName(const DtString &n)
Definition: aerodromeStateData.h:86
void setEntityIdentifier(const DtEntityIdentifier &c)
Definition: aerodromeStateData.h:687
unsigned char runwayExitLight() const
Definition: aerodromeStateData.h:115
void setThresholdLightingLight(unsigned char c)
Definition: aerodromeStateData.h:101
void setForceType(int c)
Definition: aerodromeStateData.h:678
unsigned char value(const DtString &s) const
Definition: aerodromeStateData.h:757
const bool & isLocal() const
Definition: aerodromeStateData.h:692
unsigned char taxiwayStopBarLight() const
Definition: aerodromeStateData.h:121
unsigned int appearance() const
Definition: aerodromeStateData.h:689
void setActive(bool b)
Definition: aerodromeStateData.h:696
DtUUID myUUID
Definition: aerodromeStateData.h:804
bool operator==(const DtRunwayLightStateData &rhs) const
Definition: aerodromeStateData.h:142
bool myActive
Definition: aerodromeStateData.h:336
unsigned char thresholdLightingLight() const
Definition: aerodromeStateData.h:100
Definition: aerodromeStateData.h:498
unsigned char centerLineLight() const
Definition: aerodromeStateData.h:91
unsigned int myAppearance
Definition: aerodromeStateData.h:808
unsigned char myEdgeLight
Definition: aerodromeStateData.h:340
DtEntityIdentifier myEntityIdentifier
Definition: aerodromeStateData.h:809
const bool & active() const
Definition: aerodromeStateData.h:695
unsigned char myTaxiwayStopBarLight
Definition: aerodromeStateData.h:351
unsigned char apronLight() const
Definition: aerodromeStateData.h:698
void setEndIndicatorLight(unsigned char c)
Definition: aerodromeStateData.h:98
unsigned char myRunwayExitLight
Definition: aerodromeStateData.h:349
bool isLightState(const DtString &value) const
Definition: aerodromeStateData.h:403
bool myActive
Definition: aerodromeStateData.h:806
unsigned char guardLight() const
Definition: aerodromeStateData.h:475
unsigned char value(const DtString &value) const
Definition: aerodromeStateData.h:416
const DtString & globalId() const
Definition: aerodromeStateData.h:674
unsigned char prethresholdEdgeLight() const
Definition: aerodromeStateData.h:124
const std::vector< DtVector > & runwayPoints() const
Definition: aerodromeStateData.h:484
void setTaxiwayIdentifierMarkerBoardLight(unsigned char c)
Definition: aerodromeStateData.h:714
bool arrestorGear() const
Definition: aerodromeStateData.h:136
Contains the DtUUID class declaration.
void setRunwayExitLight(unsigned char c)
Definition: aerodromeStateData.h:116
void setIsLocal(bool b)
Definition: aerodromeStateData.h:693
bool undercarriageInspectionSystem() const
Definition: aerodromeStateData.h:717
DtRunwayStateData & runway(const DtUUID &u)
Definition: aerodromeStateData.h:607
void setClearanceBarLight(unsigned char c)
Definition: aerodromeStateData.h:705
void setApproachLight(unsigned char c)
Definition: aerodromeStateData.h:95
unsigned char myThresholdLightingLight
Definition: aerodromeStateData.h:344
void setRapidExitTaxiwayLight(unsigned char c)
Definition: aerodromeStateData.h:113
bool damaged() const
Definition: aerodromeStateData.h:469
void setUndercarriageInspectionSystem(bool onOff)
Definition: aerodromeStateData.h:716
unsigned char myApronLight
Definition: aerodromeStateData.h:812
void setApronFloodLight(unsigned char c)
Definition: aerodromeStateData.h:702
void setCenterLineLight(unsigned char c)
Definition: aerodromeStateData.h:92
bool operator!=(const DtRunwayLightStateData &rhs) const
Definition: aerodromeStateData.h:164
void setGlobalId(const DtString &c)
Definition: aerodromeStateData.h:675
Definition: objectType.h:27
DtRunwayStateData & addRunway()
Definition: aerodromeStateData.h:585
bool myIsLocal
Definition: aerodromeStateData.h:805
void setValue(const DtString &s, unsigned char v)
Definition: aerodromeStateData.h:719
bool myDamaged
Definition: aerodromeStateData.h:491
DtRunwayLightStateData(const DtRunwayLightStateData &orig)
Definition: aerodromeStateData.h:39
const DtRunwayStateData & runway(const DtUUID &u) const
Definition: aerodromeStateData.h:634
const DtEntityIdentifier & entityIdentifier() const
Definition: aerodromeStateData.h:686
unsigned char myTaxiwayGuardLight
Definition: aerodromeStateData.h:818
void setValue(const DtString &value, unsigned char v)
Definition: aerodromeStateData.h:442
const std::map< DtUUID, DtRunwayStateData > & runways() const
Definition: aerodromeStateData.h:661
unsigned char condition() const
Definition: aerodromeStateData.h:472
void setGuardLight(unsigned char c)
Definition: aerodromeStateData.h:476
unsigned char taxiwayEdgeLight() const
Definition: aerodromeStateData.h:710
DtString myGlobalId
Definition: aerodromeStateData.h:803
std::vector< DtRunwayLightStateData > & runwayLightState()
Definition: aerodromeStateData.h:478
unsigned char clearanceBarLight() const
Definition: aerodromeStateData.h:704
unsigned char myVGSILight
Definition: aerodromeStateData.h:347
int forceType() const
Definition: aerodromeStateData.h:677
DtAerodromeStateData & operator=(const DtAerodromeStateData &orig)
Definition: aerodromeStateData.h:536
void setCondition(unsigned char c)
Definition: aerodromeStateData.h:473
DtRunwayStateData & runway(const std::string &u)
Definition: aerodromeStateData.h:620
unsigned char myTaxiwayIdentifierMarkerBoardLight
Definition: aerodromeStateData.h:819
unsigned char distanceToGoLight() const
Definition: aerodromeStateData.h:133
unsigned char taxiwayCentreLight() const
Definition: aerodromeStateData.h:707
unsigned char myApronFloodLight
Definition: aerodromeStateData.h:813
unsigned char myEndIndicatorLight
Definition: aerodromeStateData.h:345
bool operator==(const DtAerodromeStateData &rhs) const
Definition: aerodromeStateData.h:559
unsigned char value(const DtString &value) const
Definition: aerodromeStateData.h:169
Definition: aerodromeStateData.h:17
unsigned char edgeLight() const
Definition: aerodromeStateData.h:130
void setEndLight(unsigned char c)
Definition: aerodromeStateData.h:110
unsigned char myCondition
Definition: aerodromeStateData.h:492
unsigned char myTaxiwayLeadOnLight
Definition: aerodromeStateData.h:350
DtRunwayStateData(const DtRunwayStateData &orig)
Definition: aerodromeStateData.h:366
unsigned char myPrethresholdEdgeLight
Definition: aerodromeStateData.h:352
const DtString & runwayName() const
Definition: aerodromeStateData.h:85
unsigned char approachLight() const
Definition: aerodromeStateData.h:94
DtString myRunwayName
Definition: aerodromeStateData.h:335
unsigned char myTaxiwayCentreLight
Definition: aerodromeStateData.h:816
unsigned char myUndercarriageInspectionSystem
Definition: aerodromeStateData.h:820
void setDistanceToGoLight(unsigned char c)
Definition: aerodromeStateData.h:134
DtString myAirportCode
Definition: aerodromeStateData.h:802
unsigned char myTaxiwayEdgeLight
Definition: aerodromeStateData.h:817
unsigned char VGSILight() const
Definition: aerodromeStateData.h:106
bool active() const
Definition: aerodromeStateData.h:463
void setTaxiwayCentreLight(unsigned char c)
Definition: aerodromeStateData.h:708
DtObjectType myObjectType
Definition: aerodromeStateData.h:810
unsigned char myGuardLight
Definition: aerodromeStateData.h:493
unsigned char myRapidExitTaxiwayLight
Definition: aerodromeStateData.h:348
void setValue(const DtString &value, unsigned char v)
Definition: aerodromeStateData.h:247
bool operator==(const DtRunwayStateData &rhs) const
Definition: aerodromeStateData.h:388
DtRunwayLightStateData()
Definition: aerodromeStateData.h:19
DtAerodromeStateData()
Definition: aerodromeStateData.h:500
unsigned char myTouchDownZoneLight
Definition: aerodromeStateData.h:343
const DtUUID & uuid() const
Definition: aerodromeStateData.h:680
std::map< DtUUID, DtRunwayStateData > & runways()
Definition: aerodromeStateData.h:666
unsigned char apronFloodLight() const
Definition: aerodromeStateData.h:701
unsigned char myEndLight
Definition: aerodromeStateData.h:342
bool removeRunway(const DtUUID &u)
Definition: aerodromeStateData.h:594
void setAppearance(unsigned int c)
Definition: aerodromeStateData.h:690
std::map< DtUUID, DtRunwayStateData > myRunways
Definition: aerodromeStateData.h:822
void setObjectType(const DtObjectType &o)
Definition: aerodromeStateData.h:684
void setTaxiwayEdgeLight(unsigned char c)
Definition: aerodromeStateData.h:711
const DtRunwayStateData & runway(const std::string &u) const
Definition: aerodromeStateData.h:647
DtAerodromeStateData(const DtAerodromeStateData &orig)
Definition: aerodromeStateData.h:515
#define DT_DLL_vrfutil
This file is used to determine how to build Disable inconsistent dll linkage warning Visual Studio 6...
Definition: vrfutilDefines.h:34
void setAirportCode(const DtString &c)
Definition: aerodromeStateData.h:672
DtString name() const
Definition: aerodromeStateData.h:487
unsigned char myObstructionLight
Definition: aerodromeStateData.h:815
unsigned char rapidExitTaxiwayLight() const
Definition: aerodromeStateData.h:112
bool operator!=(const DtRunwayStateData &rhs) const
Definition: aerodromeStateData.h:398
DtRunwayStateData()
Definition: aerodromeStateData.h:358
unsigned char endIndicatorLight() const
Definition: aerodromeStateData.h:97
void setTaxiwayStopBarLight(unsigned char c)
Definition: aerodromeStateData.h:122
unsigned char taxiwayLeadOnLight() const
Definition: aerodromeStateData.h:118
const DtString & airportCode() const
Definition: aerodromeStateData.h:671
const DtObjectType & objectType() const
Definition: aerodromeStateData.h:683
void setActive(bool b)
Definition: aerodromeStateData.h:464
void setUUID(const DtUUID &u)
Definition: aerodromeStateData.h:467
const DtUUID & uuid() const
Definition: aerodromeStateData.h:466
DtUUID myUUID
Definition: aerodromeStateData.h:487
unsigned char endLight() const
Definition: aerodromeStateData.h:109
unsigned char myDisplacedThresholdLight
Definition: aerodromeStateData.h:341
DtRunwayStateData & operator=(const DtRunwayStateData &orig)
Definition: aerodromeStateData.h:376
void setRunwayPoints(const std::vector< DtVector > &runwayPoints)
Definition: aerodromeStateData.h:485
unsigned char myDistanceToGoLight
Definition: aerodromeStateData.h:339
void setDamaged(bool b)
Definition: aerodromeStateData.h:470
void setPrethresholdEdgeLight(unsigned char c)
Definition: aerodromeStateData.h:125
DtRunwayLightStateData & operator=(const DtRunwayLightStateData &orig)
Definition: aerodromeStateData.h:61
void setActive(bool b)
Definition: aerodromeStateData.h:89
unsigned char taxiwayIdentifierMarkerBoardLight() const
Definition: aerodromeStateData.h:713
void setDisplacedThresholdLight(unsigned char c)
Definition: aerodromeStateData.h:128
bool operator!=(const DtAerodromeStateData &rhs) const
Definition: aerodromeStateData.h:580
int myForceType
Definition: aerodromeStateData.h:807
void setApronLight(unsigned char c)
Definition: aerodromeStateData.h:699
void setTaxiwayLeadOnLight(unsigned char c)
Definition: aerodromeStateData.h:119
Definition: aerodromeStateData.h:355
std::vector< DtRunwayLightStateData > myRunwayLightState
Definition: aerodromeStateData.h:494
unsigned char myCenterLineLight
Definition: aerodromeStateData.h:338
bool myArrestorGear
Definition: aerodromeStateData.h:337