#ifdef FGFS
# include <simgear/compiler.h>
-# ifdef FG_HAVE_STD_INCLUDES
+# ifdef SG_HAVE_STD_INCLUDES
# include <vector>
# else
# include <vector.h>
#include "FGModel.h"
#include "FGConfigFile.h"
+#include "FGMatrix33.h"
+#include "FGColumnVector3.h"
+#include "FGColumnVector4.h"
#define ID_INERTIAL "$Id$"
public:
FGInertial(FGFDMExec*);
- ~FGInertial();
+ ~FGInertial(void);
bool Run(void);
+ FGColumnVector3& GetForces(void) {return vForces;}
+ FGColumnVector3& GetGravity(void) {return vGravity;}
+ double GetForces(int n) const {return vForces(n);}
bool LoadInertial(FGConfigFile* AC_cfg);
+ double SLgravity(void) const {return gAccelReference;}
+ double gravity(void) const {return gAccel;}
+ double omega(void) const {return RotationRate;}
+ double RefRadius(void) const {return RadiusReference;}
+
+ void bind(void);
+ void unbind(void);
+
+
+private:
+ FGColumnVector3 vOmegaLocal;
+ FGColumnVector3 vForces;
+ FGColumnVector3 vRadius;
+ FGColumnVector3 vGravity;
+ double gAccel;
+ double gAccelReference;
+ double RadiusReference;
+ double RotationRate;
+ double GM;
+ void Debug(int from);
};
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%