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())
503 , myCheckForNameReservation(true)
508 , myApronFloodLight(100)
509 , myClearanceBarLight(100)
510 , myTaxiwayCentreLight(100)
511 , myTaxiwayEdgeLight(100)
512 , myTaxiwayIdentifierMarkerBoardLight(100)
513 , myUndercarriageInspectionSystem(0)
564 return ((myUUID == rhs.
myUUID) &&
585 return !(*
this == rhs);
592 myRunways[sd.
uuid()] = sd;
594 return myRunways[sd.
uuid()];
599 std::map<DtUUID, DtRunwayStateData>::iterator iter = myRunways.find(u);
601 if (iter != myRunways.end())
603 myRunways.erase(iter);
612 std::map<DtUUID, DtRunwayStateData>::iterator iter = myRunways.find(u);
614 if (iter != myRunways.end())
620 return theDefaultRunwayStateData;
625 for (
auto& runway : myRunways)
627 if ((runway.second.name() == u) || (runway.second.runwayLightState()[0].runwayName() == u) || (runway.second.runwayLightState()[1].runwayName() == u))
629 return runway.second;
634 return theDefaultRunwayStateData;
639 std::map<DtUUID, DtRunwayStateData>::const_iterator iter = myRunways.find(u);
641 if (iter != myRunways.end())
647 return theDefaultRunwayStateData;
652 for (
auto& runway : myRunways)
654 if ((runway.second.name() == u) || (runway.second.runwayLightState()[0].runwayName() == u) || (runway.second.runwayLightState()[1].runwayName() == u))
656 return runway.second;
661 return theDefaultRunwayStateData;
664 const std::map<DtUUID, DtRunwayStateData>&
runways()
const
669 std::map<DtUUID, DtRunwayStateData>&
runways()
686 const DtObjectType&
objectType()
const {
return myObjectType; }
695 const bool&
isLocal()
const {
return myIsLocal; }
701 const bool&
active()
const {
return myActive; }
727 if ((s ==
"All") || (s ==
"ApronLight"))
732 if ((s ==
"All") || (s ==
"ApronFloodLight"))
734 setApronFloodLight(v);
737 if ((s ==
"All") || (s ==
"ClearanceBarLight"))
739 setClearanceBarLight(v);
742 if ((s ==
"All") || (s ==
"TaxiwayCentreLight"))
744 setTaxiwayCentreLight(v);
747 if ((s ==
"All") || (s ==
"TaxiwayEdgeLight"))
749 setTaxiwayEdgeLight(v);
752 if ((s ==
"All") || (s ==
"TaxiwayIdentifierMarkerBoardLight"))
754 setTaxiwayIdentifierMarkerBoardLight(v);
757 if (s ==
"Undercarriage")
759 setUndercarriageInspectionSystem(v == 1);
765 if (s ==
"ApronLight")
769 else if (s ==
"ApronFloodLight")
771 return apronFloodLight();
773 else if (s ==
"ClearanceBarLight")
775 return clearanceBarLight();
777 else if (s ==
"TaxiwayCentreLight")
779 return taxiwayCentreLight();
781 else if (s ==
"TaxiwayEdgeLight")
783 return taxiwayEdgeLight();
785 else if (s ==
"TaxiwayIdentifierMarkerBoardLight")
787 return taxiwayIdentifierMarkerBoardLight();
789 else if (s ==
"Undercarriage")
791 return undercarriageInspectionSystem();
801 std::vector<DtString> runwaysArchived()
const;
802 void restoreRunwaysFromArchive(
const std::vector<DtString>&);
805 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:684
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:821
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:690
unsigned char runwayExitLight() const
Definition: aerodromeStateData.h:115
void setThresholdLightingLight(unsigned char c)
Definition: aerodromeStateData.h:101
void setForceType(int c)
Definition: aerodromeStateData.h:681
unsigned char value(const DtString &s) const
Definition: aerodromeStateData.h:763
const bool & isLocal() const
Definition: aerodromeStateData.h:695
unsigned char taxiwayStopBarLight() const
Definition: aerodromeStateData.h:121
unsigned int appearance() const
Definition: aerodromeStateData.h:692
void setActive(bool b)
Definition: aerodromeStateData.h:702
DtUUID myUUID
Definition: aerodromeStateData.h:810
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:815
unsigned char myEdgeLight
Definition: aerodromeStateData.h:340
DtEntityIdentifier myEntityIdentifier
Definition: aerodromeStateData.h:816
const bool & active() const
Definition: aerodromeStateData.h:701
unsigned char myTaxiwayStopBarLight
Definition: aerodromeStateData.h:351
unsigned char apronLight() const
Definition: aerodromeStateData.h:704
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:813
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:677
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:720
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:696
bool undercarriageInspectionSystem() const
Definition: aerodromeStateData.h:723
DtRunwayStateData & runway(const DtUUID &u)
Definition: aerodromeStateData.h:610
void setClearanceBarLight(unsigned char c)
Definition: aerodromeStateData.h:711
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:722
unsigned char myApronLight
Definition: aerodromeStateData.h:819
void setApronFloodLight(unsigned char c)
Definition: aerodromeStateData.h:708
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:678
DtRunwayStateData & addRunway()
Definition: aerodromeStateData.h:588
bool myIsLocal
Definition: aerodromeStateData.h:811
void setValue(const DtString &s, unsigned char v)
Definition: aerodromeStateData.h:725
bool myDamaged
Definition: aerodromeStateData.h:491
DtRunwayLightStateData(const DtRunwayLightStateData &orig)
Definition: aerodromeStateData.h:39
const DtRunwayStateData & runway(const DtUUID &u) const
Definition: aerodromeStateData.h:637
const DtEntityIdentifier & entityIdentifier() const
Definition: aerodromeStateData.h:689
unsigned char myTaxiwayGuardLight
Definition: aerodromeStateData.h:825
void setValue(const DtString &value, unsigned char v)
Definition: aerodromeStateData.h:442
const std::map< DtUUID, DtRunwayStateData > & runways() const
Definition: aerodromeStateData.h:664
unsigned char condition() const
Definition: aerodromeStateData.h:472
void setGuardLight(unsigned char c)
Definition: aerodromeStateData.h:476
unsigned char taxiwayEdgeLight() const
Definition: aerodromeStateData.h:716
DtString myGlobalId
Definition: aerodromeStateData.h:809
std::vector< DtRunwayLightStateData > & runwayLightState()
Definition: aerodromeStateData.h:478
unsigned char clearanceBarLight() const
Definition: aerodromeStateData.h:710
unsigned char myVGSILight
Definition: aerodromeStateData.h:347
int forceType() const
Definition: aerodromeStateData.h:680
DtAerodromeStateData & operator=(const DtAerodromeStateData &orig)
Definition: aerodromeStateData.h:538
void setCondition(unsigned char c)
Definition: aerodromeStateData.h:473
DtRunwayStateData & runway(const std::string &u)
Definition: aerodromeStateData.h:623
unsigned char myTaxiwayIdentifierMarkerBoardLight
Definition: aerodromeStateData.h:826
unsigned char distanceToGoLight() const
Definition: aerodromeStateData.h:133
unsigned char taxiwayCentreLight() const
Definition: aerodromeStateData.h:713
unsigned char myApronFloodLight
Definition: aerodromeStateData.h:820
unsigned char myEndIndicatorLight
Definition: aerodromeStateData.h:345
bool operator==(const DtAerodromeStateData &rhs) const
Definition: aerodromeStateData.h:562
bool myCheckForNameReservation
Definition: aerodromeStateData.h:812
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:823
unsigned char myUndercarriageInspectionSystem
Definition: aerodromeStateData.h:827
void setDistanceToGoLight(unsigned char c)
Definition: aerodromeStateData.h:134
DtString myAirportCode
Definition: aerodromeStateData.h:808
unsigned char myTaxiwayEdgeLight
Definition: aerodromeStateData.h:824
unsigned char VGSILight() const
Definition: aerodromeStateData.h:106
bool active() const
Definition: aerodromeStateData.h:463
void setTaxiwayCentreLight(unsigned char c)
Definition: aerodromeStateData.h:714
void setCheckForNameReservation(bool b)
Definition: aerodromeStateData.h:699
DtObjectType myObjectType
Definition: aerodromeStateData.h:817
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:683
std::map< DtUUID, DtRunwayStateData > & runways()
Definition: aerodromeStateData.h:669
unsigned char apronFloodLight() const
Definition: aerodromeStateData.h:707
unsigned char myEndLight
Definition: aerodromeStateData.h:342
bool removeRunway(const DtUUID &u)
Definition: aerodromeStateData.h:597
void setAppearance(unsigned int c)
Definition: aerodromeStateData.h:693
std::map< DtUUID, DtRunwayStateData > myRunways
Definition: aerodromeStateData.h:829
void setObjectType(const DtObjectType &o)
Definition: aerodromeStateData.h:687
void setTaxiwayEdgeLight(unsigned char c)
Definition: aerodromeStateData.h:717
const DtRunwayStateData & runway(const std::string &u) const
Definition: aerodromeStateData.h:650
DtAerodromeStateData(const DtAerodromeStateData &orig)
Definition: aerodromeStateData.h:516
#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:675
DtString name() const
Definition: aerodromeStateData.h:487
unsigned char myObstructionLight
Definition: aerodromeStateData.h:822
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:674
const DtObjectType & objectType() const
Definition: aerodromeStateData.h:686
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:719
void setDisplacedThresholdLight(unsigned char c)
Definition: aerodromeStateData.h:128
bool operator!=(const DtAerodromeStateData &rhs) const
Definition: aerodromeStateData.h:583
int myForceType
Definition: aerodromeStateData.h:814
void setApronLight(unsigned char c)
Definition: aerodromeStateData.h:705
void setTaxiwayLeadOnLight(unsigned char c)
Definition: aerodromeStateData.h:119
const bool & checkForNameReservation() const
Definition: aerodromeStateData.h:698
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