]> git.mxchange.org Git - flightgear.git/blobdiff - src/Main/bfi.hxx
Added code to put aircraft at the end of the runway closest to the desired
[flightgear.git] / src / Main / bfi.hxx
index 8828f7c855a278ee993c7af5bf1812fc1635b9de..aa249200878e16ca0bcbc45b1342d0d5b72a43ee 100644 (file)
@@ -23,6 +23,8 @@
 #include <time.h>
 #include <string>
 
+#include <simgear/compiler.h>
+
 FG_USING_NAMESPACE(std);
 
 
@@ -44,16 +46,23 @@ class FGBFI
 {
 public:
 
+                               // Initialize before first use.
+  static void init ();
+
                                // Reinit if necessary.
   static void update ();
 
                                // Simulation
   static int getFlightModel ();
+  static const string getAircraft ();
+  static const string getAircraftDir ();
   static time_t getTimeGMT ();
   static bool getHUDVisible ();
   static bool getPanelVisible ();
 
   static void setFlightModel (int flightModel);
+  static void setAircraft (const string &aircraft);
+  static void setAircraftDir (const string &aircraftDir);
   static void setTimeGMT (time_t time);
   static void setHUDVisible (bool hudVisible);
   static void setPanelVisible (bool panelVisible);
@@ -63,6 +72,7 @@ public:
   static double getLatitude ();
   static double getLongitude ();
   static double getAltitude ();
+  static double getAGL ();
 
   static void setLatitude (double latitude);
   static void setLongitude (double longitude);
@@ -70,7 +80,8 @@ public:
 
 
                                // Attitude
-  static double getHeading ();
+  static double getHeading ();   // true heading
+  static double getHeadingMag (); // exact magnetic heading
   static double getPitch ();
   static double getRoll ();
 
@@ -99,7 +110,10 @@ public:
   static double getRudder ();
   static double getElevator ();
   static double getElevatorTrim ();
-  static double getBrake ();
+  static double getBrakes ();
+  static double getLeftBrake ();
+  static double getRightBrake ();
+  static double getCenterBrake ();
 
   static void setThrottle (double throttle);
   static void setFlaps (double flaps);
@@ -107,7 +121,10 @@ public:
   static void setRudder (double rudder);
   static void setElevator (double elevator);
   static void setElevatorTrim (double trim);
-  static void setBrake (double brake);
+  static void setBrakes (double brake);
+  static void setLeftBrake (double brake);
+  static void setRightBrake (double brake);
+  static void setCenterBrake (double brake);
 
 
                                // Autopilot
@@ -115,12 +132,49 @@ public:
   static double getAPAltitude ();
   static bool getAPHeadingLock ();
   static double getAPHeading ();
+  static double getAPHeadingMag ();
 
   static void setAPAltitudeLock (bool lock);
   static void setAPAltitude (double altitude);
   static void setAPHeadingLock (bool lock);
   static void setAPHeading (double heading);
-
+  static void setAPHeadingMag (double heading);
+
+  static bool getAPNAV1Lock ();
+  static void setAPNAV1Lock (bool lock);
+
+                               // Radio Navigation
+  static double getNAV1Freq ();
+  static double getNAV1AltFreq ();
+  static double getNAV1Radial ();
+  static double getNAV1SelRadial ();
+  static double getNAV1DistDME ();
+  static bool getNAV1InRange ();
+  static bool getNAV1DMEInRange ();
+
+  static double getNAV2Freq ();
+  static double getNAV2AltFreq ();
+  static double getNAV2Radial ();
+  static double getNAV2SelRadial ();
+  static double getNAV2DistDME ();
+  static bool getNAV2InRange ();
+  static bool getNAV2DMEInRange ();
+
+  static double getADFFreq ();
+  static double getADFAltFreq ();
+  static double getADFRotation ();
+
+  static void setNAV1Freq (double freq);
+  static void setNAV1AltFreq (double freq);
+  static void setNAV1SelRadial (double radial);
+
+  static void setNAV2Freq (double freq);
+  static void setNAV2AltFreq (double freq);
+  static void setNAV2SelRadial (double radial);
+
+  static void setADFFreq (double freq);
+  static void setADFAltFreq (double freq);
+  static void setADFRotation (double rot);
 
                                // GPS
   static const string getTargetAirport ();
@@ -136,8 +190,17 @@ public:
 
                                // Weather
   static double getVisibility ();
+  static bool getClouds ();
+  static double getCloudsASL ();
 
   static void setVisibility (double visiblity);
+  static void setClouds (bool clouds);
+  static void setCloudsASL (double cloudsASL);
+
+
+                                // Time (this varies with time) huh, huh
+  static double getMagVar (); 
+  static double getMagDip (); 
 
 
 private: