]> git.mxchange.org Git - flightgear.git/blobdiff - src/FDM/JSBSim/FGDefs.h
Fix a segfault on exit. Introduces a small memory leak if the instrument
[flightgear.git] / src / FDM / JSBSim / FGDefs.h
index 3c00b117a27322a4921501235a6ce21810ae1c34..2b1ec119c4ff88f26bb0a86d19a84d79510cf9ac 100644 (file)
@@ -1,32 +1,32 @@
 /*******************************************************************************
-
  Header:       FGDefs.h
  Author:       Jon S. Berndt
  Date started: 02/01/99
-
  ------------- Copyright (C) 1999  Jon S. Berndt (jsb@hal-pc.org) -------------
-
  This program is free software; you can redistribute it and/or modify it under
  the terms of the GNU General Public License as published by the Free Software
  Foundation; either version 2 of the License, or (at your option) any later
  version.
-
  This program is distributed in the hope that it will be useful, but WITHOUT
  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
  details.
-
  You should have received a copy of the GNU General Public License along with
  this program; if not, write to the Free Software Foundation, Inc., 59 Temple
  Place - Suite 330, Boston, MA  02111-1307, USA.
-
  Further information about the GNU General Public License can also be found on
  the world wide web at http://www.gnu.org.
-
 HISTORY
 --------------------------------------------------------------------------------
 02/01/99  JSB   Created
-
 ********************************************************************************
 SENTRY
 *******************************************************************************/
@@ -37,57 +37,88 @@ SENTRY
 #define MAX_ENGINES     10
 #define MAX_TANKS       30
 #define GRAVITY         32.174
-#define EARTHRAD        20898908.00       // feet
-#define OMEGAEARTH      7.2685E-3         // rad/sec
+#define INVGRAVITY      0.031081
+#define EARTHRAD        20925650.00       // feet, equatorial
 #define EARTHRADSQRD    437882827922500.0
 #define ONESECOND       4.848136811E-6
 #define ECCENT          0.996647186
 #define ECCENTSQRD      0.99330561
 #define INVECCENTSQRD   1.0067395
 #define INVECCENTSQRDM1 0.0067395
-#define EPS             0.081819221
 #define Reng            1716             //Specific Gas Constant,ft^2/(sec^2*R)
 #define SHRATIO         1.4              //Specific Heat Ratio
 #define RADTODEG        57.29578
 #define DEGTORAD        1.745329E-2
 #define KTSTOFPS        1.68781
 #define FPSTOKTS        0.592484
-#define NEEDED_CFG_VERSION 1.30
+#define INCHTOFT        0.08333333
+#define OMEGA_EARTH .00007272205217  
+#define NEEDED_CFG_VERSION "1.40"
+#define JSBSIM_VERSION  "0.8.6"
 
 #define HPTOFTLBSSEC 550
 #define METERS_TO_FEET 3.2808
 
-#define FG_QBAR           1
-#define FG_WINGAREA       2
-#define FG_WINGSPAN       4
-#define FG_CBAR           8
-#define FG_ALPHA          16
-#define FG_ALPHADOT       32
-#define FG_BETA           64
-#define FG_BETADOT        128
-#define FG_PITCHRATE      256
-#define FG_ROLLRATE       512
-#define FG_YAWRATE        1024
-#define FG_MACH           2048
-#define FG_ALTITUDE       4096
-#define FG_BI2VEL         8192
-#define FG_CI2VEL         16384
-#define FG_ELEVATOR_POS   32768L
-#define FG_AILERON_POS    65536L
-#define FG_RUDDER_POS     131072L
-#define FG_SPDBRAKE_POS   262144L
-#define FG_SPOILERS_POS   524288L
-#define FG_FLAPS_POS      1048576L
-#define FG_ELEVATOR_CMD   2097152L
-#define FG_AILERON_CMD    4194304L
-#define FG_RUDDER_CMD     8388608L
-#define FG_SPDBRAKE_CMD   16777216L
-#define FG_SPOILERS_CMD   33554432L
-#define FG_FLAPS_CMD      67108864L
-#define FG_SPARE3         134217728L
-#define FG_SPARE4         268435456L
-#define FG_SPARE5         536870912L
-#define FG_SPARE6         1073741824L
+#if defined ( sgi ) && !defined( __GNUC__ )
+#define __STL_FUNCTION_TMPL_PARTIAL_ORDER
+#endif
+
+enum eParam {
+  FG_UNDEF = 0,
+  FG_TIME,
+  FG_QBAR,
+  FG_WINGAREA,
+  FG_WINGSPAN,
+  FG_CBAR,
+  FG_ALPHA,
+  FG_ALPHADOT,
+  FG_BETA,
+  FG_BETADOT,
+  FG_PHI,
+  FG_THT,
+  FG_PSI,
+  FG_PITCHRATE,
+  FG_ROLLRATE,
+  FG_YAWRATE,
+  FG_CL_SQRD,
+  FG_MACH,
+  FG_ALTITUDE,
+  FG_BI2VEL,
+  FG_CI2VEL,
+  FG_ELEVATOR_POS,
+  FG_AILERON_POS,
+  FG_RUDDER_POS,
+  FG_SPDBRAKE_POS,
+  FG_SPOILERS_POS,
+  FG_FLAPS_POS,
+  FG_ELEVATOR_CMD,
+  FG_AILERON_CMD,
+  FG_RUDDER_CMD,
+  FG_SPDBRAKE_CMD,
+  FG_SPOILERS_CMD,
+  FG_FLAPS_CMD,
+  FG_THROTTLE_CMD,
+  FG_THROTTLE_POS,
+  FG_ACTIVE_ENGINE,
+  FG_HOVERB,
+  FG_PITCH_TRIM_CMD,
+  FG_LEFT_BRAKE_CMD,
+  FG_CENTER_BRAKE_CMD,
+  FG_RIGHT_BRAKE_CMD,
+  FG_SET_LOGGING
+};
+
+enum eAction {
+  FG_RAMP  = 1,
+  FG_STEP  = 2,
+  FG_EXP   = 3
+};
+
+enum eType {
+  FG_VALUE = 1,
+  FG_DELTA = 2,
+  FG_BOOL  = 3
+};
 
 /******************************************************************************/
 #endif