]> git.mxchange.org Git - flightgear.git/blobdiff - src/Main/bfi.hxx
Properties:
[flightgear.git] / src / Main / bfi.hxx
index 8828f7c855a278ee993c7af5bf1812fc1635b9de..75f617485d815dd33d5c7490bcf36b8ab0c64749 100644 (file)
@@ -23,6 +23,8 @@
 #include <time.h>
 #include <string>
 
+#include <simgear/compiler.h>
+
 FG_USING_NAMESPACE(std);
 
 
@@ -44,16 +46,24 @@ 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 const string &getGMTString ();
   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 +73,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 +81,8 @@ public:
 
 
                                // Attitude
-  static double getHeading ();
+  static double getHeading ();   // true heading
+  static double getHeadingMag (); // exact magnetic heading
   static double getPitch ();
   static double getRoll ();
 
@@ -78,6 +90,10 @@ public:
   static void setPitch (double pitch);
   static void setRoll (double roll);
 
+                               // Engine
+  static double getRPM ();
+  static void setRPM ( double rpm );
+  static double getEGT ();
 
                                // Velocities
   static double getAirspeed ();
@@ -94,20 +110,30 @@ public:
 
                                // Controls
   static double getThrottle ();
+  static double getMixture ();
+  static double getPropAdvance ();
   static double getFlaps ();
   static double getAileron ();
   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 setMixture (double mixture);
+  static void setPropAdvance (double pitch);
   static void setFlaps (double flaps);
   static void setAileron (double aileron);
   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 +141,53 @@ 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 getNAV1TO ();
+  static bool getNAV1FROM ();
+  static bool getNAV1InRange ();
+  static bool getNAV1DMEInRange ();
+
+  static double getNAV2Freq ();
+  static double getNAV2AltFreq ();
+  static double getNAV2Radial ();
+  static double getNAV2SelRadial ();
+  static double getNAV2DistDME ();
+  static bool getNAV2TO ();
+  static bool getNAV2FROM ();
+  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 +203,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: