]> git.mxchange.org Git - flightgear.git/blobdiff - src/FDM/JSBSim/FGState.h
Check return value of FDM::init().
[flightgear.git] / src / FDM / JSBSim / FGState.h
index 9aa3ca87e0e6071be5bb0523b7abb70c73653991..1d81833951247c52765d997bf28cfef0093477e1 100644 (file)
@@ -65,6 +65,8 @@ INCLUDES
 DEFINES
 *******************************************************************************/
 
+#define ID_STATE "$Header$"
+
 /*******************************************************************************
 CLASS DECLARATION
 *******************************************************************************/
@@ -81,20 +83,18 @@ public:
   void Initialize(FGInitialCondition *FGIC);
   bool StoreData(string);
 
-  inline float Getadot(void) { return adot; }
-  inline float Getbdot(void) { return bdot; }
-
   inline float Geta(void) { return a; }
 
   inline float Getsim_time(void) { return sim_time; }
   inline float Getdt(void) { return dt; }
 
-  float GetParameter(int val_idx);
+  inline void Suspend(void) {saved_dt = dt; dt = 0.0;}
+  inline void Resume(void)  {dt = saved_dt;}
+
+  float GetParameter(eParam val_idx);
   float GetParameter(string val_string);
-  int GetParameterIndex(string val_string);
+  eParam GetParameterIndex(string val_string);
 
-  inline void Setadot(float tt) { adot = tt; }
-  inline void Setbdot(float tt) { bdot = tt; }
 
   inline void Seta(float tt) { a = tt; }
 
@@ -104,7 +104,7 @@ public:
   }
   inline void  Setdt(float tt) { dt = tt; }
 
-  void SetParameter(int, float);
+  void SetParameter(eParam, float);
 
   inline float IncrTime(void) {
     sim_time+=dt;
@@ -117,12 +117,14 @@ public:
   FGMatrix GetTs2b(float alpha, float beta);
   FGMatrix GetTl2b(void) { return mTl2b; }
   FGMatrix GetTb2l(void) { return mTb2l; }
+  typedef map<eParam, string> ParamMap;
+  ParamMap paramdef;
 
 private:
 
-  float adot, bdot;                 // alpha dot and beta dot
   float a;                          // speed of sound
   float sim_time, dt;
+  float saved_dt;
 
   FGFDMExec* FDMExec;
   FGMatrix mTb2l;
@@ -130,7 +132,7 @@ private:
   FGMatrix mTs2b;
   FGColumnVector vQtrn;
 
-  typedef map<string, long> CoeffMap;
+  typedef map<string, eParam> CoeffMap;
   CoeffMap coeffdef;
 
 protected: