]> git.mxchange.org Git - flightgear.git/blobdiff - src/FDM/JSBSim/FGAuxiliary.h
Latest JSBSim changes, including some gear tweaking from Jon and some
[flightgear.git] / src / FDM / JSBSim / FGAuxiliary.h
index 6d676ad58c7a6d632ab9aa5f57a4bc7311b572c8..e0b8a575a0408e1430eda51fad4185a0fb71c4ec 100644 (file)
@@ -40,13 +40,15 @@ INCLUDES
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
 
 #include "FGModel.h"
-#include "FGMatrix.h"
+#include "FGMatrix33.h"
+#include "FGColumnVector3.h"
+#include "FGColumnVector4.h"
 
 /*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 DEFINITIONS
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
 
-#define ID_AUXILIARY "$Header"
+#define ID_AUXILIARY "$Id$"
 
 /*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 FORWARD DECLARATIONS
@@ -76,31 +78,33 @@ public:
       @param Executive a pointer to the parent executive object */
   FGAuxiliary(FGFDMExec*);
   /// Destructor
-  ~FGAuxiliary(void);
+  ~FGAuxiliary();
 
   /** Runs the Auxiliary routines; called by the Executive
       @return false if no error */
   bool Run(void);
 
   // Use FGInitialCondition to set these speeds
-  inline float GetVcalibratedFPS(void) { return vcas; }
-  inline float GetVcalibratedKTS(void) { return vcas*FPSTOKTS; }
-  inline float GetVequivalentFPS(void) { return veas; }
-  inline float GetVequivalentKTS(void) { return veas*FPSTOKTS; }
+  inline double GetVcalibratedFPS(void) { return vcas; }
+  inline double GetVcalibratedKTS(void) { return vcas*fpstokts; }
+  inline double GetVequivalentFPS(void) { return veas; }
+  inline double GetVequivalentKTS(void) { return veas*fpstokts; }
   
-  inline FGColumnVector GetPilotAccel(void) { return vPilotAccel; }
-  inline FGColumnVector GetNpilot(void) { return vPilotAccel*INVGRAVITY; }
-  
-  inline float GetEarthPositionAngle(void) { return earthPosAngle; }
+  inline FGColumnVector3& GetPilotAccel(void) { return vPilotAccel; }
+  inline double GetPilotAccel(int idx) { return vPilotAccel(idx); }
+  FGColumnVector3 GetNpilot(void);
+  double GetNpilot(int idx);
+
+  inline double GetEarthPositionAngle(void) { return earthPosAngle; }
   
+  double GetHeadWind(void);
+  double GetCrossWind(void);
  
-protected:
-
 private:
-  float vcas;
-  float veas;
-  float mach;
-  float qbar,rhosl,rho,p,psl,pt;
+  double vcas;
+  double veas;
+  double mach;
+  double qbar,rhosl,rho,p,psl,pt;
 
   // Don't add a getter for pt!
   // pt above is freestream total pressure for subsonic only
@@ -109,12 +113,15 @@ private:
   // (apeden@earthlink.net) or you can add it your self using the
   // isentropic flow equations
 
-  FGColumnVector vPilotAccel;
+  FGColumnVector3 vPilotAccel;
+  FGColumnVector3 vToEyePt;
   
-  float earthPosAngle;
+  double earthPosAngle;
 
   void GetState(void);
+  void Debug(int from);
 };
 
 //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 #endif
+