#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 "FGLGear.h"
+#include "FGInertial.h"
+#include "FGMatrix33.h"
#define ID_GROUNDREACTIONS "$Id$"
CLASS DECLARATION
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
-class FGGroundReactions : public FGModel {
-
+class FGGroundReactions : public FGModel
+{
public:
FGGroundReactions(FGFDMExec*);
- ~FGGroundReactions();
+ ~FGGroundReactions(void);
bool Run(void);
- bool LoadGroundReactions(FGConfigFile* AC_cfg);
-
+ bool Load(FGConfigFile* AC_cfg);
+ FGColumnVector3& GetForces(void) {return vForces;}
+ FGColumnVector3& GetMoments(void) {return vMoments;}
+ string GetGroundReactionStrings(void);
+ string GetGroundReactionValues(void);
+
+ inline int GetNumGearUnits(void) { return lGear.size(); }
+ /** Gets a gear instance
+ @param gear index of gear instance
+ @return a pointer to the FGLGear instance of the gear unit requested */
+
+
+ inline FGLGear* GetGearUnit(int gear) { return &(lGear[gear]); }
+
private:
- void Debug(void);
+ vector <FGLGear> lGear;
+ FGColumnVector3 vForces;
+ FGColumnVector3 vMoments;
+ FGColumnVector3 vMaxStaticGrip;
+ FGColumnVector3 vMaxMomentResist;
+
+ void Debug(int from);
};
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%