]> git.mxchange.org Git - flightgear.git/blobdiff - src/FDM/JSBSim/FGRotation.h
JSBSim updates. This update changes the file format, so an update of the base
[flightgear.git] / src / FDM / JSBSim / FGRotation.h
index 50989e8efb81d5f3db9045fbceba8a83d8309a4d..5122535fcb4abe3c9cfceda6883a219ff65ece75 100644 (file)
@@ -87,41 +87,48 @@ public:
   bool Run(void);
 
   inline FGColumnVector3& GetPQR(void) {return vPQR;}
-  inline double GetPQR(int axis) {return vPQR(axis);}
+  inline double GetPQR(int axis) const {return vPQR(axis);}
   inline FGColumnVector3& GetAeroPQR(void) {return vAeroPQR;}
-  inline double GetAeroPQR(int axis) {return vAeroPQR(axis);}
+  inline double GetAeroPQR(int axis) const {return vAeroPQR(axis);}
   inline FGColumnVector3& GetPQRdot(void) {return vPQRdot;}
-  inline double GetPQRdot(int idx) {return vPQRdot(idx);}
+  inline double GetPQRdot(int idx) const {return vPQRdot(idx);}
   inline FGColumnVector3& GetEuler(void) {return vEuler;}
-  inline double GetEuler(int axis) {return vEuler(axis);}
+  inline double GetEuler(int axis) const {return vEuler(axis);}
   inline FGColumnVector3& GetEulerRates(void) { return vEulerRates; }
-  inline double GetEulerRates(int axis) { return vEulerRates(axis); }
+  inline double GetEulerRates(int axis) const { return vEulerRates(axis); }
   inline void SetPQR(FGColumnVector3 tt) {vPQR = tt;}
   inline void SetPQR(double p, double q, double r) {vPQR(eP)=p;
                                                     vPQR(eQ)=q;
                                                     vPQR(eR)=r;}
+  inline void SetAeroPQR(FGColumnVector3 tt) {vAeroPQR = tt;}
+  inline void SetAeroPQR(double p, double q, double r) {vAeroPQR(eP)=p;
+                                                        vAeroPQR(eQ)=q;
+                                                        vAeroPQR(eR)=r;}
   inline void SetEuler(FGColumnVector3 tt) {vEuler = tt;}
   
-  inline double Getphi(void) {return vEuler(1);}
-  inline double Gettht(void) {return vEuler(2);}
-  inline double Getpsi(void) {return vEuler(3);}
+  inline double Getphi(void) const {return vEuler(1);}
+  inline double Gettht(void) const {return vEuler(2);}
+  inline double Getpsi(void) const {return vEuler(3);}
   
-  inline double GetCosphi(void) {return cPhi;}
-  inline double GetCostht(void) {return cTht;}
-  inline double GetCospsi(void) {return cPsi;}
+  inline double GetCosphi(void) const {return cPhi;}
+  inline double GetCostht(void) const {return cTht;}
+  inline double GetCospsi(void) const {return cPsi;}
 
-  inline double GetSinphi(void) {return sPhi;}
-  inline double GetSintht(void) {return sTht;}
-  inline double GetSinpsi(void) {return sPsi;}
+  inline double GetSinphi(void) const {return sPhi;}
+  inline double GetSintht(void) const {return sTht;}
+  inline double GetSinpsi(void) const {return sPsi;}
+  
+  void bind(void);
+  void unbind(void);
 
 private:
   FGColumnVector3 vPQR;
   FGColumnVector3 vAeroPQR;
   FGColumnVector3 vPQRdot;
+  FGColumnVector3 vPQRdot_prev[3];
   FGColumnVector3 vMoments;
   FGColumnVector3 vEuler;
   FGColumnVector3 vEulerRates;
-  FGColumnVector3 vlastPQRdot;
   
   double cTht,sTht;
   double cPhi,sPhi;