#include <Traffic/SchedFlight.hxx>
#include <Traffic/Schedule.hxx>
+#include <ATC/trafficcontrol.hxx>
#include <string>
-SG_USING_STD(string);
+using std::string;
class PerformanceData;
void getGroundElev(double dt); //TODO these 3 really need to be public?
void doGroundAltitude();
- void loadNextLeg ();
+ bool loadNextLeg ();
void setAcType(const string& ac) { acType = ac; };
void setCompany(const string& comp) { company = comp;};
void announcePositionToController(); //TODO have to be public?
void processATC(FGATCInstruction instruction);
+ FGAISchedule * getTrafficRef() { return trafficRef; };
virtual const char* getTypeString(void) const { return "aircraft"; }
// included as performance data needs them, who else?
+ inline PerformanceData* getPerformance() { return _performance; };
inline bool onGround() const { return no_roll; };
inline double getSpeed() const { return speed; };
inline double getRoll() const { return roll; };
inline double getVerticalSpeed() const { return vs; };
inline double altitudeAGL() const { return props->getFloatValue("position/altitude-agl-ft");};
inline double airspeed() const { return props->getFloatValue("velocities/airspeed-kt");};
+ string atGate();
protected:
void Run(double dt);
void updatePitchAngleTarget();
void updateActualState();
void handleATCRequests();
+ void checkVisibility();
double sign(double x);
bool _getGearDown() const;
bool reachedWaypoint;
+ time_t timeElapsed;
PerformanceData* _performance; // the performance data for this aircraft
};