X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FFDM%2FJSBSim%2FFGState.h;h=e494d280986cfd256727ee30ef4d0ca508e21569;hb=bb785797b9dd171f21c2577e0ba1a9c84e107583;hp=196b4035b08cb838b0289c1cfc7098ed615e48a2;hpb=74fbaa8f5e085d1c7a70e9ecd9e0494b75b5908c;p=flightgear.git diff --git a/src/FDM/JSBSim/FGState.h b/src/FDM/JSBSim/FGState.h index 196b4035b..e494d2809 100644 --- a/src/FDM/JSBSim/FGState.h +++ b/src/FDM/JSBSim/FGState.h @@ -46,7 +46,7 @@ INCLUDES #ifdef FGFS # include -# ifdef FG_HAVE_STD_INCLUDES +# ifdef SG_HAVE_STD_INCLUDES # include # else # include @@ -62,11 +62,30 @@ INCLUDES #include "FGMatrix.h" /*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -DEFINES +DEFINITIONS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/ #define ID_STATE "$Id$" +/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +FORWARD DECLARATIONS +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/ + +class FGAircraft; +class FGTranslation; +class FGRotation; +class FGAtmosphere; +class FGOutput; +class FGPosition; + +/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +COMMENTS, REFERENCES, and NOTES [use "class documentation" below for API docs] +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/ + +/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +CLASS DOCUMENTATION +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/ + /*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% CLASS DECLARATION %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/ @@ -78,6 +97,11 @@ public: FGState(FGFDMExec*); ~FGState(); + enum {ePhi=1, eTht, ePsi}; + enum {eP=1, eQ, eR}; + enum {eU=1, eV, eW}; + enum {eDrag=1, eSide, eLift}; + bool Reset(string, string, string); void Initialize(float, float, float, float, float, float, float, float, float); void Initialize(FGInitialCondition *FGIC); @@ -115,7 +139,9 @@ public: FGColumnVector CalcEuler(void); FGMatrix GetTs2b(float alpha, float beta); FGMatrix GetTl2b(void) { return mTl2b; } + float GetTl2b(int i, int j) { return mTl2b(i,j);} FGMatrix GetTb2l(void) { return mTb2l; } + float GetTb2l(int i, int j) { return mTb2l(i,j);} typedef map ParamMap; ParamMap paramdef; @@ -132,16 +158,36 @@ private: FGColumnVector vQtrn; FGColumnVector vlastQdot; + FGAircraft* Aircraft; + FGPosition* Position; + FGTranslation* Translation; + FGRotation* Rotation; + FGOutput* Output; + FGAtmosphere* Atmosphere; + FGFCS* FCS; + FGAerodynamics* Aerodynamics; + typedef map CoeffMap; CoeffMap coeffdef; void Debug(void); int ActiveEngine; -protected: - enum {ePhi=1, eTht, ePsi}; - enum {eP=1, eQ, eR}; + FGColumnVector vQdot; + FGColumnVector vTmp; + FGColumnVector vEuler; }; //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +#include "FGFDMExec.h" +#include "FGAtmosphere.h" +#include "FGFCS.h" +#include "FGTranslation.h" +#include "FGRotation.h" +#include "FGPosition.h" +#include "FGAerodynamics.h" +#include "FGOutput.h" +#include "FGAircraft.h" + #endif