# error This library requires C++
#endif
-const int FG_RAW_CTRLS_VERSION = 5;
+const int FG_RAW_CTRLS_VERSION = 11;
// Define a structure containing the control parameters
int version; // increment when data values change
- static const int FG_MAX_ENGINES = 4;
- static const int FG_MAX_WHEELS = 3;
+ enum {
+ FG_MAX_ENGINES = 4,
+ FG_MAX_WHEELS = 3,
+ FG_MAX_TANKS = 4
+ };
// Aero controls
double aileron; // -1 ... 1
double elevator_trim; // -1 ... 1
double rudder; // -1 ... 1
double flaps; // 0 ... 1
+ bool flaps_power; // true = power available
// Engine controls
int num_engines; // number of valid engines
int magnetos[FG_MAX_ENGINES];
- bool starter[FG_MAX_ENGINES]; // true = starter engauged
+ bool starter_power[FG_MAX_ENGINES]; // true = starter power
double throttle[FG_MAX_ENGINES]; // 0 ... 1
double mixture[FG_MAX_ENGINES]; // 0 ... 1
+ bool fuel_pump_power[FG_MAX_ENGINES];// true = on
double prop_advance[FG_MAX_ENGINES]; // 0 ... 1
+ // Fuel management
+ int num_tanks; // number of valid tanks
+ bool fuel_selector[FG_MAX_TANKS]; // false = off, true = on
+
// Brake controls
int num_wheels; // number of valid wheels
double brake[FG_MAX_WHEELS]; // 0 ... 1
+
+ // Landing Gear
+ bool gear_handle; // true=gear handle down; false= gear handle up
+
+ // Switches
+ bool master_bat;
+ bool master_alt;
+ bool master_avionics;
// Other values of use to a remote FDM
double hground; // ground elevation (meters)