X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FFDM%2FJSBSim%2FJSBSim.hxx;h=a0294d5b5d2ff071c9db6f6d4741cf2f28b68b54;hb=b09a2347a8fd699d222e63c2df525d1d10753d6b;hp=ca52f9223f3356ce852e463be64895a4c20918bd;hpb=4a63946e94e1a1d6636c7076729af890633af2b0;p=flightgear.git diff --git a/src/FDM/JSBSim/JSBSim.hxx b/src/FDM/JSBSim/JSBSim.hxx index ca52f9223..a0294d5b5 100644 --- a/src/FDM/JSBSim/JSBSim.hxx +++ b/src/FDM/JSBSim/JSBSim.hxx @@ -38,7 +38,6 @@ INCLUDES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/ #undef MAX_ENGINES -#include "math/FGColumnVector3.h" /*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% DEFINITIONS @@ -59,6 +58,7 @@ FORWARD DECLARATIONS namespace JSBSim { class FGAtmosphere; +class FGWinds; class FGFCS; class FGPropulsion; class FGMassBalance; @@ -69,6 +69,8 @@ class FGPropagate; class FGAuxiliary; class FGOutput; class FGInitialCondition; +class FGLocation; +class FGAccelerations; } // Adding it here will cause a namespace clash in FlightGear -EMH- @@ -209,10 +211,9 @@ public: /** Update the position based on inputs, positions, velocities, etc. @param dt delta time in seconds. */ void update(double dt); + bool ToggleDataLogging(bool state); bool ToggleDataLogging(void); - void do_trim(void); - void update_ic(void); bool get_agl_ft(double t, const double pt[3], double alt_off, double contact[3], double normal[3], double vel[3], @@ -222,16 +223,18 @@ private: JSBSim::FGInitialCondition *fgic; bool needTrim; - JSBSim::FGAtmosphere* Atmosphere; - JSBSim::FGFCS* FCS; - JSBSim::FGPropulsion* Propulsion; - JSBSim::FGMassBalance* MassBalance; - JSBSim::FGAircraft* Aircraft; - JSBSim::FGPropagate* Propagate; - JSBSim::FGAuxiliary* Auxiliary; - JSBSim::FGAerodynamics* Aerodynamics; + JSBSim::FGAtmosphere* Atmosphere; + JSBSim::FGWinds* Winds; + JSBSim::FGFCS* FCS; + JSBSim::FGPropulsion* Propulsion; + JSBSim::FGMassBalance* MassBalance; + JSBSim::FGAircraft* Aircraft; + JSBSim::FGPropagate* Propagate; + JSBSim::FGAuxiliary* Auxiliary; + JSBSim::FGAerodynamics* Aerodynamics; JSBSim::FGGroundReactions* GroundReactions; - JSBSim::FGInertial* Inertial; + JSBSim::FGInertial* Inertial; + JSBSim::FGAccelerations* Accelerations; int runcount; double trim_elev; @@ -270,9 +273,12 @@ private: SGPropertyNode_ptr temperature; SGPropertyNode_ptr pressure; + SGPropertyNode_ptr pressureSL; SGPropertyNode_ptr density; + SGPropertyNode_ptr ground_wind; SGPropertyNode_ptr turbulence_gain; SGPropertyNode_ptr turbulence_rate; + SGPropertyNode_ptr turbulence_model; SGPropertyNode_ptr wind_from_north; SGPropertyNode_ptr wind_from_east; @@ -280,6 +286,8 @@ private: SGPropertyNode_ptr slaved; + static std::map TURBULENCE_TYPE_NAMES; + double last_hook_tip[3]; double last_hook_root[3]; JSBSim::FGColumnVector3 hook_root_struct; @@ -288,6 +296,10 @@ private: bool crashed; + void do_trim(void); + + double getMachFromVcas(double vcas); + bool update_ground_cache(JSBSim::FGLocation cart, double* cart_pos, double dt); void init_gear(void); void update_gear(void);