9 #include <vlpi/entityIdentifier.h>
10 #include <vlpi/entityType.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)
567 return ((myUUID == rhs.
myUUID) &&
589 return !(*
this == rhs);
596 myRunways[sd.
uuid()] = sd;
598 return myRunways[sd.
uuid()];
603 std::map<DtUUID, DtRunwayStateData>::iterator iter = myRunways.find(u);
605 if (iter != myRunways.end())
607 myRunways.erase(iter);
616 std::map<DtUUID, DtRunwayStateData>::iterator iter = myRunways.find(u);
618 if (iter != myRunways.end())
624 return theDefaultRunwayStateData;
629 for (
auto& runway : myRunways)
631 if ((runway.second.name() == u) || (runway.second.runwayLightState()[0].runwayName() == u) || (runway.second.runwayLightState()[1].runwayName() == u))
633 return runway.second;
638 return theDefaultRunwayStateData;
643 std::map<DtUUID, DtRunwayStateData>::const_iterator iter = myRunways.find(u);
645 if (iter != myRunways.end())
651 return theDefaultRunwayStateData;
656 for (
auto& runway : myRunways)
658 if ((runway.second.name() == u) || (runway.second.runwayLightState()[0].runwayName() == u) || (runway.second.runwayLightState()[1].runwayName() == u))
660 return runway.second;
665 return theDefaultRunwayStateData;
668 const std::map<DtUUID, DtRunwayStateData>&
runways()
const
673 std::map<DtUUID, DtRunwayStateData>&
runways()
690 const DtEntityType&
objectType()
const {
return myObjectType; }
699 const bool&
isLocal()
const {
return myIsLocal; }
705 const bool&
active()
const {
return myActive; }
730 unsigned long long userData()
const {
return myUserData; };
734 if ((s ==
"All") || (s ==
"ApronLight"))
739 if ((s ==
"All") || (s ==
"ApronFloodLight"))
741 setApronFloodLight(v);
744 if ((s ==
"All") || (s ==
"ClearanceBarLight"))
746 setClearanceBarLight(v);
749 if ((s ==
"All") || (s ==
"TaxiwayCentreLight"))
751 setTaxiwayCentreLight(v);
754 if ((s ==
"All") || (s ==
"TaxiwayEdgeLight"))
756 setTaxiwayEdgeLight(v);
759 if ((s ==
"All") || (s ==
"TaxiwayIdentifierMarkerBoardLight"))
761 setTaxiwayIdentifierMarkerBoardLight(v);
764 if (s ==
"Undercarriage")
766 setUndercarriageInspectionSystem(v == 1);
772 if (s ==
"ApronLight")
776 else if (s ==
"ApronFloodLight")
778 return apronFloodLight();
780 else if (s ==
"ClearanceBarLight")
782 return clearanceBarLight();
784 else if (s ==
"TaxiwayCentreLight")
786 return taxiwayCentreLight();
788 else if (s ==
"TaxiwayEdgeLight")
790 return taxiwayEdgeLight();
792 else if (s ==
"TaxiwayIdentifierMarkerBoardLight")
794 return taxiwayIdentifierMarkerBoardLight();
796 else if (s ==
"Undercarriage")
798 return undercarriageInspectionSystem();
808 std::vector<DtString> runwaysArchived()
const;
809 void restoreRunwaysFromArchive(
const std::vector<DtString>&);
812 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:688
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:828
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:694
unsigned char runwayExitLight() const
Definition: aerodromeStateData.h:115
void setThresholdLightingLight(unsigned char c)
Definition: aerodromeStateData.h:101
void setForceType(int c)
Definition: aerodromeStateData.h:685
unsigned char value(const DtString &s) const
Definition: aerodromeStateData.h:770
const bool & isLocal() const
Definition: aerodromeStateData.h:699
unsigned char taxiwayStopBarLight() const
Definition: aerodromeStateData.h:121
unsigned int appearance() const
Definition: aerodromeStateData.h:696
void setActive(bool b)
Definition: aerodromeStateData.h:706
DtUUID myUUID
Definition: aerodromeStateData.h:817
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:822
unsigned char myEdgeLight
Definition: aerodromeStateData.h:340
DtEntityIdentifier myEntityIdentifier
Definition: aerodromeStateData.h:823
const bool & active() const
Definition: aerodromeStateData.h:705
unsigned char myTaxiwayStopBarLight
Definition: aerodromeStateData.h:351
unsigned char apronLight() const
Definition: aerodromeStateData.h:708
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
unsigned long long userData() const
Definition: aerodromeStateData.h:730
bool myActive
Definition: aerodromeStateData.h:820
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:681
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:724
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:700
bool undercarriageInspectionSystem() const
Definition: aerodromeStateData.h:727
DtRunwayStateData & runway(const DtUUID &u)
Definition: aerodromeStateData.h:614
void setClearanceBarLight(unsigned char c)
Definition: aerodromeStateData.h:715
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:726
unsigned char myApronLight
Definition: aerodromeStateData.h:826
void setApronFloodLight(unsigned char c)
Definition: aerodromeStateData.h:712
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:682
DtRunwayStateData & addRunway()
Definition: aerodromeStateData.h:592
bool myIsLocal
Definition: aerodromeStateData.h:818
void setValue(const DtString &s, unsigned char v)
Definition: aerodromeStateData.h:732
bool myDamaged
Definition: aerodromeStateData.h:491
DtRunwayLightStateData(const DtRunwayLightStateData &orig)
Definition: aerodromeStateData.h:39
const DtRunwayStateData & runway(const DtUUID &u) const
Definition: aerodromeStateData.h:641
const DtEntityIdentifier & entityIdentifier() const
Definition: aerodromeStateData.h:693
unsigned char myTaxiwayGuardLight
Definition: aerodromeStateData.h:832
void setValue(const DtString &value, unsigned char v)
Definition: aerodromeStateData.h:442
const std::map< DtUUID, DtRunwayStateData > & runways() const
Definition: aerodromeStateData.h:668
unsigned char condition() const
Definition: aerodromeStateData.h:472
void setGuardLight(unsigned char c)
Definition: aerodromeStateData.h:476
unsigned char taxiwayEdgeLight() const
Definition: aerodromeStateData.h:720
DtString myGlobalId
Definition: aerodromeStateData.h:816
std::vector< DtRunwayLightStateData > & runwayLightState()
Definition: aerodromeStateData.h:478
unsigned char clearanceBarLight() const
Definition: aerodromeStateData.h:714
unsigned char myVGSILight
Definition: aerodromeStateData.h:347
int forceType() const
Definition: aerodromeStateData.h:684
DtAerodromeStateData & operator=(const DtAerodromeStateData &orig)
Definition: aerodromeStateData.h:540
void setCondition(unsigned char c)
Definition: aerodromeStateData.h:473
DtRunwayStateData & runway(const std::string &u)
Definition: aerodromeStateData.h:627
unsigned char myTaxiwayIdentifierMarkerBoardLight
Definition: aerodromeStateData.h:833
unsigned char distanceToGoLight() const
Definition: aerodromeStateData.h:133
unsigned char taxiwayCentreLight() const
Definition: aerodromeStateData.h:717
void setUserData(unsigned long long d)
Definition: aerodromeStateData.h:729
unsigned char myApronFloodLight
Definition: aerodromeStateData.h:827
unsigned char myEndIndicatorLight
Definition: aerodromeStateData.h:345
const DtEntityType & objectType() const
Definition: aerodromeStateData.h:690
bool operator==(const DtAerodromeStateData &rhs) const
Definition: aerodromeStateData.h:565
bool myCheckForNameReservation
Definition: aerodromeStateData.h:819
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:830
unsigned char myUndercarriageInspectionSystem
Definition: aerodromeStateData.h:834
void setDistanceToGoLight(unsigned char c)
Definition: aerodromeStateData.h:134
DtString myAirportCode
Definition: aerodromeStateData.h:815
unsigned char myTaxiwayEdgeLight
Definition: aerodromeStateData.h:831
unsigned char VGSILight() const
Definition: aerodromeStateData.h:106
unsigned long long myUserData
Definition: aerodromeStateData.h:835
bool active() const
Definition: aerodromeStateData.h:463
void setTaxiwayCentreLight(unsigned char c)
Definition: aerodromeStateData.h:718
void setCheckForNameReservation(bool b)
Definition: aerodromeStateData.h:703
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:687
std::map< DtUUID, DtRunwayStateData > & runways()
Definition: aerodromeStateData.h:673
unsigned char apronFloodLight() const
Definition: aerodromeStateData.h:711
unsigned char myEndLight
Definition: aerodromeStateData.h:342
bool removeRunway(const DtUUID &u)
Definition: aerodromeStateData.h:601
void setAppearance(unsigned int c)
Definition: aerodromeStateData.h:697
std::map< DtUUID, DtRunwayStateData > myRunways
Definition: aerodromeStateData.h:837
void setTaxiwayEdgeLight(unsigned char c)
Definition: aerodromeStateData.h:721
const DtRunwayStateData & runway(const std::string &u) const
Definition: aerodromeStateData.h:654
DtAerodromeStateData(const DtAerodromeStateData &orig)
Definition: aerodromeStateData.h:517
#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:679
DtString name() const
Definition: aerodromeStateData.h:487
unsigned char myObstructionLight
Definition: aerodromeStateData.h:829
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:678
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
void setObjectType(const DtEntityType &o)
Definition: aerodromeStateData.h:691
unsigned char taxiwayIdentifierMarkerBoardLight() const
Definition: aerodromeStateData.h:723
void setDisplacedThresholdLight(unsigned char c)
Definition: aerodromeStateData.h:128
bool operator!=(const DtAerodromeStateData &rhs) const
Definition: aerodromeStateData.h:587
int myForceType
Definition: aerodromeStateData.h:821
void setApronLight(unsigned char c)
Definition: aerodromeStateData.h:709
void setTaxiwayLeadOnLight(unsigned char c)
Definition: aerodromeStateData.h:119
DtEntityType myObjectType
Definition: aerodromeStateData.h:824
const bool & checkForNameReservation() const
Definition: aerodromeStateData.h:702
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