]> git.mxchange.org Git - flightgear.git/blobdiff - src/Network/net_fdm.hxx
Fix for bug 1304 - crash loading XML route
[flightgear.git] / src / Network / net_fdm.hxx
index f40863248dc693ab615c73af2784a8c6852820db..353a1812b1a883a9df41ca60e55b975b63440f80 100644 (file)
@@ -14,6 +14,7 @@
 
 
 #include <time.h> // time_t
+#include <simgear/misc/stdint.hxx>
 
 // NOTE: this file defines an external interface structure.  Due to
 // variability between platforms and architectures, we only used fixed
 // I am not aware of any platforms that don't use 4 bytes for float
 // and 8 bytes for double.
 
-#ifdef HAVE_STDINT_H
-# include <stdint.h>
-#elif defined( _MSC_VER ) || defined(__MINGW32__)
-typedef signed char      int8_t;
-typedef signed short     int16_t;
-typedef signed int       int32_t;
-typedef signed __int64   int64_t;
-typedef unsigned char    uint8_t;
-typedef unsigned short   uint16_t;
-typedef unsigned int     uint32_t;
-typedef unsigned __int64 uint64_t;
-#else
-# error "Port me! Platforms that don't have <stdint.h> need to define int8_t, et. al."
-#endif
-
-const uint32_t FG_NET_FDM_VERSION = 22;
+const uint32_t FG_NET_FDM_VERSION = 24;
 
 
 // Define a structure containing the top level flight dynamics model
@@ -53,6 +39,7 @@ public:
     };
 
     uint32_t version;          // increment when data values change
+    uint32_t padding;          // padding
 
     // Positions
     double longitude;          // geodetic (radians)
@@ -74,13 +61,10 @@ public:
     float v_north;              // north velocity in local/body frame, fps
     float v_east;               // east velocity in local/body frame, fps
     float v_down;               // down/vertical velocity in local/body frame, fps
-    float v_wind_body_north;    // north velocity in local/body frame
-                                // relative to local airmass, fps
-    float v_wind_body_east;     // east velocity in local/body frame
-                                // relative to local airmass, fps
-    float v_wind_body_down;     // down/vertical velocity in local/body
-                                // frame relative to local airmass, fps
-
+    float v_body_u;    // ECEF velocity in body frame
+    float v_body_v;    // ECEF velocity in body frame 
+    float v_body_w;    // ECEF velocity in body frame
+    
     // Accelerations
     float A_X_pilot;           // X accel in body frame ft/sec^2
     float A_Y_pilot;           // Y accel in body frame ft/sec^2
@@ -97,6 +81,7 @@ public:
     uint32_t eng_state[FG_MAX_ENGINES];// Engine state (off, cranking, running)
     float rpm[FG_MAX_ENGINES];      // Engine RPM rev/min
     float fuel_flow[FG_MAX_ENGINES]; // Fuel flow gallons/hr
+    float fuel_px[FG_MAX_ENGINES];   // Fuel pressure psi
     float egt[FG_MAX_ENGINES];      // Exhuast gas temp deg F
     float cht[FG_MAX_ENGINES];      // Cylinder head temp deg F
     float mp_osi[FG_MAX_ENGINES];    // Manifold pressure