FlightGear next
|
#include <GroundController.hxx>
Inherits FGATCController.
Public Member Functions | |
FGGroundController (FGAirportDynamics *par) | |
~FGGroundController () | |
void | setVersion (int v) |
int | getVersion () |
bool | exists () |
virtual void | announcePosition (int id, FGAIFlightPlan *intendedRoute, int currentRoute, double lat, double lon, double hdg, double spd, double alt, double radius, int leg, FGAIAircraft *aircraft) |
virtual void | updateAircraftInformation (int id, SGGeod geod, double heading, double speed, double alt, double dt) |
The ground network can deal with the following states: 0 = Normal; no action required 1 = "Acknowledge "Hold position 2 = "Acknowledge "Resume taxi". | |
virtual void | handover (SGSharedPtr< FGTrafficRecord > aiObject, int leg) |
We share the traffic record much like real life. | |
bool | checkForCircularWaits (int id) |
Check whether situations occur where the current aircraft is waiting for itself due to higher order interactions. | |
virtual void | render (bool) |
Draw visible taxi routes. | |
virtual std::string | getName () const |
virtual void | update (double dt) |
void | addVersion (int v) |
![]() | |
FGATCController () | |
virtual | ~FGATCController () |
void | init () |
void | setAirportGroundRadar (SGSharedPtr< AirportGroundRadar > groundRadar) |
bool | checkTransmissionState (int minState, int MaxState, TrafficVectorIterator i, time_t now, AtcMsgId msgId, AtcMsgDir msgDir) |
SGSharedPtr< FGTrafficRecord > | getRecord (int id) const |
bool | hasInstruction (int id) |
FGATCInstruction | getInstruction (int id) |
bool | hasActiveTraffic () |
TrafficVector & | getActiveTraffic () |
double | getDt () |
void | setDt (double dt) |
void | transmit (FGTrafficRecord *rec, FGAirportDynamics *parent, AtcMsgId msgId, AtcMsgDir msgDir, bool audible) |
std::string | getGateName (FGAIAircraft *aircraft) |
Definition at line 40 of file GroundController.hxx.
FGGroundController::FGGroundController | ( | FGAirportDynamics * | par | ) |
Definition at line 71 of file GroundController.cxx.
FGGroundController::~FGGroundController | ( | ) |
Definition at line 85 of file GroundController.cxx.
|
inline |
Definition at line 83 of file GroundController.hxx.
|
virtual |
Implements FGATCController.
Definition at line 99 of file GroundController.cxx.
bool FGGroundController::checkForCircularWaits | ( | int | id | ) |
Check whether situations occur where the current aircraft is waiting for itself due to higher order interactions.
A 'circular' wait is a situation where a waits for b, b waits for c, and c waits for a. Ideally each aircraft only waits for one other aircraft, so by tracing through this list of waiting aircraft, we can check if we'd eventually end back at the current aircraft.
Note that we should consider the situation where we are actually checking aircraft d, which is waiting for aircraft a. d is not part of the loop, but is held back by the looping aircraft. If we don't check for that, this function will get stuck into endless loop.
Definition at line 439 of file GroundController.cxx.
|
inline |
Definition at line 68 of file GroundController.hxx.
|
virtual |
Implements FGATCController.
Definition at line 738 of file GroundController.cxx.
|
inline |
Definition at line 66 of file GroundController.hxx.
|
virtual |
We share the traffic record much like real life.
It gets handed from one controller to the next.
aiObject | |
leg |
Reimplemented from FGATCController.
Definition at line 522 of file GroundController.cxx.
|
virtual |
Draw visible taxi routes.
Implements FGATCController.
Definition at line 548 of file GroundController.cxx.
|
inline |
Definition at line 65 of file GroundController.hxx.
|
virtual |
Implements FGATCController.
Definition at line 742 of file GroundController.cxx.
|
virtual |
The ground network can deal with the following states: 0 = Normal; no action required 1 = "Acknowledge "Hold position 2 = "Acknowledge "Resume taxi".
3 = "Issue TaxiClearance" 4 = Acknowledge Taxi Clearance" 5 = Post acknowlegde taxiclearance: Start taxiing 6 = Report runway 7 = Acknowledge report runway 8 = Switch tower frequency 9 = Acknowledge switch tower frequency
Implements FGATCController.
Definition at line 165 of file GroundController.cxx.