X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FAIModel%2FAIAircraft.hxx;h=d8cbe9d604498e18dabf5f8b24a31878dedef7bc;hb=37591d0ac9c316f107a3c38043edd3a7f89b4892;hp=3921bacc6439d2e92e6a48a0758f8a6a0ae7e378;hpb=f84d9d475752879b113e373d640f18ee6267c276;p=flightgear.git diff --git a/src/AIModel/AIAircraft.hxx b/src/AIModel/AIAircraft.hxx index 3921bacc6..d8cbe9d60 100644 --- a/src/AIModel/AIAircraft.hxx +++ b/src/AIModel/AIAircraft.hxx @@ -77,6 +77,9 @@ public: bool getTaxiClearanceRequest() { return needsTaxiClearance; }; FGAISchedule * getTrafficRef() { return trafficRef; }; void setTrafficRef(FGAISchedule *ref) { trafficRef = ref; }; + void scheduleForATCTowerDepartureControl(); + + inline bool isScheduledForTakeoff() { return scheduledForTakeoff; }; virtual const char* getTypeString(void) const { return "aircraft"; } @@ -104,7 +107,9 @@ protected: private: FGAISchedule *trafficRef; - FGATCController *controller, *prevController; + FGATCController *controller, + *prevController, + *towerController; // Only needed to make a pre-announcement bool hdg_lock; bool alt_lock; @@ -147,6 +152,7 @@ private: void checkVisibility(); inline bool isStationary() { return ((fabs(speed)<=0.0001)&&(fabs(tgt_speed)<=0.0001));} inline bool needGroundElevation() { if (!isStationary()) _needsGroundElevation=true;return _needsGroundElevation;} + double sign(double x); @@ -167,6 +173,7 @@ private: bool reachedWaypoint; bool needsTaxiClearance; bool _needsGroundElevation; + bool scheduledForTakeoff; time_t timeElapsed; PerformanceData* _performance; // the performance data for this aircraft