FORWARD DECLARATIONS
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
+namespace JSBSim {
+
class FGAircraft;
class FGPosition;
class FGRotation;
class FGMassBalance;
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-COMMENTS, REFERENCES, and NOTES [use "class documentation" below for API docs]
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
CLASS DOCUMENTATION
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
enum BrakeGroup {bgNone=0, bgLeft, bgRight, bgCenter, bgNose, bgTail };
/// Steering group membership enumerators
enum SteerType {stSteer, stFixed, stCaster};
+ /// Report type enumerators
+ enum ReportType {erNone=0, erTakeoff, erLand};
/** Constructor
@param Executive a pointer to the parent executive object
@param File a pointer to the config file instance */
/// Gets the gear compression force in pounds
inline double GetCompForce(void) {return Force()(3); }
inline double GetBrakeFCoeff(void) {return BrakeFCoeff;}
+
+ /// Gets the current normalized tire pressure
+ inline double GetTirePressure(void) { return TirePressureNorm; }
+ /// Sets the new normalized tire pressure
+ inline void SetTirePressure(double p) { TirePressureNorm = p; }
/// Sets the brake value in percent (0 - 100)
inline void SetBrake(double bp) {brakePct = bp;}
inline int GetBrakeGroup(void) { return (int)eBrakeGrp; }
inline int GetSteerType(void) { return (int)eSteerType; }
- inline bool GetRetractable(void) { return isRetractable; }
- inline bool GetGearUnitUp(void) { return GearUp; }
- inline bool GetGearUnitDown(void) { return GearDown; }
+ inline bool GetRetractable(void) { return isRetractable; }
+ inline bool GetGearUnitUp(void) { return GearUp; }
+ inline bool GetGearUnitDown(void) { return GearDown; }
+ inline double GetWheelSideForce(void) { return SideForce; }
+ inline double GetWheelRollForce(void) { return RollingForce; }
+ inline double GetBodyXForce(void) { return vLocalForce(eX); }
+ inline double GetBodyYForce(void) { return vLocalForce(eY); }
+ inline double GetWheelSlipAngle(void) { return WheelSlip; }
+ double GetWheelVel(int axis) { return vWhlVelVec(axis);}
private:
FGColumnVector3 vXYZ;
double maxCompLen;
double SinkRate;
double GroundSpeed;
- double DistanceTraveled;
+ double TakeoffDistanceTraveled;
+ double TakeoffDistanceTraveled50ft;
+ double LandingDistanceTraveled;
double MaximumStrutForce;
double MaximumStrutTravel;
+ double SideWhlVel, RollingWhlVel;
+ double RollingForce, SideForce, FCoeff;
+ double WheelSlip;
+ double lastWheelSlip;
+ double TirePressureNorm;
bool WOW;
bool lastWOW;
bool FirstContact;
- bool Reported;
+ bool StartedGroundRun;
+ bool LandingReported;
+ bool TakeoffReported;
bool ReportEnable;
bool isRetractable;
bool GearUp, GearDown;
+ bool Servicable;
string name;
string sSteerType;
string sBrakeGroup;
+ string sRetractable;
BrakeGroup eBrakeGrp;
SteerType eSteerType;
FGFCS* FCS;
FGMassBalance* MassBalance;
- void Report(void);
- void Debug(void);
+ void Report(ReportType rt);
+ void Debug(int from);
};
-
+}
#include "FGAircraft.h"
#include "FGPosition.h"
#include "FGRotation.h"