/****************************************************************

  Generated by Eclipse Cyclone DDS IDL to C Translator
  File name: dds_ctrls.h
  Source: dds_ctrls.idl
  Cyclone DDS: V0.7.0

*****************************************************************/

#include "dds/ddsc/dds_public_impl.h"

#ifndef _DDSL_DDS_CTRLS_H_
#define _DDSL_DDS_CTRLS_H_


#ifdef __cplusplus
extern "C" {
#endif

#define FG_DDS_CTRLS_VERSION 1
#define FG_DDS_ENGINES 4
#define FG_DDS_WHEELS 16
#define FG_DDS_TANKS 8


typedef struct FG_DDS_Ctrls
{
  int16_t id;
  int16_t version;
  float aileron;
  float elevator;
  float rudder;
  float aileron_trim;
  float elevator_trim;
  float rudder_trim;
  float flaps;
  float spoilers;
  float speedbrake;
  char flaps_power;
  char flap_motor_ok;
  uint16_t num_engines;
  char master_bat[4];
  char master_alt[4];
  uint32_t magnetos[4];
  uint32_t starter_power[4];
  float throttle[4];
  float mixture[4];
  float condition[4];
  uint32_t fuel_pump_power[4];
  float prop_advance[4];
  uint16_t feed_tank_to[4];
  char reverse[4];
  char engine_ok[4];
  char mag_left_ok[4];
  char mag_right_ok[4];
  char spark_plugs_ok[4];
  uint16_t oil_press_status[4];
  char fuel_pump_ok[4];
  uint16_t num_tanks;
  uint16_t fuel_selector[8];
  char cross_feed;
  float brake_left;
  float brake_right;
  float copilot_brake_left;
  float copilot_brake_right;
  float brake_parking;
  char gear_handle;
  char master_avionics;
  float comm_1;
  float comm_2;
  float nav_1;
  float nav_2;
  float wind_speed_kt;
  float wind_dir_deg;
  float turbulence_norm;
  float temp_c;
  float press_inhg;
  float hground;
  float magvar;
  char icing;
  uint32_t speedup;
  uint16_t freeze;
} FG_DDS_Ctrls;

extern const dds_topic_descriptor_t FG_DDS_Ctrls_desc;

#define FG_DDS_Ctrls__alloc() \
((FG_DDS_Ctrls*) dds_alloc (sizeof (FG_DDS_Ctrls)));

#define FG_DDS_Ctrls_free(d,o) \
dds_sample_free ((d), &FG_DDS_Ctrls_desc, (o))

#ifdef __cplusplus
}
#endif
#endif /* _DDSL_DDS_CTRLS_H_ */
