Danny Hart / Mbed 2 deprecated stepVR2mavlink

Dependencies:   mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers common.h Source File

common.h

Go to the documentation of this file.
00001 /** @file
00002  *  @brief MAVLink comm protocol generated from common.xml
00003  *  @see http://mavlink.org
00004  */
00005 #pragma once
00006 #ifndef MAVLINK_COMMON_H
00007 #define MAVLINK_COMMON_H
00008 
00009 #ifndef MAVLINK_H
00010     #error Wrong include order: MAVLINK_COMMON.H MUST NOT BE DIRECTLY USED. Include mavlink.h from the same directory instead or set ALL AND EVERY defines from MAVLINK.H manually accordingly, including the #define MAVLINK_H call.
00011 #endif
00012 
00013 #undef MAVLINK_THIS_XML_IDX
00014 #define MAVLINK_THIS_XML_IDX 0
00015 
00016 #ifdef __cplusplus
00017 extern "C" {
00018 #endif
00019 
00020 // MESSAGE LENGTHS AND CRCS
00021 
00022 #ifndef MAVLINK_MESSAGE_LENGTHS
00023 #define MAVLINK_MESSAGE_LENGTHS {9, 31, 12, 0, 14, 28, 3, 32, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 20, 2, 25, 23, 30, 101, 22, 26, 16, 14, 28, 32, 28, 28, 22, 22, 21, 6, 6, 37, 4, 4, 2, 2, 4, 2, 2, 3, 13, 12, 37, 4, 0, 0, 27, 25, 0, 0, 0, 0, 0, 72, 26, 181, 225, 42, 6, 4, 0, 11, 18, 0, 0, 37, 20, 35, 33, 3, 0, 0, 0, 22, 39, 37, 53, 51, 53, 51, 0, 28, 56, 42, 33, 81, 0, 0, 0, 0, 0, 0, 26, 32, 32, 20, 32, 62, 44, 64, 84, 9, 254, 16, 12, 36, 44, 64, 22, 6, 14, 12, 97, 2, 2, 113, 35, 6, 79, 35, 35, 22, 13, 255, 14, 18, 43, 8, 22, 14, 36, 43, 41, 32, 243, 14, 93, 0, 100, 36, 60, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 42, 40, 63, 182, 40, 0, 0, 0, 0, 0, 0, 32, 52, 53, 6, 2, 38, 19, 254, 36, 30, 18, 18, 51, 9, 0}
00024 #endif
00025 
00026 #ifndef MAVLINK_MESSAGE_CRCS
00027 #define MAVLINK_MESSAGE_CRCS {50, 124, 137, 0, 237, 217, 104, 119, 0, 0, 0, 89, 0, 0, 0, 0, 0, 0, 0, 0, 214, 159, 220, 168, 24, 23, 170, 144, 67, 115, 39, 246, 185, 104, 237, 244, 222, 212, 9, 254, 230, 28, 28, 132, 221, 232, 11, 153, 41, 39, 78, 196, 0, 0, 15, 3, 0, 0, 0, 0, 0, 167, 183, 119, 191, 118, 148, 21, 0, 243, 124, 0, 0, 38, 20, 158, 152, 143, 0, 0, 0, 106, 49, 22, 143, 140, 5, 150, 0, 231, 183, 63, 54, 47, 0, 0, 0, 0, 0, 0, 175, 102, 158, 208, 56, 93, 138, 108, 32, 185, 84, 34, 174, 124, 237, 4, 76, 128, 56, 116, 134, 237, 203, 250, 87, 203, 220, 25, 226, 46, 29, 223, 85, 6, 229, 203, 1, 195, 109, 168, 181, 47, 72, 131, 127, 0, 103, 154, 178, 200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 163, 105, 151, 35, 150, 0, 0, 0, 0, 0, 0, 90, 104, 85, 95, 130, 184, 81, 8, 204, 49, 170, 44, 83, 46, 0}
00028 #endif
00029 
00030 #include "../protocol.h"
00031 
00032 #define MAVLINK_ENABLED_COMMON
00033 
00034 // ENUM DEFINITIONS
00035 
00036 
00037 /** @brief Micro air vehicle / autopilot classes. This identifies the individual model. */
00038 #ifndef HAVE_ENUM_MAV_AUTOPILOT
00039 #define HAVE_ENUM_MAV_AUTOPILOT
00040 typedef enum MAV_AUTOPILOT
00041 {
00042    MAV_AUTOPILOT_GENERIC=0, /* Generic autopilot, full support for everything | */
00043    MAV_AUTOPILOT_RESERVED=1, /* Reserved for future use. | */
00044    MAV_AUTOPILOT_SLUGS=2, /* SLUGS autopilot, http://slugsuav.soe.ucsc.edu | */
00045    MAV_AUTOPILOT_ARDUPILOTMEGA=3, /* ArduPilotMega / ArduCopter, http://diydrones.com | */
00046    MAV_AUTOPILOT_OPENPILOT=4, /* OpenPilot, http://openpilot.org | */
00047    MAV_AUTOPILOT_GENERIC_WAYPOINTS_ONLY=5, /* Generic autopilot only supporting simple waypoints | */
00048    MAV_AUTOPILOT_GENERIC_WAYPOINTS_AND_SIMPLE_NAVIGATION_ONLY=6, /* Generic autopilot supporting waypoints and other simple navigation commands | */
00049    MAV_AUTOPILOT_GENERIC_MISSION_FULL=7, /* Generic autopilot supporting the full mission command set | */
00050    MAV_AUTOPILOT_INVALID=8, /* No valid autopilot, e.g. a GCS or other MAVLink component | */
00051    MAV_AUTOPILOT_PPZ=9, /* PPZ UAV - http://nongnu.org/paparazzi | */
00052    MAV_AUTOPILOT_UDB=10, /* UAV Dev Board | */
00053    MAV_AUTOPILOT_FP=11, /* FlexiPilot | */
00054    MAV_AUTOPILOT_PX4=12, /* PX4 Autopilot - http://pixhawk.ethz.ch/px4/ | */
00055    MAV_AUTOPILOT_SMACCMPILOT=13, /* SMACCMPilot - http://smaccmpilot.org | */
00056    MAV_AUTOPILOT_AUTOQUAD=14, /* AutoQuad -- http://autoquad.org | */
00057    MAV_AUTOPILOT_ARMAZILA=15, /* Armazila -- http://armazila.com | */
00058    MAV_AUTOPILOT_AEROB=16, /* Aerob -- http://aerob.ru | */
00059    MAV_AUTOPILOT_ASLUAV=17, /* ASLUAV autopilot -- http://www.asl.ethz.ch | */
00060    MAV_AUTOPILOT_ENUM_END=18, /*  | */
00061 } MAV_AUTOPILOT;
00062 #endif
00063 
00064 /** @brief  */
00065 #ifndef HAVE_ENUM_MAV_TYPE
00066 #define HAVE_ENUM_MAV_TYPE
00067 typedef enum MAV_TYPE
00068 {
00069    MAV_TYPE_GENERIC=0, /* Generic micro air vehicle. | */
00070    MAV_TYPE_FIXED_WING=1, /* Fixed wing aircraft. | */
00071    MAV_TYPE_QUADROTOR=2, /* Quadrotor | */
00072    MAV_TYPE_COAXIAL=3, /* Coaxial helicopter | */
00073    MAV_TYPE_HELICOPTER=4, /* Normal helicopter with tail rotor. | */
00074    MAV_TYPE_ANTENNA_TRACKER=5, /* Ground installation | */
00075    MAV_TYPE_GCS=6, /* Operator control unit / ground control station | */
00076    MAV_TYPE_AIRSHIP=7, /* Airship, controlled | */
00077    MAV_TYPE_FREE_BALLOON=8, /* Free balloon, uncontrolled | */
00078    MAV_TYPE_ROCKET=9, /* Rocket | */
00079    MAV_TYPE_GROUND_ROVER=10, /* Ground rover | */
00080    MAV_TYPE_SURFACE_BOAT=11, /* Surface vessel, boat, ship | */
00081    MAV_TYPE_SUBMARINE=12, /* Submarine | */
00082    MAV_TYPE_HEXAROTOR=13, /* Hexarotor | */
00083    MAV_TYPE_OCTOROTOR=14, /* Octorotor | */
00084    MAV_TYPE_TRICOPTER=15, /* Tricopter | */
00085    MAV_TYPE_FLAPPING_WING=16, /* Flapping wing | */
00086    MAV_TYPE_KITE=17, /* Kite | */
00087    MAV_TYPE_ONBOARD_CONTROLLER=18, /* Onboard companion controller | */
00088    MAV_TYPE_VTOL_DUOROTOR=19, /* Two-rotor VTOL using control surfaces in vertical operation in addition. Tailsitter. | */
00089    MAV_TYPE_VTOL_QUADROTOR=20, /* Quad-rotor VTOL using a V-shaped quad config in vertical operation. Tailsitter. | */
00090    MAV_TYPE_VTOL_TILTROTOR=21, /* Tiltrotor VTOL | */
00091    MAV_TYPE_VTOL_RESERVED2=22, /* VTOL reserved 2 | */
00092    MAV_TYPE_VTOL_RESERVED3=23, /* VTOL reserved 3 | */
00093    MAV_TYPE_VTOL_RESERVED4=24, /* VTOL reserved 4 | */
00094    MAV_TYPE_VTOL_RESERVED5=25, /* VTOL reserved 5 | */
00095    MAV_TYPE_GIMBAL=26, /* Onboard gimbal | */
00096    MAV_TYPE_ADSB=27, /* Onboard ADSB peripheral | */
00097    MAV_TYPE_ENUM_END=28, /*  | */
00098 } MAV_TYPE;
00099 #endif
00100 
00101 /** @brief These values define the type of firmware release.  These values indicate the first version or release of this type.  For example the first alpha release would be 64, the second would be 65. */
00102 #ifndef HAVE_ENUM_FIRMWARE_VERSION_TYPE
00103 #define HAVE_ENUM_FIRMWARE_VERSION_TYPE
00104 typedef enum FIRMWARE_VERSION_TYPE
00105 {
00106    FIRMWARE_VERSION_TYPE_DEV=0, /* development release | */
00107    FIRMWARE_VERSION_TYPE_ALPHA=64, /* alpha release | */
00108    FIRMWARE_VERSION_TYPE_BETA=128, /* beta release | */
00109    FIRMWARE_VERSION_TYPE_RC=192, /* release candidate | */
00110    FIRMWARE_VERSION_TYPE_OFFICIAL=255, /* official stable release | */
00111    FIRMWARE_VERSION_TYPE_ENUM_END=256, /*  | */
00112 } FIRMWARE_VERSION_TYPE;
00113 #endif
00114 
00115 /** @brief These flags encode the MAV mode. */
00116 #ifndef HAVE_ENUM_MAV_MODE_FLAG
00117 #define HAVE_ENUM_MAV_MODE_FLAG
00118 typedef enum MAV_MODE_FLAG
00119 {
00120    MAV_MODE_FLAG_CUSTOM_MODE_ENABLED=1, /* 0b00000001 Reserved for future use. | */
00121    MAV_MODE_FLAG_TEST_ENABLED=2, /* 0b00000010 system has a test mode enabled. This flag is intended for temporary system tests and should not be used for stable implementations. | */
00122    MAV_MODE_FLAG_AUTO_ENABLED=4, /* 0b00000100 autonomous mode enabled, system finds its own goal positions. Guided flag can be set or not, depends on the actual implementation. | */
00123    MAV_MODE_FLAG_GUIDED_ENABLED=8, /* 0b00001000 guided mode enabled, system flies MISSIONs / mission items. | */
00124    MAV_MODE_FLAG_STABILIZE_ENABLED=16, /* 0b00010000 system stabilizes electronically its attitude (and optionally position). It needs however further control inputs to move around. | */
00125    MAV_MODE_FLAG_HIL_ENABLED=32, /* 0b00100000 hardware in the loop simulation. All motors / actuators are blocked, but internal software is full operational. | */
00126    MAV_MODE_FLAG_MANUAL_INPUT_ENABLED=64, /* 0b01000000 remote control input is enabled. | */
00127    MAV_MODE_FLAG_SAFETY_ARMED=128, /* 0b10000000 MAV safety set to armed. Motors are enabled / running / can start. Ready to fly. Additional note: this flag is to be ignore when sent in the command MAV_CMD_DO_SET_MODE and MAV_CMD_COMPONENT_ARM_DISARM shall be used instead. The flag can still be used to report the armed state. | */
00128    MAV_MODE_FLAG_ENUM_END=129, /*  | */
00129 } MAV_MODE_FLAG;
00130 #endif
00131 
00132 /** @brief These values encode the bit positions of the decode position. These values can be used to read the value of a flag bit by combining the base_mode variable with AND with the flag position value. The result will be either 0 or 1, depending on if the flag is set or not. */
00133 #ifndef HAVE_ENUM_MAV_MODE_FLAG_DECODE_POSITION
00134 #define HAVE_ENUM_MAV_MODE_FLAG_DECODE_POSITION
00135 typedef enum MAV_MODE_FLAG_DECODE_POSITION
00136 {
00137    MAV_MODE_FLAG_DECODE_POSITION_CUSTOM_MODE=1, /* Eighth bit: 00000001 | */
00138    MAV_MODE_FLAG_DECODE_POSITION_TEST=2, /* Seventh bit: 00000010 | */
00139    MAV_MODE_FLAG_DECODE_POSITION_AUTO=4, /* Sixt bit:   00000100 | */
00140    MAV_MODE_FLAG_DECODE_POSITION_GUIDED=8, /* Fifth bit:  00001000 | */
00141    MAV_MODE_FLAG_DECODE_POSITION_STABILIZE=16, /* Fourth bit: 00010000 | */
00142    MAV_MODE_FLAG_DECODE_POSITION_HIL=32, /* Third bit:  00100000 | */
00143    MAV_MODE_FLAG_DECODE_POSITION_MANUAL=64, /* Second bit: 01000000 | */
00144    MAV_MODE_FLAG_DECODE_POSITION_SAFETY=128, /* First bit:  10000000 | */
00145    MAV_MODE_FLAG_DECODE_POSITION_ENUM_END=129, /*  | */
00146 } MAV_MODE_FLAG_DECODE_POSITION;
00147 #endif
00148 
00149 /** @brief Override command, pauses current mission execution and moves immediately to a position */
00150 #ifndef HAVE_ENUM_MAV_GOTO
00151 #define HAVE_ENUM_MAV_GOTO
00152 typedef enum MAV_GOTO
00153 {
00154    MAV_GOTO_DO_HOLD=0, /* Hold at the current position. | */
00155    MAV_GOTO_DO_CONTINUE=1, /* Continue with the next item in mission execution. | */
00156    MAV_GOTO_HOLD_AT_CURRENT_POSITION=2, /* Hold at the current position of the system | */
00157    MAV_GOTO_HOLD_AT_SPECIFIED_POSITION=3, /* Hold at the position specified in the parameters of the DO_HOLD action | */
00158    MAV_GOTO_ENUM_END=4, /*  | */
00159 } MAV_GOTO;
00160 #endif
00161 
00162 /** @brief These defines are predefined OR-combined mode flags. There is no need to use values from this enum, but it
00163                simplifies the use of the mode flags. Note that manual input is enabled in all modes as a safety override. */
00164 #ifndef HAVE_ENUM_MAV_MODE
00165 #define HAVE_ENUM_MAV_MODE
00166 typedef enum MAV_MODE
00167 {
00168    MAV_MODE_PREFLIGHT=0, /* System is not ready to fly, booting, calibrating, etc. No flag is set. | */
00169    MAV_MODE_MANUAL_DISARMED=64, /* System is allowed to be active, under manual (RC) control, no stabilization | */
00170    MAV_MODE_TEST_DISARMED=66, /* UNDEFINED mode. This solely depends on the autopilot - use with caution, intended for developers only. | */
00171    MAV_MODE_STABILIZE_DISARMED=80, /* System is allowed to be active, under assisted RC control. | */
00172    MAV_MODE_GUIDED_DISARMED=88, /* System is allowed to be active, under autonomous control, manual setpoint | */
00173    MAV_MODE_AUTO_DISARMED=92, /* System is allowed to be active, under autonomous control and navigation (the trajectory is decided onboard and not pre-programmed by MISSIONs) | */
00174    MAV_MODE_MANUAL_ARMED=192, /* System is allowed to be active, under manual (RC) control, no stabilization | */
00175    MAV_MODE_TEST_ARMED=194, /* UNDEFINED mode. This solely depends on the autopilot - use with caution, intended for developers only. | */
00176    MAV_MODE_STABILIZE_ARMED=208, /* System is allowed to be active, under assisted RC control. | */
00177    MAV_MODE_GUIDED_ARMED=216, /* System is allowed to be active, under autonomous control, manual setpoint | */
00178    MAV_MODE_AUTO_ARMED=220, /* System is allowed to be active, under autonomous control and navigation (the trajectory is decided onboard and not pre-programmed by MISSIONs) | */
00179    MAV_MODE_ENUM_END=221, /*  | */
00180 } MAV_MODE;
00181 #endif
00182 
00183 /** @brief  */
00184 #ifndef HAVE_ENUM_MAV_STATE
00185 #define HAVE_ENUM_MAV_STATE
00186 typedef enum MAV_STATE
00187 {
00188    MAV_STATE_UNINIT=0, /* Uninitialized system, state is unknown. | */
00189    MAV_STATE_BOOT=1, /* System is booting up. | */
00190    MAV_STATE_CALIBRATING=2, /* System is calibrating and not flight-ready. | */
00191    MAV_STATE_STANDBY=3, /* System is grounded and on standby. It can be launched any time. | */
00192    MAV_STATE_ACTIVE=4, /* System is active and might be already airborne. Motors are engaged. | */
00193    MAV_STATE_CRITICAL=5, /* System is in a non-normal flight mode. It can however still navigate. | */
00194    MAV_STATE_EMERGENCY=6, /* System is in a non-normal flight mode. It lost control over parts or over the whole airframe. It is in mayday and going down. | */
00195    MAV_STATE_POWEROFF=7, /* System just initialized its power-down sequence, will shut down now. | */
00196    MAV_STATE_ENUM_END=8, /*  | */
00197 } MAV_STATE;
00198 #endif
00199 
00200 /** @brief  */
00201 #ifndef HAVE_ENUM_MAV_COMPONENT
00202 #define HAVE_ENUM_MAV_COMPONENT
00203 typedef enum MAV_COMPONENT
00204 {
00205    MAV_COMP_ID_ALL=0, /*  | */
00206    MAV_COMP_ID_CAMERA=100, /*  | */
00207    MAV_COMP_ID_SERVO1=140, /*  | */
00208    MAV_COMP_ID_SERVO2=141, /*  | */
00209    MAV_COMP_ID_SERVO3=142, /*  | */
00210    MAV_COMP_ID_SERVO4=143, /*  | */
00211    MAV_COMP_ID_SERVO5=144, /*  | */
00212    MAV_COMP_ID_SERVO6=145, /*  | */
00213    MAV_COMP_ID_SERVO7=146, /*  | */
00214    MAV_COMP_ID_SERVO8=147, /*  | */
00215    MAV_COMP_ID_SERVO9=148, /*  | */
00216    MAV_COMP_ID_SERVO10=149, /*  | */
00217    MAV_COMP_ID_SERVO11=150, /*  | */
00218    MAV_COMP_ID_SERVO12=151, /*  | */
00219    MAV_COMP_ID_SERVO13=152, /*  | */
00220    MAV_COMP_ID_SERVO14=153, /*  | */
00221    MAV_COMP_ID_GIMBAL=154, /*  | */
00222    MAV_COMP_ID_LOG=155, /*  | */
00223    MAV_COMP_ID_ADSB=156, /*  | */
00224    MAV_COMP_ID_OSD=157, /* On Screen Display (OSD) devices for video links | */
00225    MAV_COMP_ID_PERIPHERAL=158, /* Generic autopilot peripheral component ID. Meant for devices that do not implement the parameter sub-protocol | */
00226    MAV_COMP_ID_QX1_GIMBAL=159, /*  | */
00227    MAV_COMP_ID_MAPPER=180, /*  | */
00228    MAV_COMP_ID_MISSIONPLANNER=190, /*  | */
00229    MAV_COMP_ID_PATHPLANNER=195, /*  | */
00230    MAV_COMP_ID_IMU=200, /*  | */
00231    MAV_COMP_ID_IMU_2=201, /*  | */
00232    MAV_COMP_ID_IMU_3=202, /*  | */
00233    MAV_COMP_ID_GPS=220, /*  | */
00234    MAV_COMP_ID_UDP_BRIDGE=240, /*  | */
00235    MAV_COMP_ID_UART_BRIDGE=241, /*  | */
00236    MAV_COMP_ID_SYSTEM_CONTROL=250, /*  | */
00237    MAV_COMPONENT_ENUM_END=251, /*  | */
00238 } MAV_COMPONENT;
00239 #endif
00240 
00241 /** @brief These encode the sensors whose status is sent as part of the SYS_STATUS message. */
00242 #ifndef HAVE_ENUM_MAV_SYS_STATUS_SENSOR
00243 #define HAVE_ENUM_MAV_SYS_STATUS_SENSOR
00244 typedef enum MAV_SYS_STATUS_SENSOR
00245 {
00246    MAV_SYS_STATUS_SENSOR_3D_GYRO=1, /* 0x01 3D gyro | */
00247    MAV_SYS_STATUS_SENSOR_3D_ACCEL=2, /* 0x02 3D accelerometer | */
00248    MAV_SYS_STATUS_SENSOR_3D_MAG=4, /* 0x04 3D magnetometer | */
00249    MAV_SYS_STATUS_SENSOR_ABSOLUTE_PRESSURE=8, /* 0x08 absolute pressure | */
00250    MAV_SYS_STATUS_SENSOR_DIFFERENTIAL_PRESSURE=16, /* 0x10 differential pressure | */
00251    MAV_SYS_STATUS_SENSOR_GPS=32, /* 0x20 GPS | */
00252    MAV_SYS_STATUS_SENSOR_OPTICAL_FLOW=64, /* 0x40 optical flow | */
00253    MAV_SYS_STATUS_SENSOR_VISION_POSITION=128, /* 0x80 computer vision position | */
00254    MAV_SYS_STATUS_SENSOR_LASER_POSITION=256, /* 0x100 laser based position | */
00255    MAV_SYS_STATUS_SENSOR_EXTERNAL_GROUND_TRUTH=512, /* 0x200 external ground truth (Vicon or Leica) | */
00256    MAV_SYS_STATUS_SENSOR_ANGULAR_RATE_CONTROL=1024, /* 0x400 3D angular rate control | */
00257    MAV_SYS_STATUS_SENSOR_ATTITUDE_STABILIZATION=2048, /* 0x800 attitude stabilization | */
00258    MAV_SYS_STATUS_SENSOR_YAW_POSITION=4096, /* 0x1000 yaw position | */
00259    MAV_SYS_STATUS_SENSOR_Z_ALTITUDE_CONTROL=8192, /* 0x2000 z/altitude control | */
00260    MAV_SYS_STATUS_SENSOR_XY_POSITION_CONTROL=16384, /* 0x4000 x/y position control | */
00261    MAV_SYS_STATUS_SENSOR_MOTOR_OUTPUTS=32768, /* 0x8000 motor outputs / control | */
00262    MAV_SYS_STATUS_SENSOR_RC_RECEIVER=65536, /* 0x10000 rc receiver | */
00263    MAV_SYS_STATUS_SENSOR_3D_GYRO2=131072, /* 0x20000 2nd 3D gyro | */
00264    MAV_SYS_STATUS_SENSOR_3D_ACCEL2=262144, /* 0x40000 2nd 3D accelerometer | */
00265    MAV_SYS_STATUS_SENSOR_3D_MAG2=524288, /* 0x80000 2nd 3D magnetometer | */
00266    MAV_SYS_STATUS_GEOFENCE=1048576, /* 0x100000 geofence | */
00267    MAV_SYS_STATUS_AHRS=2097152, /* 0x200000 AHRS subsystem health | */
00268    MAV_SYS_STATUS_TERRAIN=4194304, /* 0x400000 Terrain subsystem health | */
00269    MAV_SYS_STATUS_REVERSE_MOTOR=8388608, /* 0x800000 Motors are reversed | */
00270    MAV_SYS_STATUS_LOGGING=16777216, /* 0x1000000 Logging | */
00271    MAV_SYS_STATUS_SENSOR_ENUM_END=16777217, /*  | */
00272 } MAV_SYS_STATUS_SENSOR;
00273 #endif
00274 
00275 /** @brief  */
00276 #ifndef HAVE_ENUM_MAV_FRAME
00277 #define HAVE_ENUM_MAV_FRAME
00278 typedef enum MAV_FRAME
00279 {
00280    MAV_FRAME_GLOBAL=0, /* Global coordinate frame, WGS84 coordinate system. First value / x: latitude, second value / y: longitude, third value / z: positive altitude over mean sea level (MSL) | */
00281    MAV_FRAME_LOCAL_NED=1, /* Local coordinate frame, Z-up (x: north, y: east, z: down). | */
00282    MAV_FRAME_MISSION=2, /* NOT a coordinate frame, indicates a mission command. | */
00283    MAV_FRAME_GLOBAL_RELATIVE_ALT=3, /* Global coordinate frame, WGS84 coordinate system, relative altitude over ground with respect to the home position. First value / x: latitude, second value / y: longitude, third value / z: positive altitude with 0 being at the altitude of the home location. | */
00284    MAV_FRAME_LOCAL_ENU=4, /* Local coordinate frame, Z-down (x: east, y: north, z: up) | */
00285    MAV_FRAME_GLOBAL_INT=5, /* Global coordinate frame, WGS84 coordinate system. First value / x: latitude in degrees*1.0e-7, second value / y: longitude in degrees*1.0e-7, third value / z: positive altitude over mean sea level (MSL) | */
00286    MAV_FRAME_GLOBAL_RELATIVE_ALT_INT=6, /* Global coordinate frame, WGS84 coordinate system, relative altitude over ground with respect to the home position. First value / x: latitude in degrees*10e-7, second value / y: longitude in degrees*10e-7, third value / z: positive altitude with 0 being at the altitude of the home location. | */
00287    MAV_FRAME_LOCAL_OFFSET_NED=7, /* Offset to the current local frame. Anything expressed in this frame should be added to the current local frame position. | */
00288    MAV_FRAME_BODY_NED=8, /* Setpoint in body NED frame. This makes sense if all position control is externalized - e.g. useful to command 2 m/s^2 acceleration to the right. | */
00289    MAV_FRAME_BODY_OFFSET_NED=9, /* Offset in body NED frame. This makes sense if adding setpoints to the current flight path, to avoid an obstacle - e.g. useful to command 2 m/s^2 acceleration to the east. | */
00290    MAV_FRAME_GLOBAL_TERRAIN_ALT=10, /* Global coordinate frame with above terrain level altitude. WGS84 coordinate system, relative altitude over terrain with respect to the waypoint coordinate. First value / x: latitude in degrees, second value / y: longitude in degrees, third value / z: positive altitude in meters with 0 being at ground level in terrain model. | */
00291    MAV_FRAME_GLOBAL_TERRAIN_ALT_INT=11, /* Global coordinate frame with above terrain level altitude. WGS84 coordinate system, relative altitude over terrain with respect to the waypoint coordinate. First value / x: latitude in degrees*10e-7, second value / y: longitude in degrees*10e-7, third value / z: positive altitude in meters with 0 being at ground level in terrain model. | */
00292    MAV_FRAME_ENUM_END=12, /*  | */
00293 } MAV_FRAME;
00294 #endif
00295 
00296 /** @brief  */
00297 #ifndef HAVE_ENUM_MAVLINK_DATA_STREAM_TYPE
00298 #define HAVE_ENUM_MAVLINK_DATA_STREAM_TYPE
00299 typedef enum MAVLINK_DATA_STREAM_TYPE
00300 {
00301    MAVLINK_DATA_STREAM_IMG_JPEG=1, /*  | */
00302    MAVLINK_DATA_STREAM_IMG_BMP=2, /*  | */
00303    MAVLINK_DATA_STREAM_IMG_RAW8U=3, /*  | */
00304    MAVLINK_DATA_STREAM_IMG_RAW32U=4, /*  | */
00305    MAVLINK_DATA_STREAM_IMG_PGM=5, /*  | */
00306    MAVLINK_DATA_STREAM_IMG_PNG=6, /*  | */
00307    MAVLINK_DATA_STREAM_TYPE_ENUM_END=7, /*  | */
00308 } MAVLINK_DATA_STREAM_TYPE;
00309 #endif
00310 
00311 /** @brief  */
00312 #ifndef HAVE_ENUM_FENCE_ACTION
00313 #define HAVE_ENUM_FENCE_ACTION
00314 typedef enum FENCE_ACTION
00315 {
00316    FENCE_ACTION_NONE=0, /* Disable fenced mode | */
00317    FENCE_ACTION_GUIDED=1, /* Switched to guided mode to return point (fence point 0) | */
00318    FENCE_ACTION_REPORT=2, /* Report fence breach, but don't take action | */
00319    FENCE_ACTION_GUIDED_THR_PASS=3, /* Switched to guided mode to return point (fence point 0) with manual throttle control | */
00320    FENCE_ACTION_RTL=4, /* Switch to RTL (return to launch) mode and head for the return point. | */
00321    FENCE_ACTION_ENUM_END=5, /*  | */
00322 } FENCE_ACTION;
00323 #endif
00324 
00325 /** @brief  */
00326 #ifndef HAVE_ENUM_FENCE_BREACH
00327 #define HAVE_ENUM_FENCE_BREACH
00328 typedef enum FENCE_BREACH
00329 {
00330    FENCE_BREACH_NONE=0, /* No last fence breach | */
00331    FENCE_BREACH_MINALT=1, /* Breached minimum altitude | */
00332    FENCE_BREACH_MAXALT=2, /* Breached maximum altitude | */
00333    FENCE_BREACH_BOUNDARY=3, /* Breached fence boundary | */
00334    FENCE_BREACH_ENUM_END=4, /*  | */
00335 } FENCE_BREACH;
00336 #endif
00337 
00338 /** @brief Enumeration of possible mount operation modes */
00339 #ifndef HAVE_ENUM_MAV_MOUNT_MODE
00340 #define HAVE_ENUM_MAV_MOUNT_MODE
00341 typedef enum MAV_MOUNT_MODE
00342 {
00343    MAV_MOUNT_MODE_RETRACT=0, /* Load and keep safe position (Roll,Pitch,Yaw) from permant memory and stop stabilization | */
00344    MAV_MOUNT_MODE_NEUTRAL=1, /* Load and keep neutral position (Roll,Pitch,Yaw) from permanent memory. | */
00345    MAV_MOUNT_MODE_MAVLINK_TARGETING=2, /* Load neutral position and start MAVLink Roll,Pitch,Yaw control with stabilization | */
00346    MAV_MOUNT_MODE_RC_TARGETING=3, /* Load neutral position and start RC Roll,Pitch,Yaw control with stabilization | */
00347    MAV_MOUNT_MODE_GPS_POINT=4, /* Load neutral position and start to point to Lat,Lon,Alt | */
00348    MAV_MOUNT_MODE_ENUM_END=5, /*  | */
00349 } MAV_MOUNT_MODE;
00350 #endif
00351 
00352 /** @brief Commands to be executed by the MAV. They can be executed on user request, or as part of a mission script. If the action is used in a mission, the parameter mapping to the waypoint/mission message is as follows: Param 1, Param 2, Param 3, Param 4, X: Param 5, Y:Param 6, Z:Param 7. This command list is similar what ARINC 424 is for commercial aircraft: A data format how to interpret waypoint/mission data. */
00353 #ifndef HAVE_ENUM_MAV_CMD
00354 #define HAVE_ENUM_MAV_CMD
00355 typedef enum MAV_CMD
00356 {
00357    MAV_CMD_NAV_WAYPOINT=16, /* Navigate to MISSION. |Hold time in decimal seconds. (ignored by fixed wing, time to stay at MISSION for rotary wing)| Acceptance radius in meters (if the sphere with this radius is hit, the MISSION counts as reached)| 0 to pass through the WP, if > 0 radius in meters to pass by WP. Positive value for clockwise orbit, negative value for counter-clockwise orbit. Allows trajectory control.| Desired yaw angle at MISSION (rotary wing)| Latitude| Longitude| Altitude|  */
00358    MAV_CMD_NAV_LOITER_UNLIM=17, /* Loiter around this MISSION an unlimited amount of time |Empty| Empty| Radius around MISSION, in meters. If positive loiter clockwise, else counter-clockwise| Desired yaw angle.| Latitude| Longitude| Altitude|  */
00359    MAV_CMD_NAV_LOITER_TURNS=18, /* Loiter around this MISSION for X turns |Turns| Empty| Radius around MISSION, in meters. If positive loiter clockwise, else counter-clockwise| Forward moving aircraft this sets exit xtrack location: 0 for center of loiter wp, 1 for exit location. Else, this is desired yaw angle| Latitude| Longitude| Altitude|  */
00360    MAV_CMD_NAV_LOITER_TIME=19, /* Loiter around this MISSION for X seconds |Seconds (decimal)| Empty| Radius around MISSION, in meters. If positive loiter clockwise, else counter-clockwise| Forward moving aircraft this sets exit xtrack location: 0 for center of loiter wp, 1 for exit location. Else, this is desired yaw angle| Latitude| Longitude| Altitude|  */
00361    MAV_CMD_NAV_RETURN_TO_LAUNCH=20, /* Return to launch location |Empty| Empty| Empty| Empty| Empty| Empty| Empty|  */
00362    MAV_CMD_NAV_LAND=21, /* Land at location |Abort Alt| Empty| Empty| Desired yaw angle| Latitude| Longitude| Altitude|  */
00363    MAV_CMD_NAV_TAKEOFF=22, /* Takeoff from ground / hand |Minimum pitch (if airspeed sensor present), desired pitch without sensor| Empty| Empty| Yaw angle (if magnetometer present), ignored without magnetometer| Latitude| Longitude| Altitude|  */
00364    MAV_CMD_NAV_LAND_LOCAL=23, /* Land at local position (local frame only) |Landing target number (if available)| Maximum accepted offset from desired landing position [m] - computed magnitude from spherical coordinates: d = sqrt(x^2 + y^2 + z^2), which gives the maximum accepted distance between the desired landing position and the position where the vehicle is about to land| Landing descend rate [ms^-1]| Desired yaw angle [rad]| Y-axis position [m]| X-axis position [m]| Z-axis / ground level position [m]|  */
00365    MAV_CMD_NAV_TAKEOFF_LOCAL=24, /* Takeoff from local position (local frame only) |Minimum pitch (if airspeed sensor present), desired pitch without sensor [rad]| Empty| Takeoff ascend rate [ms^-1]| Yaw angle [rad] (if magnetometer or another yaw estimation source present), ignored without one of these| Y-axis position [m]| X-axis position [m]| Z-axis position [m]|  */
00366    MAV_CMD_NAV_FOLLOW=25, /* Vehicle following, i.e. this waypoint represents the position of a moving vehicle |Following logic to use (e.g. loitering or sinusoidal following) - depends on specific autopilot implementation| Ground speed of vehicle to be followed| Radius around MISSION, in meters. If positive loiter clockwise, else counter-clockwise| Desired yaw angle.| Latitude| Longitude| Altitude|  */
00367    MAV_CMD_NAV_CONTINUE_AND_CHANGE_ALT=30, /* Continue on the current course and climb/descend to specified altitude.  When the altitude is reached continue to the next command (i.e., don't proceed to the next command until the desired altitude is reached. |Climb or Descend (0 = Neutral, command completes when within 5m of this command's altitude, 1 = Climbing, command completes when at or above this command's altitude, 2 = Descending, command completes when at or below this command's altitude. | Empty| Empty| Empty| Empty| Empty| Desired altitude in meters|  */
00368    MAV_CMD_NAV_LOITER_TO_ALT=31, /* Begin loiter at the specified Latitude and Longitude.  If Lat=Lon=0, then loiter at the current position.  Don't consider the navigation command complete (don't leave loiter) until the altitude has been reached.  Additionally, if the Heading Required parameter is non-zero the  aircraft will not leave the loiter until heading toward the next waypoint.  |Heading Required (0 = False)| Radius in meters. If positive loiter clockwise, negative counter-clockwise, 0 means no change to standard loiter.| Empty| Forward moving aircraft this sets exit xtrack location: 0 for center of loiter wp, 1 for exit location| Latitude| Longitude| Altitude|  */
00369    MAV_CMD_DO_FOLLOW=32, /* Being following a target |System ID (the system ID of the FOLLOW_TARGET beacon). Send 0 to disable follow-me and return to the default position hold mode| RESERVED| RESERVED| altitude flag: 0: Keep current altitude, 1: keep altitude difference to target, 2: go to a fixed altitude above home| altitude| RESERVED| TTL in seconds in which the MAV should go to the default position hold mode after a message rx timeout|  */
00370    MAV_CMD_DO_FOLLOW_REPOSITION=33, /* Reposition the MAV after a follow target command has been sent |Camera q1 (where 0 is on the ray from the camera to the tracking device)| Camera q2| Camera q3| Camera q4| altitude offset from target (m)| X offset from target (m)| Y offset from target (m)|  */
00371    MAV_CMD_NAV_ROI=80, /* Sets the region of interest (ROI) for a sensor set or the vehicle itself. This can then be used by the vehicles control system to control the vehicle attitude and the attitude of various sensors such as cameras. |Region of intereset mode. (see MAV_ROI enum)| MISSION index/ target ID. (see MAV_ROI enum)| ROI index (allows a vehicle to manage multiple ROI's)| Empty| x the location of the fixed ROI (see MAV_FRAME)| y| z|  */
00372    MAV_CMD_NAV_PATHPLANNING=81, /* Control autonomous path planning on the MAV. |0: Disable local obstacle avoidance / local path planning (without resetting map), 1: Enable local path planning, 2: Enable and reset local path planning| 0: Disable full path planning (without resetting map), 1: Enable, 2: Enable and reset map/occupancy grid, 3: Enable and reset planned route, but not occupancy grid| Empty| Yaw angle at goal, in compass degrees, [0..360]| Latitude/X of goal| Longitude/Y of goal| Altitude/Z of goal|  */
00373    MAV_CMD_NAV_SPLINE_WAYPOINT=82, /* Navigate to MISSION using a spline path. |Hold time in decimal seconds. (ignored by fixed wing, time to stay at MISSION for rotary wing)| Empty| Empty| Empty| Latitude/X of goal| Longitude/Y of goal| Altitude/Z of goal|  */
00374    MAV_CMD_NAV_VTOL_TAKEOFF=84, /* Takeoff from ground using VTOL mode |Empty| Empty| Empty| Yaw angle in degrees| Latitude| Longitude| Altitude|  */
00375    MAV_CMD_NAV_VTOL_LAND=85, /* Land using VTOL mode |Empty| Empty| Empty| Yaw angle in degrees| Latitude| Longitude| Altitude|  */
00376    MAV_CMD_NAV_GUIDED_ENABLE=92, /* hand control over to an external controller |On / Off (> 0.5f on)| Empty| Empty| Empty| Empty| Empty| Empty|  */
00377    MAV_CMD_NAV_DELAY=93, /* Delay the next navigation command a number of seconds or until a specified time |Delay in seconds (decimal, -1 to enable time-of-day fields)| hour (24h format, UTC, -1 to ignore)| minute (24h format, UTC, -1 to ignore)| second (24h format, UTC)| Empty| Empty| Empty|  */
00378    MAV_CMD_NAV_LAST=95, /* NOP - This command is only used to mark the upper limit of the NAV/ACTION commands in the enumeration |Empty| Empty| Empty| Empty| Empty| Empty| Empty|  */
00379    MAV_CMD_CONDITION_DELAY=112, /* Delay mission state machine. |Delay in seconds (decimal)| Empty| Empty| Empty| Empty| Empty| Empty|  */
00380    MAV_CMD_CONDITION_CHANGE_ALT=113, /* Ascend/descend at rate.  Delay mission state machine until desired altitude reached. |Descent / Ascend rate (m/s)| Empty| Empty| Empty| Empty| Empty| Finish Altitude|  */
00381    MAV_CMD_CONDITION_DISTANCE=114, /* Delay mission state machine until within desired distance of next NAV point. |Distance (meters)| Empty| Empty| Empty| Empty| Empty| Empty|  */
00382    MAV_CMD_CONDITION_YAW=115, /* Reach a certain target angle. |target angle: [0-360], 0 is north| speed during yaw change:[deg per second]| direction: negative: counter clockwise, positive: clockwise [-1,1]| relative offset or absolute angle: [ 1,0]| Empty| Empty| Empty|  */
00383    MAV_CMD_CONDITION_LAST=159, /* NOP - This command is only used to mark the upper limit of the CONDITION commands in the enumeration |Empty| Empty| Empty| Empty| Empty| Empty| Empty|  */
00384    MAV_CMD_DO_SET_MODE=176, /* Set system mode. |Mode, as defined by ENUM MAV_MODE| Custom mode - this is system specific, please refer to the individual autopilot specifications for details.| Custom sub mode - this is system specific, please refer to the individual autopilot specifications for details.| Empty| Empty| Empty| Empty|  */
00385    MAV_CMD_DO_JUMP=177, /* Jump to the desired command in the mission list.  Repeat this action only the specified number of times |Sequence number| Repeat count| Empty| Empty| Empty| Empty| Empty|  */
00386    MAV_CMD_DO_CHANGE_SPEED=178, /* Change speed and/or throttle set points. |Speed type (0=Airspeed, 1=Ground Speed)| Speed  (m/s, -1 indicates no change)| Throttle  ( Percent, -1 indicates no change)| absolute or relative [0,1]| Empty| Empty| Empty|  */
00387    MAV_CMD_DO_SET_HOME=179, /* Changes the home location either to the current location or a specified location. |Use current (1=use current location, 0=use specified location)| Empty| Empty| Empty| Latitude| Longitude| Altitude|  */
00388    MAV_CMD_DO_SET_PARAMETER=180, /* Set a system parameter.  Caution!  Use of this command requires knowledge of the numeric enumeration value of the parameter. |Parameter number| Parameter value| Empty| Empty| Empty| Empty| Empty|  */
00389    MAV_CMD_DO_SET_RELAY=181, /* Set a relay to a condition. |Relay number| Setting (1=on, 0=off, others possible depending on system hardware)| Empty| Empty| Empty| Empty| Empty|  */
00390    MAV_CMD_DO_REPEAT_RELAY=182, /* Cycle a relay on and off for a desired number of cyles with a desired period. |Relay number| Cycle count| Cycle time (seconds, decimal)| Empty| Empty| Empty| Empty|  */
00391    MAV_CMD_DO_SET_SERVO=183, /* Set a servo to a desired PWM value. |Servo number| PWM (microseconds, 1000 to 2000 typical)| Empty| Empty| Empty| Empty| Empty|  */
00392    MAV_CMD_DO_REPEAT_SERVO=184, /* Cycle a between its nominal setting and a desired PWM for a desired number of cycles with a desired period. |Servo number| PWM (microseconds, 1000 to 2000 typical)| Cycle count| Cycle time (seconds)| Empty| Empty| Empty|  */
00393    MAV_CMD_DO_FLIGHTTERMINATION=185, /* Terminate flight immediately |Flight termination activated if > 0.5| Empty| Empty| Empty| Empty| Empty| Empty|  */
00394    MAV_CMD_DO_CHANGE_ALTITUDE=186, /* Change altitude set point. |Altitude in meters| Mav frame of new altitude (see MAV_FRAME)| Empty| Empty| Empty| Empty| Empty|  */
00395    MAV_CMD_DO_LAND_START=189, /* Mission command to perform a landing. This is used as a marker in a mission to tell the autopilot where a sequence of mission items that represents a landing starts. It may also be sent via a COMMAND_LONG to trigger a landing, in which case the nearest (geographically) landing sequence in the mission will be used. The Latitude/Longitude is optional, and may be set to 0/0 if not needed. If specified then it will be used to help find the closest landing sequence. |Empty| Empty| Empty| Empty| Latitude| Longitude| Empty|  */
00396    MAV_CMD_DO_RALLY_LAND=190, /* Mission command to perform a landing from a rally point. |Break altitude (meters)| Landing speed (m/s)| Empty| Empty| Empty| Empty| Empty|  */
00397    MAV_CMD_DO_GO_AROUND=191, /* Mission command to safely abort an autonmous landing. |Altitude (meters)| Empty| Empty| Empty| Empty| Empty| Empty|  */
00398    MAV_CMD_DO_REPOSITION=192, /* Reposition the vehicle to a specific WGS84 global position. |Ground speed, less than 0 (-1) for default| Bitmask of option flags, see the MAV_DO_REPOSITION_FLAGS enum.| Reserved| Yaw heading, NaN for unchanged. For planes indicates loiter direction (0: clockwise, 1: counter clockwise)| Latitude (deg * 1E7)| Longitude (deg * 1E7)| Altitude (meters)|  */
00399    MAV_CMD_DO_PAUSE_CONTINUE=193, /* If in a GPS controlled position mode, hold the current position or continue. |0: Pause current mission or reposition command, hold current position. 1: Continue mission. A VTOL capable vehicle should enter hover mode (multicopter and VTOL planes). A plane should loiter with the default loiter radius.| Reserved| Reserved| Reserved| Reserved| Reserved| Reserved|  */
00400    MAV_CMD_DO_SET_REVERSE=194, /* Set moving direction to forward or reverse. |Direction (0=Forward, 1=Reverse)| Empty| Empty| Empty| Empty| Empty| Empty|  */
00401    MAV_CMD_DO_CONTROL_VIDEO=200, /* Control onboard camera system. |Camera ID (-1 for all)| Transmission: 0: disabled, 1: enabled compressed, 2: enabled raw| Transmission mode: 0: video stream, >0: single images every n seconds (decimal)| Recording: 0: disabled, 1: enabled compressed, 2: enabled raw| Empty| Empty| Empty|  */
00402    MAV_CMD_DO_SET_ROI=201, /* Sets the region of interest (ROI) for a sensor set or the vehicle itself. This can then be used by the vehicles control system to control the vehicle attitude and the attitude of various sensors such as cameras. |Region of intereset mode. (see MAV_ROI enum)| MISSION index/ target ID. (see MAV_ROI enum)| ROI index (allows a vehicle to manage multiple ROI's)| Empty| x the location of the fixed ROI (see MAV_FRAME)| y| z|  */
00403    MAV_CMD_DO_DIGICAM_CONFIGURE=202, /* Mission command to configure an on-board camera controller system. |Modes: P, TV, AV, M, Etc| Shutter speed: Divisor number for one second| Aperture: F stop number| ISO number e.g. 80, 100, 200, Etc| Exposure type enumerator| Command Identity| Main engine cut-off time before camera trigger in seconds/10 (0 means no cut-off)|  */
00404    MAV_CMD_DO_DIGICAM_CONTROL=203, /* Mission command to control an on-board camera controller system. |Session control e.g. show/hide lens| Zoom's absolute position| Zooming step value to offset zoom from the current position| Focus Locking, Unlocking or Re-locking| Shooting Command| Command Identity| Empty|  */
00405    MAV_CMD_DO_MOUNT_CONFIGURE=204, /* Mission command to configure a camera or antenna mount |Mount operation mode (see MAV_MOUNT_MODE enum)| stabilize roll? (1 = yes, 0 = no)| stabilize pitch? (1 = yes, 0 = no)| stabilize yaw? (1 = yes, 0 = no)| Empty| Empty| Empty|  */
00406    MAV_CMD_DO_MOUNT_CONTROL=205, /* Mission command to control a camera or antenna mount |pitch (WIP: DEPRECATED: or lat in degrees) depending on mount mode.| roll (WIP: DEPRECATED: or lon in degrees) depending on mount mode.| yaw (WIP: DEPRECATED: or alt in meters) depending on mount mode.| WIP: alt in meters depending on mount mode.| WIP: latitude in degrees * 1E7, set if appropriate mount mode.| WIP: longitude in degrees * 1E7, set if appropriate mount mode.| MAV_MOUNT_MODE enum value|  */
00407    MAV_CMD_DO_SET_CAM_TRIGG_DIST=206, /* Mission command to set CAM_TRIGG_DIST for this flight |Camera trigger distance (meters)| Empty| Empty| Empty| Empty| Empty| Empty|  */
00408    MAV_CMD_DO_FENCE_ENABLE=207, /* Mission command to enable the geofence |enable? (0=disable, 1=enable, 2=disable_floor_only)| Empty| Empty| Empty| Empty| Empty| Empty|  */
00409    MAV_CMD_DO_PARACHUTE=208, /* Mission command to trigger a parachute |action (0=disable, 1=enable, 2=release, for some systems see PARACHUTE_ACTION enum, not in general message set.)| Empty| Empty| Empty| Empty| Empty| Empty|  */
00410    MAV_CMD_DO_MOTOR_TEST=209, /* Mission command to perform motor test |motor sequence number (a number from 1 to max number of motors on the vehicle)| throttle type (0=throttle percentage, 1=PWM, 2=pilot throttle channel pass-through. See MOTOR_TEST_THROTTLE_TYPE enum)| throttle| timeout (in seconds)| Empty| Empty| Empty|  */
00411    MAV_CMD_DO_INVERTED_FLIGHT=210, /* Change to/from inverted flight |inverted (0=normal, 1=inverted)| Empty| Empty| Empty| Empty| Empty| Empty|  */
00412    MAV_CMD_NAV_SET_YAW_SPEED=213, /* Sets a desired vehicle turn angle and speed change |yaw angle to adjust steering by in centidegress| speed - normalized to 0 .. 1| Empty| Empty| Empty| Empty| Empty|  */
00413    MAV_CMD_DO_MOUNT_CONTROL_QUAT=220, /* Mission command to control a camera or antenna mount, using a quaternion as reference. |q1 - quaternion param #1, w (1 in null-rotation)| q2 - quaternion param #2, x (0 in null-rotation)| q3 - quaternion param #3, y (0 in null-rotation)| q4 - quaternion param #4, z (0 in null-rotation)| Empty| Empty| Empty|  */
00414    MAV_CMD_DO_GUIDED_MASTER=221, /* set id of master controller |System ID| Component ID| Empty| Empty| Empty| Empty| Empty|  */
00415    MAV_CMD_DO_GUIDED_LIMITS=222, /* set limits for external control |timeout - maximum time (in seconds) that external controller will be allowed to control vehicle. 0 means no timeout| absolute altitude min (in meters, AMSL) - if vehicle moves below this alt, the command will be aborted and the mission will continue.  0 means no lower altitude limit| absolute altitude max (in meters)- if vehicle moves above this alt, the command will be aborted and the mission will continue.  0 means no upper altitude limit| horizontal move limit (in meters, AMSL) - if vehicle moves more than this distance from it's location at the moment the command was executed, the command will be aborted and the mission will continue. 0 means no horizontal altitude limit| Empty| Empty| Empty|  */
00416    MAV_CMD_DO_ENGINE_CONTROL=223, /* Control vehicle engine. This is interpreted by the vehicles engine controller to change the target engine state. It is intended for vehicles with internal combustion engines |0: Stop engine, 1:Start Engine| 0: Warm start, 1:Cold start. Controls use of choke where applicable| Height delay (meters). This is for commanding engine start only after the vehicle has gained the specified height. Used in VTOL vehicles during takeoff to start engine after the aircraft is off the ground. Zero for no delay.| Empty| Empty| Empty| Empty| Empty|  */
00417    MAV_CMD_DO_LAST=240, /* NOP - This command is only used to mark the upper limit of the DO commands in the enumeration |Empty| Empty| Empty| Empty| Empty| Empty| Empty|  */
00418    MAV_CMD_PREFLIGHT_CALIBRATION=241, /* Trigger calibration. This command will be only accepted if in pre-flight mode. |Gyro calibration: 0: no, 1: yes| Magnetometer calibration: 0: no, 1: yes| Ground pressure: 0: no, 1: yes| Radio calibration: 0: no, 1: yes| Accelerometer calibration: 0: no, 1: yes| Compass/Motor interference calibration: 0: no, 1: yes| Empty|  */
00419    MAV_CMD_PREFLIGHT_SET_SENSOR_OFFSETS=242, /* Set sensor offsets. This command will be only accepted if in pre-flight mode. |Sensor to adjust the offsets for: 0: gyros, 1: accelerometer, 2: magnetometer, 3: barometer, 4: optical flow, 5: second magnetometer, 6: third magnetometer| X axis offset (or generic dimension 1), in the sensor's raw units| Y axis offset (or generic dimension 2), in the sensor's raw units| Z axis offset (or generic dimension 3), in the sensor's raw units| Generic dimension 4, in the sensor's raw units| Generic dimension 5, in the sensor's raw units| Generic dimension 6, in the sensor's raw units|  */
00420    MAV_CMD_PREFLIGHT_UAVCAN=243, /* Trigger UAVCAN config. This command will be only accepted if in pre-flight mode. |1: Trigger actuator ID assignment and direction mapping.| Reserved| Reserved| Reserved| Reserved| Reserved| Reserved|  */
00421    MAV_CMD_PREFLIGHT_STORAGE=245, /* Request storage of different parameter values and logs. This command will be only accepted if in pre-flight mode. |Parameter storage: 0: READ FROM FLASH/EEPROM, 1: WRITE CURRENT TO FLASH/EEPROM, 2: Reset to defaults| Mission storage: 0: READ FROM FLASH/EEPROM, 1: WRITE CURRENT TO FLASH/EEPROM, 2: Reset to defaults| Onboard logging: 0: Ignore, 1: Start default rate logging, -1: Stop logging, > 1: start logging with rate of param 3 in Hz (e.g. set to 1000 for 1000 Hz logging)| Reserved| Empty| Empty| Empty|  */
00422    MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN=246, /* Request the reboot or shutdown of system components. |0: Do nothing for autopilot, 1: Reboot autopilot, 2: Shutdown autopilot, 3: Reboot autopilot and keep it in the bootloader until upgraded.| 0: Do nothing for onboard computer, 1: Reboot onboard computer, 2: Shutdown onboard computer, 3: Reboot onboard computer and keep it in the bootloader until upgraded.| WIP: 0: Do nothing for camera, 1: Reboot onboard camera, 2: Shutdown onboard camera, 3: Reboot onboard camera and keep it in the bootloader until upgraded| WIP: 0: Do nothing for mount (e.g. gimbal), 1: Reboot mount, 2: Shutdown mount, 3: Reboot mount and keep it in the bootloader until upgraded| Reserved, send 0| Reserved, send 0| WIP: ID (e.g. camera ID -1 for all IDs)|  */
00423    MAV_CMD_OVERRIDE_GOTO=252, /* Hold / continue the current action |MAV_GOTO_DO_HOLD: hold MAV_GOTO_DO_CONTINUE: continue with next item in mission plan| MAV_GOTO_HOLD_AT_CURRENT_POSITION: Hold at current position MAV_GOTO_HOLD_AT_SPECIFIED_POSITION: hold at specified position| MAV_FRAME coordinate frame of hold point| Desired yaw angle in degrees| Latitude / X position| Longitude / Y position| Altitude / Z position|  */
00424    MAV_CMD_MISSION_START=300, /* start running a mission |first_item: the first mission item to run| last_item:  the last mission item to run (after this item is run, the mission ends)|  */
00425    MAV_CMD_COMPONENT_ARM_DISARM=400, /* Arms / Disarms a component |1 to arm, 0 to disarm|  */
00426    MAV_CMD_GET_HOME_POSITION=410, /* Request the home position from the vehicle. |Reserved| Reserved| Reserved| Reserved| Reserved| Reserved| Reserved|  */
00427    MAV_CMD_START_RX_PAIR=500, /* Starts receiver pairing |0:Spektrum| 0:Spektrum DSM2, 1:Spektrum DSMX|  */
00428    MAV_CMD_GET_MESSAGE_INTERVAL=510, /* Request the interval between messages for a particular MAVLink message ID |The MAVLink message ID|  */
00429    MAV_CMD_SET_MESSAGE_INTERVAL=511, /* Request the interval between messages for a particular MAVLink message ID. This interface replaces REQUEST_DATA_STREAM |The MAVLink message ID| The interval between two messages, in microseconds. Set to -1 to disable and 0 to request default rate.|  */
00430    MAV_CMD_REQUEST_AUTOPILOT_CAPABILITIES=520, /* Request autopilot capabilities |1: Request autopilot version| Reserved (all remaining params)|  */
00431    MAV_CMD_REQUEST_CAMERA_INFORMATION=521, /* WIP: Request camera information (CAMERA_INFORMATION) |1: Request camera capabilities| Camera ID| Reserved (all remaining params)|  */
00432    MAV_CMD_REQUEST_CAMERA_SETTINGS=522, /* WIP: Request camera settings (CAMERA_SETTINGS) |1: Request camera settings| Camera ID| Reserved (all remaining params)|  */
00433    MAV_CMD_SET_CAMERA_SETTINGS_1=523, /* WIP: Set the camera settings part 1 (CAMERA_SETTINGS) |Camera ID| Aperture (1/value)| Aperture locked (0: auto, 1: locked)| Shutter speed in s| Shutter speed locked (0: auto, 1: locked)| ISO sensitivity| ISO sensitivity locked (0: auto, 1: locked)|  */
00434    MAV_CMD_SET_CAMERA_SETTINGS_2=524, /* WIP: Set the camera settings part 2 (CAMERA_SETTINGS) |Camera ID| White balance locked (0: auto, 1: locked)| White balance (color temperature in K)| Reserved for camera mode ID| Reserved for color mode ID| Reserved for image format ID| Reserved|  */
00435    MAV_CMD_REQUEST_STORAGE_INFORMATION=525, /* WIP: Request storage information (STORAGE_INFORMATION) |1: Request storage information| Storage ID| Reserved (all remaining params)|  */
00436    MAV_CMD_STORAGE_FORMAT=526, /* WIP: Format a storage medium |1: Format storage| Storage ID| Reserved (all remaining params)|  */
00437    MAV_CMD_REQUEST_CAMERA_CAPTURE_STATUS=527, /* WIP: Request camera capture status (CAMERA_CAPTURE_STATUS) |1: Request camera capture status| Camera ID| Reserved (all remaining params)|  */
00438    MAV_CMD_REQUEST_FLIGHT_INFORMATION=528, /* WIP: Request flight information (FLIGHT_INFORMATION) |1: Request flight information| Reserved (all remaining params)|  */
00439    MAV_CMD_IMAGE_START_CAPTURE=2000, /* Start image capture sequence |Duration between two consecutive pictures (in seconds)| Number of images to capture total - 0 for unlimited capture| Resolution in megapixels (0.3 for 640x480, 1.3 for 1280x720, etc), set to 0 if param 4/5 are used| WIP: Resolution horizontal in pixels| WIP: Resolution horizontal in pixels| WIP: Camera ID|  */
00440    MAV_CMD_IMAGE_STOP_CAPTURE=2001, /* Stop image capture sequence |Camera ID| Reserved|  */
00441    MAV_CMD_DO_TRIGGER_CONTROL=2003, /* Enable or disable on-board camera triggering system. |Trigger enable/disable (0 for disable, 1 for start)| Shutter integration time (in ms)| Reserved|  */
00442    MAV_CMD_VIDEO_START_CAPTURE=2500, /* Starts video capture |Camera ID (0 for all cameras), 1 for first, 2 for second, etc.| Frames per second| Resolution in megapixels (0.3 for 640x480, 1.3 for 1280x720, etc), set to 0 if param 4/5 are used| WIP: Resolution horizontal in pixels| WIP: Resolution horizontal in pixels|  */
00443    MAV_CMD_VIDEO_STOP_CAPTURE=2501, /* Stop the current video capture |WIP: Camera ID| Reserved|  */
00444    MAV_CMD_LOGGING_START=2510, /* Request to start streaming logging data over MAVLink (see also LOGGING_DATA message) |Format: 0: ULog| Reserved (set to 0)| Reserved (set to 0)| Reserved (set to 0)| Reserved (set to 0)| Reserved (set to 0)| Reserved (set to 0)|  */
00445    MAV_CMD_LOGGING_STOP=2511, /* Request to stop streaming log data over MAVLink |Reserved (set to 0)| Reserved (set to 0)| Reserved (set to 0)| Reserved (set to 0)| Reserved (set to 0)| Reserved (set to 0)| Reserved (set to 0)|  */
00446    MAV_CMD_AIRFRAME_CONFIGURATION=2520, /*  |Landing gear ID (default: 0, -1 for all)| Landing gear position (Down: 0, Up: 1, NAN for no change)| Reserved, set to NAN| Reserved, set to NAN| Reserved, set to NAN| Reserved, set to NAN| Reserved, set to NAN|  */
00447    MAV_CMD_PANORAMA_CREATE=2800, /* Create a panorama at the current position |Viewing angle horizontal of the panorama (in degrees, +- 0.5 the total angle)| Viewing angle vertical of panorama (in degrees)| Speed of the horizontal rotation (in degrees per second)| Speed of the vertical rotation (in degrees per second)|  */
00448    MAV_CMD_DO_VTOL_TRANSITION=3000, /* Request VTOL transition |The target VTOL state, as defined by ENUM MAV_VTOL_STATE. Only MAV_VTOL_STATE_MC and MAV_VTOL_STATE_FW can be used.|  */
00449    MAV_CMD_SET_GUIDED_SUBMODE_STANDARD=4000, /* This command sets the submode to standard guided when vehicle is in guided mode. The vehicle holds position and altitude and the user can input the desired velocites along all three axes.
00450                    | */
00451    MAV_CMD_SET_GUIDED_SUBMODE_CIRCLE=4001, /* This command sets submode circle when vehicle is in guided mode. Vehicle flies along a circle facing the center of the circle. The user can input the velocity along the circle and change the radius. If no input is given the vehicle will hold position.
00452                    |Radius of desired circle in CIRCLE_MODE| User defined| User defined| User defined| Unscaled target latitude of center of circle in CIRCLE_MODE| Unscaled target longitude of center of circle in CIRCLE_MODE|  */
00453    MAV_CMD_PAYLOAD_PREPARE_DEPLOY=30001, /* Deploy payload on a Lat / Lon / Alt position. This includes the navigation to reach the required release position and velocity. |Operation mode. 0: prepare single payload deploy (overwriting previous requests), but do not execute it. 1: execute payload deploy immediately (rejecting further deploy commands during execution, but allowing abort). 2: add payload deploy to existing deployment list.| Desired approach vector in degrees compass heading (0..360). A negative value indicates the system can define the approach vector at will.| Desired ground speed at release time. This can be overriden by the airframe in case it needs to meet minimum airspeed. A negative value indicates the system can define the ground speed at will.| Minimum altitude clearance to the release position in meters. A negative value indicates the system can define the clearance at will.| Latitude unscaled for MISSION_ITEM or in 1e7 degrees for MISSION_ITEM_INT| Longitude unscaled for MISSION_ITEM or in 1e7 degrees for MISSION_ITEM_INT| Altitude, in meters AMSL|  */
00454    MAV_CMD_PAYLOAD_CONTROL_DEPLOY=30002, /* Control the payload deployment. |Operation mode. 0: Abort deployment, continue normal mission. 1: switch to payload deploment mode. 100: delete first payload deployment request. 101: delete all payload deployment requests.| Reserved| Reserved| Reserved| Reserved| Reserved| Reserved|  */
00455    MAV_CMD_WAYPOINT_USER_1=31000, /* User defined waypoint item. Ground Station will show the Vehicle as flying through this item. |User defined| User defined| User defined| User defined| Latitude unscaled| Longitude unscaled| Altitude, in meters AMSL|  */
00456    MAV_CMD_WAYPOINT_USER_2=31001, /* User defined waypoint item. Ground Station will show the Vehicle as flying through this item. |User defined| User defined| User defined| User defined| Latitude unscaled| Longitude unscaled| Altitude, in meters AMSL|  */
00457    MAV_CMD_WAYPOINT_USER_3=31002, /* User defined waypoint item. Ground Station will show the Vehicle as flying through this item. |User defined| User defined| User defined| User defined| Latitude unscaled| Longitude unscaled| Altitude, in meters AMSL|  */
00458    MAV_CMD_WAYPOINT_USER_4=31003, /* User defined waypoint item. Ground Station will show the Vehicle as flying through this item. |User defined| User defined| User defined| User defined| Latitude unscaled| Longitude unscaled| Altitude, in meters AMSL|  */
00459    MAV_CMD_WAYPOINT_USER_5=31004, /* User defined waypoint item. Ground Station will show the Vehicle as flying through this item. |User defined| User defined| User defined| User defined| Latitude unscaled| Longitude unscaled| Altitude, in meters AMSL|  */
00460    MAV_CMD_SPATIAL_USER_1=31005, /* User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. |User defined| User defined| User defined| User defined| Latitude unscaled| Longitude unscaled| Altitude, in meters AMSL|  */
00461    MAV_CMD_SPATIAL_USER_2=31006, /* User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. |User defined| User defined| User defined| User defined| Latitude unscaled| Longitude unscaled| Altitude, in meters AMSL|  */
00462    MAV_CMD_SPATIAL_USER_3=31007, /* User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. |User defined| User defined| User defined| User defined| Latitude unscaled| Longitude unscaled| Altitude, in meters AMSL|  */
00463    MAV_CMD_SPATIAL_USER_4=31008, /* User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. |User defined| User defined| User defined| User defined| Latitude unscaled| Longitude unscaled| Altitude, in meters AMSL|  */
00464    MAV_CMD_SPATIAL_USER_5=31009, /* User defined spatial item. Ground Station will not show the Vehicle as flying through this item. Example: ROI item. |User defined| User defined| User defined| User defined| Latitude unscaled| Longitude unscaled| Altitude, in meters AMSL|  */
00465    MAV_CMD_USER_1=31010, /* User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. |User defined| User defined| User defined| User defined| User defined| User defined| User defined|  */
00466    MAV_CMD_USER_2=31011, /* User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. |User defined| User defined| User defined| User defined| User defined| User defined| User defined|  */
00467    MAV_CMD_USER_3=31012, /* User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. |User defined| User defined| User defined| User defined| User defined| User defined| User defined|  */
00468    MAV_CMD_USER_4=31013, /* User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. |User defined| User defined| User defined| User defined| User defined| User defined| User defined|  */
00469    MAV_CMD_USER_5=31014, /* User defined command. Ground Station will not show the Vehicle as flying through this item. Example: MAV_CMD_DO_SET_PARAMETER item. |User defined| User defined| User defined| User defined| User defined| User defined| User defined|  */
00470    MAV_CMD_ENUM_END=31015, /*  | */
00471 } MAV_CMD;
00472 #endif
00473 
00474 /** @brief THIS INTERFACE IS DEPRECATED AS OF JULY 2015. Please use MESSAGE_INTERVAL instead. A data stream is not a fixed set of messages, but rather a
00475      recommendation to the autopilot software. Individual autopilots may or may not obey
00476      the recommended messages. */
00477 #ifndef HAVE_ENUM_MAV_DATA_STREAM
00478 #define HAVE_ENUM_MAV_DATA_STREAM
00479 typedef enum MAV_DATA_STREAM
00480 {
00481    MAV_DATA_STREAM_ALL=0, /* Enable all data streams | */
00482    MAV_DATA_STREAM_RAW_SENSORS=1, /* Enable IMU_RAW, GPS_RAW, GPS_STATUS packets. | */
00483    MAV_DATA_STREAM_EXTENDED_STATUS=2, /* Enable GPS_STATUS, CONTROL_STATUS, AUX_STATUS | */
00484    MAV_DATA_STREAM_RC_CHANNELS=3, /* Enable RC_CHANNELS_SCALED, RC_CHANNELS_RAW, SERVO_OUTPUT_RAW | */
00485    MAV_DATA_STREAM_RAW_CONTROLLER=4, /* Enable ATTITUDE_CONTROLLER_OUTPUT, POSITION_CONTROLLER_OUTPUT, NAV_CONTROLLER_OUTPUT. | */
00486    MAV_DATA_STREAM_POSITION=6, /* Enable LOCAL_POSITION, GLOBAL_POSITION/GLOBAL_POSITION_INT messages. | */
00487    MAV_DATA_STREAM_EXTRA1=10, /* Dependent on the autopilot | */
00488    MAV_DATA_STREAM_EXTRA2=11, /* Dependent on the autopilot | */
00489    MAV_DATA_STREAM_EXTRA3=12, /* Dependent on the autopilot | */
00490    MAV_DATA_STREAM_ENUM_END=13, /*  | */
00491 } MAV_DATA_STREAM;
00492 #endif
00493 
00494 /** @brief  The ROI (region of interest) for the vehicle. This can be
00495                 be used by the vehicle for camera/vehicle attitude alignment (see
00496                 MAV_CMD_NAV_ROI). */
00497 #ifndef HAVE_ENUM_MAV_ROI
00498 #define HAVE_ENUM_MAV_ROI
00499 typedef enum MAV_ROI
00500 {
00501    MAV_ROI_NONE=0, /* No region of interest. | */
00502    MAV_ROI_WPNEXT=1, /* Point toward next MISSION. | */
00503    MAV_ROI_WPINDEX=2, /* Point toward given MISSION. | */
00504    MAV_ROI_LOCATION=3, /* Point toward fixed location. | */
00505    MAV_ROI_TARGET=4, /* Point toward of given id. | */
00506    MAV_ROI_ENUM_END=5, /*  | */
00507 } MAV_ROI;
00508 #endif
00509 
00510 /** @brief ACK / NACK / ERROR values as a result of MAV_CMDs and for mission item transmission. */
00511 #ifndef HAVE_ENUM_MAV_CMD_ACK
00512 #define HAVE_ENUM_MAV_CMD_ACK
00513 typedef enum MAV_CMD_ACK
00514 {
00515    MAV_CMD_ACK_OK=1, /* Command / mission item is ok. | */
00516    MAV_CMD_ACK_ERR_FAIL=2, /* Generic error message if none of the other reasons fails or if no detailed error reporting is implemented. | */
00517    MAV_CMD_ACK_ERR_ACCESS_DENIED=3, /* The system is refusing to accept this command from this source / communication partner. | */
00518    MAV_CMD_ACK_ERR_NOT_SUPPORTED=4, /* Command or mission item is not supported, other commands would be accepted. | */
00519    MAV_CMD_ACK_ERR_COORDINATE_FRAME_NOT_SUPPORTED=5, /* The coordinate frame of this command / mission item is not supported. | */
00520    MAV_CMD_ACK_ERR_COORDINATES_OUT_OF_RANGE=6, /* The coordinate frame of this command is ok, but he coordinate values exceed the safety limits of this system. This is a generic error, please use the more specific error messages below if possible. | */
00521    MAV_CMD_ACK_ERR_X_LAT_OUT_OF_RANGE=7, /* The X or latitude value is out of range. | */
00522    MAV_CMD_ACK_ERR_Y_LON_OUT_OF_RANGE=8, /* The Y or longitude value is out of range. | */
00523    MAV_CMD_ACK_ERR_Z_ALT_OUT_OF_RANGE=9, /* The Z or altitude value is out of range. | */
00524    MAV_CMD_ACK_ENUM_END=10, /*  | */
00525 } MAV_CMD_ACK;
00526 #endif
00527 
00528 /** @brief Specifies the datatype of a MAVLink parameter. */
00529 #ifndef HAVE_ENUM_MAV_PARAM_TYPE
00530 #define HAVE_ENUM_MAV_PARAM_TYPE
00531 typedef enum MAV_PARAM_TYPE
00532 {
00533    MAV_PARAM_TYPE_UINT8=1, /* 8-bit unsigned integer | */
00534    MAV_PARAM_TYPE_INT8=2, /* 8-bit signed integer | */
00535    MAV_PARAM_TYPE_UINT16=3, /* 16-bit unsigned integer | */
00536    MAV_PARAM_TYPE_INT16=4, /* 16-bit signed integer | */
00537    MAV_PARAM_TYPE_UINT32=5, /* 32-bit unsigned integer | */
00538    MAV_PARAM_TYPE_INT32=6, /* 32-bit signed integer | */
00539    MAV_PARAM_TYPE_UINT64=7, /* 64-bit unsigned integer | */
00540    MAV_PARAM_TYPE_INT64=8, /* 64-bit signed integer | */
00541    MAV_PARAM_TYPE_REAL32=9, /* 32-bit floating-point | */
00542    MAV_PARAM_TYPE_REAL64=10, /* 64-bit floating-point | */
00543    MAV_PARAM_TYPE_ENUM_END=11, /*  | */
00544 } MAV_PARAM_TYPE;
00545 #endif
00546 
00547 /** @brief result from a mavlink command */
00548 #ifndef HAVE_ENUM_MAV_RESULT
00549 #define HAVE_ENUM_MAV_RESULT
00550 typedef enum MAV_RESULT
00551 {
00552    MAV_RESULT_ACCEPTED=0, /* Command ACCEPTED and EXECUTED | */
00553    MAV_RESULT_TEMPORARILY_REJECTED=1, /* Command TEMPORARY REJECTED/DENIED | */
00554    MAV_RESULT_DENIED=2, /* Command PERMANENTLY DENIED | */
00555    MAV_RESULT_UNSUPPORTED=3, /* Command UNKNOWN/UNSUPPORTED | */
00556    MAV_RESULT_FAILED=4, /* Command executed, but failed | */
00557    MAV_RESULT_ENUM_END=5, /*  | */
00558 } MAV_RESULT;
00559 #endif
00560 
00561 /** @brief result in a mavlink mission ack */
00562 #ifndef HAVE_ENUM_MAV_MISSION_RESULT
00563 #define HAVE_ENUM_MAV_MISSION_RESULT
00564 typedef enum MAV_MISSION_RESULT
00565 {
00566    MAV_MISSION_ACCEPTED=0, /* mission accepted OK | */
00567    MAV_MISSION_ERROR=1, /* generic error / not accepting mission commands at all right now | */
00568    MAV_MISSION_UNSUPPORTED_FRAME=2, /* coordinate frame is not supported | */
00569    MAV_MISSION_UNSUPPORTED=3, /* command is not supported | */
00570    MAV_MISSION_NO_SPACE=4, /* mission item exceeds storage space | */
00571    MAV_MISSION_INVALID=5, /* one of the parameters has an invalid value | */
00572    MAV_MISSION_INVALID_PARAM1=6, /* param1 has an invalid value | */
00573    MAV_MISSION_INVALID_PARAM2=7, /* param2 has an invalid value | */
00574    MAV_MISSION_INVALID_PARAM3=8, /* param3 has an invalid value | */
00575    MAV_MISSION_INVALID_PARAM4=9, /* param4 has an invalid value | */
00576    MAV_MISSION_INVALID_PARAM5_X=10, /* x/param5 has an invalid value | */
00577    MAV_MISSION_INVALID_PARAM6_Y=11, /* y/param6 has an invalid value | */
00578    MAV_MISSION_INVALID_PARAM7=12, /* param7 has an invalid value | */
00579    MAV_MISSION_INVALID_SEQUENCE=13, /* received waypoint out of sequence | */
00580    MAV_MISSION_DENIED=14, /* not accepting any mission commands from this communication partner | */
00581    MAV_MISSION_RESULT_ENUM_END=15, /*  | */
00582 } MAV_MISSION_RESULT;
00583 #endif
00584 
00585 /** @brief Indicates the severity level, generally used for status messages to indicate their relative urgency. Based on RFC-5424 using expanded definitions at: http://www.kiwisyslog.com/kb/info:-syslog-message-levels/. */
00586 #ifndef HAVE_ENUM_MAV_SEVERITY
00587 #define HAVE_ENUM_MAV_SEVERITY
00588 typedef enum MAV_SEVERITY
00589 {
00590    MAV_SEVERITY_EMERGENCY=0, /* System is unusable. This is a "panic" condition. | */
00591    MAV_SEVERITY_ALERT=1, /* Action should be taken immediately. Indicates error in non-critical systems. | */
00592    MAV_SEVERITY_CRITICAL=2, /* Action must be taken immediately. Indicates failure in a primary system. | */
00593    MAV_SEVERITY_ERROR=3, /* Indicates an error in secondary/redundant systems. | */
00594    MAV_SEVERITY_WARNING=4, /* Indicates about a possible future error if this is not resolved within a given timeframe. Example would be a low battery warning. | */
00595    MAV_SEVERITY_NOTICE=5, /* An unusual event has occured, though not an error condition. This should be investigated for the root cause. | */
00596    MAV_SEVERITY_INFO=6, /* Normal operational messages. Useful for logging. No action is required for these messages. | */
00597    MAV_SEVERITY_DEBUG=7, /* Useful non-operational messages that can assist in debugging. These should not occur during normal operation. | */
00598    MAV_SEVERITY_ENUM_END=8, /*  | */
00599 } MAV_SEVERITY;
00600 #endif
00601 
00602 /** @brief Power supply status flags (bitmask) */
00603 #ifndef HAVE_ENUM_MAV_POWER_STATUS
00604 #define HAVE_ENUM_MAV_POWER_STATUS
00605 typedef enum MAV_POWER_STATUS
00606 {
00607    MAV_POWER_STATUS_BRICK_VALID=1, /* main brick power supply valid | */
00608    MAV_POWER_STATUS_SERVO_VALID=2, /* main servo power supply valid for FMU | */
00609    MAV_POWER_STATUS_USB_CONNECTED=4, /* USB power is connected | */
00610    MAV_POWER_STATUS_PERIPH_OVERCURRENT=8, /* peripheral supply is in over-current state | */
00611    MAV_POWER_STATUS_PERIPH_HIPOWER_OVERCURRENT=16, /* hi-power peripheral supply is in over-current state | */
00612    MAV_POWER_STATUS_CHANGED=32, /* Power status has changed since boot | */
00613    MAV_POWER_STATUS_ENUM_END=33, /*  | */
00614 } MAV_POWER_STATUS;
00615 #endif
00616 
00617 /** @brief SERIAL_CONTROL device types */
00618 #ifndef HAVE_ENUM_SERIAL_CONTROL_DEV
00619 #define HAVE_ENUM_SERIAL_CONTROL_DEV
00620 typedef enum SERIAL_CONTROL_DEV
00621 {
00622    SERIAL_CONTROL_DEV_TELEM1=0, /* First telemetry port | */
00623    SERIAL_CONTROL_DEV_TELEM2=1, /* Second telemetry port | */
00624    SERIAL_CONTROL_DEV_GPS1=2, /* First GPS port | */
00625    SERIAL_CONTROL_DEV_GPS2=3, /* Second GPS port | */
00626    SERIAL_CONTROL_DEV_SHELL=10, /* system shell | */
00627    SERIAL_CONTROL_DEV_ENUM_END=11, /*  | */
00628 } SERIAL_CONTROL_DEV;
00629 #endif
00630 
00631 /** @brief SERIAL_CONTROL flags (bitmask) */
00632 #ifndef HAVE_ENUM_SERIAL_CONTROL_FLAG
00633 #define HAVE_ENUM_SERIAL_CONTROL_FLAG
00634 typedef enum SERIAL_CONTROL_FLAG
00635 {
00636    SERIAL_CONTROL_FLAG_REPLY=1, /* Set if this is a reply | */
00637    SERIAL_CONTROL_FLAG_RESPOND=2, /* Set if the sender wants the receiver to send a response as another SERIAL_CONTROL message | */
00638    SERIAL_CONTROL_FLAG_EXCLUSIVE=4, /* Set if access to the serial port should be removed from whatever driver is currently using it, giving exclusive access to the SERIAL_CONTROL protocol. The port can be handed back by sending a request without this flag set | */
00639    SERIAL_CONTROL_FLAG_BLOCKING=8, /* Block on writes to the serial port | */
00640    SERIAL_CONTROL_FLAG_MULTI=16, /* Send multiple replies until port is drained | */
00641    SERIAL_CONTROL_FLAG_ENUM_END=17, /*  | */
00642 } SERIAL_CONTROL_FLAG;
00643 #endif
00644 
00645 /** @brief Enumeration of distance sensor types */
00646 #ifndef HAVE_ENUM_MAV_DISTANCE_SENSOR
00647 #define HAVE_ENUM_MAV_DISTANCE_SENSOR
00648 typedef enum MAV_DISTANCE_SENSOR
00649 {
00650    MAV_DISTANCE_SENSOR_LASER=0, /* Laser rangefinder, e.g. LightWare SF02/F or PulsedLight units | */
00651    MAV_DISTANCE_SENSOR_ULTRASOUND=1, /* Ultrasound rangefinder, e.g. MaxBotix units | */
00652    MAV_DISTANCE_SENSOR_INFRARED=2, /* Infrared rangefinder, e.g. Sharp units | */
00653    MAV_DISTANCE_SENSOR_ENUM_END=3, /*  | */
00654 } MAV_DISTANCE_SENSOR;
00655 #endif
00656 
00657 /** @brief Enumeration of sensor orientation, according to its rotations */
00658 #ifndef HAVE_ENUM_MAV_SENSOR_ORIENTATION
00659 #define HAVE_ENUM_MAV_SENSOR_ORIENTATION
00660 typedef enum MAV_SENSOR_ORIENTATION
00661 {
00662    MAV_SENSOR_ROTATION_NONE=0, /* Roll: 0, Pitch: 0, Yaw: 0 | */
00663    MAV_SENSOR_ROTATION_YAW_45=1, /* Roll: 0, Pitch: 0, Yaw: 45 | */
00664    MAV_SENSOR_ROTATION_YAW_90=2, /* Roll: 0, Pitch: 0, Yaw: 90 | */
00665    MAV_SENSOR_ROTATION_YAW_135=3, /* Roll: 0, Pitch: 0, Yaw: 135 | */
00666    MAV_SENSOR_ROTATION_YAW_180=4, /* Roll: 0, Pitch: 0, Yaw: 180 | */
00667    MAV_SENSOR_ROTATION_YAW_225=5, /* Roll: 0, Pitch: 0, Yaw: 225 | */
00668    MAV_SENSOR_ROTATION_YAW_270=6, /* Roll: 0, Pitch: 0, Yaw: 270 | */
00669    MAV_SENSOR_ROTATION_YAW_315=7, /* Roll: 0, Pitch: 0, Yaw: 315 | */
00670    MAV_SENSOR_ROTATION_ROLL_180=8, /* Roll: 180, Pitch: 0, Yaw: 0 | */
00671    MAV_SENSOR_ROTATION_ROLL_180_YAW_45=9, /* Roll: 180, Pitch: 0, Yaw: 45 | */
00672    MAV_SENSOR_ROTATION_ROLL_180_YAW_90=10, /* Roll: 180, Pitch: 0, Yaw: 90 | */
00673    MAV_SENSOR_ROTATION_ROLL_180_YAW_135=11, /* Roll: 180, Pitch: 0, Yaw: 135 | */
00674    MAV_SENSOR_ROTATION_PITCH_180=12, /* Roll: 0, Pitch: 180, Yaw: 0 | */
00675    MAV_SENSOR_ROTATION_ROLL_180_YAW_225=13, /* Roll: 180, Pitch: 0, Yaw: 225 | */
00676    MAV_SENSOR_ROTATION_ROLL_180_YAW_270=14, /* Roll: 180, Pitch: 0, Yaw: 270 | */
00677    MAV_SENSOR_ROTATION_ROLL_180_YAW_315=15, /* Roll: 180, Pitch: 0, Yaw: 315 | */
00678    MAV_SENSOR_ROTATION_ROLL_90=16, /* Roll: 90, Pitch: 0, Yaw: 0 | */
00679    MAV_SENSOR_ROTATION_ROLL_90_YAW_45=17, /* Roll: 90, Pitch: 0, Yaw: 45 | */
00680    MAV_SENSOR_ROTATION_ROLL_90_YAW_90=18, /* Roll: 90, Pitch: 0, Yaw: 90 | */
00681    MAV_SENSOR_ROTATION_ROLL_90_YAW_135=19, /* Roll: 90, Pitch: 0, Yaw: 135 | */
00682    MAV_SENSOR_ROTATION_ROLL_270=20, /* Roll: 270, Pitch: 0, Yaw: 0 | */
00683    MAV_SENSOR_ROTATION_ROLL_270_YAW_45=21, /* Roll: 270, Pitch: 0, Yaw: 45 | */
00684    MAV_SENSOR_ROTATION_ROLL_270_YAW_90=22, /* Roll: 270, Pitch: 0, Yaw: 90 | */
00685    MAV_SENSOR_ROTATION_ROLL_270_YAW_135=23, /* Roll: 270, Pitch: 0, Yaw: 135 | */
00686    MAV_SENSOR_ROTATION_PITCH_90=24, /* Roll: 0, Pitch: 90, Yaw: 0 | */
00687    MAV_SENSOR_ROTATION_PITCH_270=25, /* Roll: 0, Pitch: 270, Yaw: 0 | */
00688    MAV_SENSOR_ROTATION_PITCH_180_YAW_90=26, /* Roll: 0, Pitch: 180, Yaw: 90 | */
00689    MAV_SENSOR_ROTATION_PITCH_180_YAW_270=27, /* Roll: 0, Pitch: 180, Yaw: 270 | */
00690    MAV_SENSOR_ROTATION_ROLL_90_PITCH_90=28, /* Roll: 90, Pitch: 90, Yaw: 0 | */
00691    MAV_SENSOR_ROTATION_ROLL_180_PITCH_90=29, /* Roll: 180, Pitch: 90, Yaw: 0 | */
00692    MAV_SENSOR_ROTATION_ROLL_270_PITCH_90=30, /* Roll: 270, Pitch: 90, Yaw: 0 | */
00693    MAV_SENSOR_ROTATION_ROLL_90_PITCH_180=31, /* Roll: 90, Pitch: 180, Yaw: 0 | */
00694    MAV_SENSOR_ROTATION_ROLL_270_PITCH_180=32, /* Roll: 270, Pitch: 180, Yaw: 0 | */
00695    MAV_SENSOR_ROTATION_ROLL_90_PITCH_270=33, /* Roll: 90, Pitch: 270, Yaw: 0 | */
00696    MAV_SENSOR_ROTATION_ROLL_180_PITCH_270=34, /* Roll: 180, Pitch: 270, Yaw: 0 | */
00697    MAV_SENSOR_ROTATION_ROLL_270_PITCH_270=35, /* Roll: 270, Pitch: 270, Yaw: 0 | */
00698    MAV_SENSOR_ROTATION_ROLL_90_PITCH_180_YAW_90=36, /* Roll: 90, Pitch: 180, Yaw: 90 | */
00699    MAV_SENSOR_ROTATION_ROLL_90_YAW_270=37, /* Roll: 90, Pitch: 0, Yaw: 270 | */
00700    MAV_SENSOR_ROTATION_ROLL_315_PITCH_315_YAW_315=38, /* Roll: 315, Pitch: 315, Yaw: 315 | */
00701    MAV_SENSOR_ORIENTATION_ENUM_END=39, /*  | */
00702 } MAV_SENSOR_ORIENTATION;
00703 #endif
00704 
00705 /** @brief Bitmask of (optional) autopilot capabilities (64 bit). If a bit is set, the autopilot supports this capability. */
00706 #ifndef HAVE_ENUM_MAV_PROTOCOL_CAPABILITY
00707 #define HAVE_ENUM_MAV_PROTOCOL_CAPABILITY
00708 typedef enum MAV_PROTOCOL_CAPABILITY
00709 {
00710    MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT=1, /* Autopilot supports MISSION float message type. | */
00711    MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT=2, /* Autopilot supports the new param float message type. | */
00712    MAV_PROTOCOL_CAPABILITY_MISSION_INT=4, /* Autopilot supports MISSION_INT scaled integer message type. | */
00713    MAV_PROTOCOL_CAPABILITY_COMMAND_INT=8, /* Autopilot supports COMMAND_INT scaled integer message type. | */
00714    MAV_PROTOCOL_CAPABILITY_PARAM_UNION=16, /* Autopilot supports the new param union message type. | */
00715    MAV_PROTOCOL_CAPABILITY_FTP=32, /* Autopilot supports the new FILE_TRANSFER_PROTOCOL message type. | */
00716    MAV_PROTOCOL_CAPABILITY_SET_ATTITUDE_TARGET=64, /* Autopilot supports commanding attitude offboard. | */
00717    MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_LOCAL_NED=128, /* Autopilot supports commanding position and velocity targets in local NED frame. | */
00718    MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_GLOBAL_INT=256, /* Autopilot supports commanding position and velocity targets in global scaled integers. | */
00719    MAV_PROTOCOL_CAPABILITY_TERRAIN=512, /* Autopilot supports terrain protocol / data handling. | */
00720    MAV_PROTOCOL_CAPABILITY_SET_ACTUATOR_TARGET=1024, /* Autopilot supports direct actuator control. | */
00721    MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION=2048, /* Autopilot supports the flight termination command. | */
00722    MAV_PROTOCOL_CAPABILITY_COMPASS_CALIBRATION=4096, /* Autopilot supports onboard compass calibration. | */
00723    MAV_PROTOCOL_CAPABILITY_MAVLINK2=8192, /* Autopilot supports mavlink version 2. | */
00724    MAV_PROTOCOL_CAPABILITY_ENUM_END=8193, /*  | */
00725 } MAV_PROTOCOL_CAPABILITY;
00726 #endif
00727 
00728 /** @brief Enumeration of estimator types */
00729 #ifndef HAVE_ENUM_MAV_ESTIMATOR_TYPE
00730 #define HAVE_ENUM_MAV_ESTIMATOR_TYPE
00731 typedef enum MAV_ESTIMATOR_TYPE
00732 {
00733    MAV_ESTIMATOR_TYPE_NAIVE=1, /* This is a naive estimator without any real covariance feedback. | */
00734    MAV_ESTIMATOR_TYPE_VISION=2, /* Computer vision based estimate. Might be up to scale. | */
00735    MAV_ESTIMATOR_TYPE_VIO=3, /* Visual-inertial estimate. | */
00736    MAV_ESTIMATOR_TYPE_GPS=4, /* Plain GPS estimate. | */
00737    MAV_ESTIMATOR_TYPE_GPS_INS=5, /* Estimator integrating GPS and inertial sensing. | */
00738    MAV_ESTIMATOR_TYPE_ENUM_END=6, /*  | */
00739 } MAV_ESTIMATOR_TYPE;
00740 #endif
00741 
00742 /** @brief Enumeration of battery types */
00743 #ifndef HAVE_ENUM_MAV_BATTERY_TYPE
00744 #define HAVE_ENUM_MAV_BATTERY_TYPE
00745 typedef enum MAV_BATTERY_TYPE
00746 {
00747    MAV_BATTERY_TYPE_UNKNOWN=0, /* Not specified. | */
00748    MAV_BATTERY_TYPE_LIPO=1, /* Lithium polymer battery | */
00749    MAV_BATTERY_TYPE_LIFE=2, /* Lithium-iron-phosphate battery | */
00750    MAV_BATTERY_TYPE_LION=3, /* Lithium-ION battery | */
00751    MAV_BATTERY_TYPE_NIMH=4, /* Nickel metal hydride battery | */
00752    MAV_BATTERY_TYPE_ENUM_END=5, /*  | */
00753 } MAV_BATTERY_TYPE;
00754 #endif
00755 
00756 /** @brief Enumeration of battery functions */
00757 #ifndef HAVE_ENUM_MAV_BATTERY_FUNCTION
00758 #define HAVE_ENUM_MAV_BATTERY_FUNCTION
00759 typedef enum MAV_BATTERY_FUNCTION
00760 {
00761    MAV_BATTERY_FUNCTION_UNKNOWN=0, /* Battery function is unknown | */
00762    MAV_BATTERY_FUNCTION_ALL=1, /* Battery supports all flight systems | */
00763    MAV_BATTERY_FUNCTION_PROPULSION=2, /* Battery for the propulsion system | */
00764    MAV_BATTERY_FUNCTION_AVIONICS=3, /* Avionics battery | */
00765    MAV_BATTERY_TYPE_PAYLOAD=4, /* Payload battery | */
00766    MAV_BATTERY_FUNCTION_ENUM_END=5, /*  | */
00767 } MAV_BATTERY_FUNCTION;
00768 #endif
00769 
00770 /** @brief Enumeration of VTOL states */
00771 #ifndef HAVE_ENUM_MAV_VTOL_STATE
00772 #define HAVE_ENUM_MAV_VTOL_STATE
00773 typedef enum MAV_VTOL_STATE
00774 {
00775    MAV_VTOL_STATE_UNDEFINED=0, /* MAV is not configured as VTOL | */
00776    MAV_VTOL_STATE_TRANSITION_TO_FW=1, /* VTOL is in transition from multicopter to fixed-wing | */
00777    MAV_VTOL_STATE_TRANSITION_TO_MC=2, /* VTOL is in transition from fixed-wing to multicopter | */
00778    MAV_VTOL_STATE_MC=3, /* VTOL is in multicopter state | */
00779    MAV_VTOL_STATE_FW=4, /* VTOL is in fixed-wing state | */
00780    MAV_VTOL_STATE_ENUM_END=5, /*  | */
00781 } MAV_VTOL_STATE;
00782 #endif
00783 
00784 /** @brief Enumeration of landed detector states */
00785 #ifndef HAVE_ENUM_MAV_LANDED_STATE
00786 #define HAVE_ENUM_MAV_LANDED_STATE
00787 typedef enum MAV_LANDED_STATE
00788 {
00789    MAV_LANDED_STATE_UNDEFINED=0, /* MAV landed state is unknown | */
00790    MAV_LANDED_STATE_ON_GROUND=1, /* MAV is landed (on ground) | */
00791    MAV_LANDED_STATE_IN_AIR=2, /* MAV is in air | */
00792    MAV_LANDED_STATE_ENUM_END=3, /*  | */
00793 } MAV_LANDED_STATE;
00794 #endif
00795 
00796 /** @brief Enumeration of the ADSB altimeter types */
00797 #ifndef HAVE_ENUM_ADSB_ALTITUDE_TYPE
00798 #define HAVE_ENUM_ADSB_ALTITUDE_TYPE
00799 typedef enum ADSB_ALTITUDE_TYPE
00800 {
00801    ADSB_ALTITUDE_TYPE_PRESSURE_QNH=0, /* Altitude reported from a Baro source using QNH reference | */
00802    ADSB_ALTITUDE_TYPE_GEOMETRIC=1, /* Altitude reported from a GNSS source | */
00803    ADSB_ALTITUDE_TYPE_ENUM_END=2, /*  | */
00804 } ADSB_ALTITUDE_TYPE;
00805 #endif
00806 
00807 /** @brief ADSB classification for the type of vehicle emitting the transponder signal */
00808 #ifndef HAVE_ENUM_ADSB_EMITTER_TYPE
00809 #define HAVE_ENUM_ADSB_EMITTER_TYPE
00810 typedef enum ADSB_EMITTER_TYPE
00811 {
00812    ADSB_EMITTER_TYPE_NO_INFO=0, /*  | */
00813    ADSB_EMITTER_TYPE_LIGHT=1, /*  | */
00814    ADSB_EMITTER_TYPE_SMALL=2, /*  | */
00815    ADSB_EMITTER_TYPE_LARGE=3, /*  | */
00816    ADSB_EMITTER_TYPE_HIGH_VORTEX_LARGE=4, /*  | */
00817    ADSB_EMITTER_TYPE_HEAVY=5, /*  | */
00818    ADSB_EMITTER_TYPE_HIGHLY_MANUV=6, /*  | */
00819    ADSB_EMITTER_TYPE_ROTOCRAFT=7, /*  | */
00820    ADSB_EMITTER_TYPE_UNASSIGNED=8, /*  | */
00821    ADSB_EMITTER_TYPE_GLIDER=9, /*  | */
00822    ADSB_EMITTER_TYPE_LIGHTER_AIR=10, /*  | */
00823    ADSB_EMITTER_TYPE_PARACHUTE=11, /*  | */
00824    ADSB_EMITTER_TYPE_ULTRA_LIGHT=12, /*  | */
00825    ADSB_EMITTER_TYPE_UNASSIGNED2=13, /*  | */
00826    ADSB_EMITTER_TYPE_UAV=14, /*  | */
00827    ADSB_EMITTER_TYPE_SPACE=15, /*  | */
00828    ADSB_EMITTER_TYPE_UNASSGINED3=16, /*  | */
00829    ADSB_EMITTER_TYPE_EMERGENCY_SURFACE=17, /*  | */
00830    ADSB_EMITTER_TYPE_SERVICE_SURFACE=18, /*  | */
00831    ADSB_EMITTER_TYPE_POINT_OBSTACLE=19, /*  | */
00832    ADSB_EMITTER_TYPE_ENUM_END=20, /*  | */
00833 } ADSB_EMITTER_TYPE;
00834 #endif
00835 
00836 /** @brief These flags indicate status such as data validity of each data source. Set = data valid */
00837 #ifndef HAVE_ENUM_ADSB_FLAGS
00838 #define HAVE_ENUM_ADSB_FLAGS
00839 typedef enum ADSB_FLAGS
00840 {
00841    ADSB_FLAGS_VALID_COORDS=1, /*  | */
00842    ADSB_FLAGS_VALID_ALTITUDE=2, /*  | */
00843    ADSB_FLAGS_VALID_HEADING=4, /*  | */
00844    ADSB_FLAGS_VALID_VELOCITY=8, /*  | */
00845    ADSB_FLAGS_VALID_CALLSIGN=16, /*  | */
00846    ADSB_FLAGS_VALID_SQUAWK=32, /*  | */
00847    ADSB_FLAGS_SIMULATED=64, /*  | */
00848    ADSB_FLAGS_ENUM_END=65, /*  | */
00849 } ADSB_FLAGS;
00850 #endif
00851 
00852 /** @brief Bitmask of options for the MAV_CMD_DO_REPOSITION */
00853 #ifndef HAVE_ENUM_MAV_DO_REPOSITION_FLAGS
00854 #define HAVE_ENUM_MAV_DO_REPOSITION_FLAGS
00855 typedef enum MAV_DO_REPOSITION_FLAGS
00856 {
00857    MAV_DO_REPOSITION_FLAGS_CHANGE_MODE=1, /* The aircraft should immediately transition into guided. This should not be set for follow me applications | */
00858    MAV_DO_REPOSITION_FLAGS_ENUM_END=2, /*  | */
00859 } MAV_DO_REPOSITION_FLAGS;
00860 #endif
00861 
00862 /** @brief Flags in EKF_STATUS message */
00863 #ifndef HAVE_ENUM_ESTIMATOR_STATUS_FLAGS
00864 #define HAVE_ENUM_ESTIMATOR_STATUS_FLAGS
00865 typedef enum ESTIMATOR_STATUS_FLAGS
00866 {
00867    ESTIMATOR_ATTITUDE=1, /* True if the attitude estimate is good | */
00868    ESTIMATOR_VELOCITY_HORIZ=2, /* True if the horizontal velocity estimate is good | */
00869    ESTIMATOR_VELOCITY_VERT=4, /* True if the  vertical velocity estimate is good | */
00870    ESTIMATOR_POS_HORIZ_REL=8, /* True if the horizontal position (relative) estimate is good | */
00871    ESTIMATOR_POS_HORIZ_ABS=16, /* True if the horizontal position (absolute) estimate is good | */
00872    ESTIMATOR_POS_VERT_ABS=32, /* True if the vertical position (absolute) estimate is good | */
00873    ESTIMATOR_POS_VERT_AGL=64, /* True if the vertical position (above ground) estimate is good | */
00874    ESTIMATOR_CONST_POS_MODE=128, /* True if the EKF is in a constant position mode and is not using external measurements (eg GPS or optical flow) | */
00875    ESTIMATOR_PRED_POS_HORIZ_REL=256, /* True if the EKF has sufficient data to enter a mode that will provide a (relative) position estimate | */
00876    ESTIMATOR_PRED_POS_HORIZ_ABS=512, /* True if the EKF has sufficient data to enter a mode that will provide a (absolute) position estimate | */
00877    ESTIMATOR_GPS_GLITCH=1024, /* True if the EKF has detected a GPS glitch | */
00878    ESTIMATOR_STATUS_FLAGS_ENUM_END=1025, /*  | */
00879 } ESTIMATOR_STATUS_FLAGS;
00880 #endif
00881 
00882 /** @brief  */
00883 #ifndef HAVE_ENUM_MOTOR_TEST_THROTTLE_TYPE
00884 #define HAVE_ENUM_MOTOR_TEST_THROTTLE_TYPE
00885 typedef enum MOTOR_TEST_THROTTLE_TYPE
00886 {
00887    MOTOR_TEST_THROTTLE_PERCENT=0, /* throttle as a percentage from 0 ~ 100 | */
00888    MOTOR_TEST_THROTTLE_PWM=1, /* throttle as an absolute PWM value (normally in range of 1000~2000) | */
00889    MOTOR_TEST_THROTTLE_PILOT=2, /* throttle pass-through from pilot's transmitter | */
00890    MOTOR_TEST_THROTTLE_TYPE_ENUM_END=3, /*  | */
00891 } MOTOR_TEST_THROTTLE_TYPE;
00892 #endif
00893 
00894 /** @brief  */
00895 #ifndef HAVE_ENUM_GPS_INPUT_IGNORE_FLAGS
00896 #define HAVE_ENUM_GPS_INPUT_IGNORE_FLAGS
00897 typedef enum GPS_INPUT_IGNORE_FLAGS
00898 {
00899    GPS_INPUT_IGNORE_FLAG_ALT=1, /* ignore altitude field | */
00900    GPS_INPUT_IGNORE_FLAG_HDOP=2, /* ignore hdop field | */
00901    GPS_INPUT_IGNORE_FLAG_VDOP=4, /* ignore vdop field | */
00902    GPS_INPUT_IGNORE_FLAG_VEL_HORIZ=8, /* ignore horizontal velocity field (vn and ve) | */
00903    GPS_INPUT_IGNORE_FLAG_VEL_VERT=16, /* ignore vertical velocity field (vd) | */
00904    GPS_INPUT_IGNORE_FLAG_SPEED_ACCURACY=32, /* ignore speed accuracy field | */
00905    GPS_INPUT_IGNORE_FLAG_HORIZONTAL_ACCURACY=64, /* ignore horizontal accuracy field | */
00906    GPS_INPUT_IGNORE_FLAG_VERTICAL_ACCURACY=128, /* ignore vertical accuracy field | */
00907    GPS_INPUT_IGNORE_FLAGS_ENUM_END=129, /*  | */
00908 } GPS_INPUT_IGNORE_FLAGS;
00909 #endif
00910 
00911 /** @brief Possible actions an aircraft can take to avoid a collision. */
00912 #ifndef HAVE_ENUM_MAV_COLLISION_ACTION
00913 #define HAVE_ENUM_MAV_COLLISION_ACTION
00914 typedef enum MAV_COLLISION_ACTION
00915 {
00916    MAV_COLLISION_ACTION_NONE=0, /* Ignore any potential collisions | */
00917    MAV_COLLISION_ACTION_REPORT=1, /* Report potential collision | */
00918    MAV_COLLISION_ACTION_ASCEND_OR_DESCEND=2, /* Ascend or Descend to avoid threat | */
00919    MAV_COLLISION_ACTION_MOVE_HORIZONTALLY=3, /* Move horizontally to avoid threat | */
00920    MAV_COLLISION_ACTION_MOVE_PERPENDICULAR=4, /* Aircraft to move perpendicular to the collision's velocity vector | */
00921    MAV_COLLISION_ACTION_RTL=5, /* Aircraft to fly directly back to its launch point | */
00922    MAV_COLLISION_ACTION_HOVER=6, /* Aircraft to stop in place | */
00923    MAV_COLLISION_ACTION_ENUM_END=7, /*  | */
00924 } MAV_COLLISION_ACTION;
00925 #endif
00926 
00927 /** @brief Aircraft-rated danger from this threat. */
00928 #ifndef HAVE_ENUM_MAV_COLLISION_THREAT_LEVEL
00929 #define HAVE_ENUM_MAV_COLLISION_THREAT_LEVEL
00930 typedef enum MAV_COLLISION_THREAT_LEVEL
00931 {
00932    MAV_COLLISION_THREAT_LEVEL_NONE=0, /* Not a threat | */
00933    MAV_COLLISION_THREAT_LEVEL_LOW=1, /* Craft is mildly concerned about this threat | */
00934    MAV_COLLISION_THREAT_LEVEL_HIGH=2, /* Craft is panicing, and may take actions to avoid threat | */
00935    MAV_COLLISION_THREAT_LEVEL_ENUM_END=3, /*  | */
00936 } MAV_COLLISION_THREAT_LEVEL;
00937 #endif
00938 
00939 /** @brief Source of information about this collision. */
00940 #ifndef HAVE_ENUM_MAV_COLLISION_SRC
00941 #define HAVE_ENUM_MAV_COLLISION_SRC
00942 typedef enum MAV_COLLISION_SRC
00943 {
00944    MAV_COLLISION_SRC_ADSB=0, /* ID field references ADSB_VEHICLE packets | */
00945    MAV_COLLISION_SRC_MAVLINK_GPS_GLOBAL_INT=1, /* ID field references MAVLink SRC ID | */
00946    MAV_COLLISION_SRC_ENUM_END=2, /*  | */
00947 } MAV_COLLISION_SRC;
00948 #endif
00949 
00950 /** @brief Type of GPS fix */
00951 #ifndef HAVE_ENUM_GPS_FIX_TYPE
00952 #define HAVE_ENUM_GPS_FIX_TYPE
00953 typedef enum GPS_FIX_TYPE
00954 {
00955    GPS_FIX_TYPE_NO_GPS=0, /* No GPS connected | */
00956    GPS_FIX_TYPE_NO_FIX=1, /* No position information, GPS is connected | */
00957    GPS_FIX_TYPE_2D_FIX=2, /* 2D position | */
00958    GPS_FIX_TYPE_3D_FIX=3, /* 3D position | */
00959    GPS_FIX_TYPE_DGPS=4, /* DGPS/SBAS aided 3D position | */
00960    GPS_FIX_TYPE_RTK_FLOAT=5, /* RTK float, 3D position | */
00961    GPS_FIX_TYPE_RTK_FIXED=6, /* RTK Fixed, 3D position | */
00962    GPS_FIX_TYPE_STATIC=7, /* Static fixed, typically used for base stations | */
00963    GPS_FIX_TYPE_ENUM_END=8, /*  | */
00964 } GPS_FIX_TYPE;
00965 #endif
00966 
00967 // MAVLINK VERSION
00968 
00969 #ifndef MAVLINK_VERSION
00970 #define MAVLINK_VERSION 3
00971 #endif
00972 
00973 #if (MAVLINK_VERSION == 0)
00974 #undef MAVLINK_VERSION
00975 #define MAVLINK_VERSION 3
00976 #endif
00977 
00978 // MESSAGE DEFINITIONS
00979 //#include "./mavlink_msg_heartbeat.h"
00980 //#include "./mavlink_msg_sys_status.h"
00981 //#include "./mavlink_msg_system_time.h"
00982 //#include "./mavlink_msg_ping.h"
00983 //#include "./mavlink_msg_change_operator_control.h"
00984 //#include "./mavlink_msg_change_operator_control_ack.h"
00985 //#include "./mavlink_msg_auth_key.h"
00986 //#include "./mavlink_msg_set_mode.h"
00987 //#include "./mavlink_msg_param_request_read.h"
00988 //#include "./mavlink_msg_param_request_list.h"
00989 //#include "./mavlink_msg_param_value.h"
00990 //#include "./mavlink_msg_param_set.h"
00991 //#include "./mavlink_msg_gps_raw_int.h"
00992 //#include "./mavlink_msg_gps_status.h"
00993 //#include "./mavlink_msg_scaled_imu.h"
00994 //#include "./mavlink_msg_raw_imu.h"
00995 //#include "./mavlink_msg_raw_pressure.h"
00996 //#include "./mavlink_msg_scaled_pressure.h"
00997 //#include "./mavlink_msg_attitude.h"
00998 //#include "./mavlink_msg_attitude_quaternion.h"
00999 //#include "./mavlink_msg_local_position_ned.h"
01000 //#include "./mavlink_msg_global_position_int.h"
01001 //#include "./mavlink_msg_rc_channels_scaled.h"
01002 //#include "./mavlink_msg_rc_channels_raw.h"
01003 //#include "./mavlink_msg_servo_output_raw.h"
01004 //#include "./mavlink_msg_mission_request_partial_list.h"
01005 //#include "./mavlink_msg_mission_write_partial_list.h"
01006 //#include "./mavlink_msg_mission_item.h"
01007 //#include "./mavlink_msg_mission_request.h"
01008 //#include "./mavlink_msg_mission_set_current.h"
01009 //#include "./mavlink_msg_mission_current.h"
01010 //#include "./mavlink_msg_mission_request_list.h"
01011 //#include "./mavlink_msg_mission_count.h"
01012 //#include "./mavlink_msg_mission_clear_all.h"
01013 //#include "./mavlink_msg_mission_item_reached.h"
01014 //#include "./mavlink_msg_mission_ack.h"
01015 //#include "./mavlink_msg_set_gps_global_origin.h"
01016 //#include "./mavlink_msg_gps_global_origin.h"
01017 //#include "./mavlink_msg_param_map_rc.h"
01018 //#include "./mavlink_msg_mission_request_int.h"
01019 //#include "./mavlink_msg_safety_set_allowed_area.h"
01020 //#include "./mavlink_msg_safety_allowed_area.h"
01021 //#include "./mavlink_msg_attitude_quaternion_cov.h"
01022 //#include "./mavlink_msg_nav_controller_output.h"
01023 //#include "./mavlink_msg_global_position_int_cov.h"
01024 //#include "./mavlink_msg_local_position_ned_cov.h"
01025 //#include "./mavlink_msg_rc_channels.h"
01026 //#include "./mavlink_msg_request_data_stream.h"
01027 //#include "./mavlink_msg_data_stream.h"
01028 //#include "./mavlink_msg_manual_control.h"
01029 //#include "./mavlink_msg_rc_channels_override.h"
01030 //#include "./mavlink_msg_mission_item_int.h"
01031 //#include "./mavlink_msg_vfr_hud.h"
01032 //#include "./mavlink_msg_command_int.h"
01033 //#include "./mavlink_msg_command_long.h"
01034 //#include "./mavlink_msg_command_ack.h"
01035 //#include "./mavlink_msg_manual_setpoint.h"
01036 //#include "./mavlink_msg_set_attitude_target.h"
01037 //#include "./mavlink_msg_attitude_target.h"
01038 //#include "./mavlink_msg_set_position_target_local_ned.h"
01039 //#include "./mavlink_msg_position_target_local_ned.h"
01040 //#include "./mavlink_msg_set_position_target_global_int.h"
01041 //#include "./mavlink_msg_position_target_global_int.h"
01042 //#include "./mavlink_msg_local_position_ned_system_global_offset.h"
01043 //#include "./mavlink_msg_hil_state.h"
01044 //#include "./mavlink_msg_hil_controls.h"
01045 //#include "./mavlink_msg_hil_rc_inputs_raw.h"
01046 //#include "./mavlink_msg_hil_actuator_controls.h"
01047 //#include "./mavlink_msg_optical_flow.h"
01048 //#include "./mavlink_msg_global_vision_position_estimate.h"
01049 //#include "./mavlink_msg_vision_position_estimate.h"
01050 //#include "./mavlink_msg_vision_speed_estimate.h"
01051 //#include "./mavlink_msg_vicon_position_estimate.h"
01052 //#include "./mavlink_msg_highres_imu.h"
01053 //#include "./mavlink_msg_optical_flow_rad.h"
01054 //#include "./mavlink_msg_hil_sensor.h"
01055 //#include "./mavlink_msg_sim_state.h"
01056 //#include "./mavlink_msg_radio_status.h"
01057 //#include "./mavlink_msg_file_transfer_protocol.h"
01058 //#include "./mavlink_msg_timesync.h"
01059 //#include "./mavlink_msg_camera_trigger.h"
01060 //#include "./mavlink_msg_hil_gps.h"
01061 //#include "./mavlink_msg_hil_optical_flow.h"
01062 //#include "./mavlink_msg_hil_state_quaternion.h"
01063 //#include "./mavlink_msg_scaled_imu2.h"
01064 //#include "./mavlink_msg_log_request_list.h"
01065 //#include "./mavlink_msg_log_entry.h"
01066 //#include "./mavlink_msg_log_request_data.h"
01067 //#include "./mavlink_msg_log_data.h"
01068 //#include "./mavlink_msg_log_erase.h"
01069 //#include "./mavlink_msg_log_request_end.h"
01070 //#include "./mavlink_msg_gps_inject_data.h"
01071 //#include "./mavlink_msg_gps2_raw.h"
01072 //#include "./mavlink_msg_power_status.h"
01073 //#include "./mavlink_msg_serial_control.h"
01074 //#include "./mavlink_msg_gps_rtk.h"
01075 //#include "./mavlink_msg_gps2_rtk.h"
01076 //#include "./mavlink_msg_scaled_imu3.h"
01077 //#include "./mavlink_msg_data_transmission_handshake.h"
01078 //#include "./mavlink_msg_encapsulated_data.h"
01079 //#include "./mavlink_msg_distance_sensor.h"
01080 //#include "./mavlink_msg_terrain_request.h"
01081 //#include "./mavlink_msg_terrain_data.h"
01082 //#include "./mavlink_msg_terrain_check.h"
01083 //#include "./mavlink_msg_terrain_report.h"
01084 //#include "./mavlink_msg_scaled_pressure2.h"
01085 #include "./mavlink_msg_att_pos_mocap.h"
01086 //#include "./mavlink_msg_set_actuator_control_target.h"
01087 //#include "./mavlink_msg_actuator_control_target.h"
01088 //#include "./mavlink_msg_altitude.h"
01089 //#include "./mavlink_msg_resource_request.h"
01090 //#include "./mavlink_msg_scaled_pressure3.h"
01091 //#include "./mavlink_msg_follow_target.h"
01092 //#include "./mavlink_msg_control_system_state.h"
01093 //#include "./mavlink_msg_battery_status.h"
01094 //#include "./mavlink_msg_autopilot_version.h"
01095 //#include "./mavlink_msg_landing_target.h"
01096 //#include "./mavlink_msg_estimator_status.h"
01097 //#include "./mavlink_msg_wind_cov.h"
01098 //#include "./mavlink_msg_gps_input.h"
01099 //#include "./mavlink_msg_gps_rtcm_data.h"
01100 //#include "./mavlink_msg_high_latency.h"
01101 //#include "./mavlink_msg_vibration.h"
01102 //#include "./mavlink_msg_home_position.h"
01103 //#include "./mavlink_msg_set_home_position.h"
01104 //#include "./mavlink_msg_message_interval.h"
01105 //#include "./mavlink_msg_extended_sys_state.h"
01106 //#include "./mavlink_msg_adsb_vehicle.h"
01107 //#include "./mavlink_msg_collision.h"
01108 //#include "./mavlink_msg_v2_extension.h"
01109 //#include "./mavlink_msg_memory_vect.h"
01110 //#include "./mavlink_msg_debug_vect.h"
01111 //#include "./mavlink_msg_named_value_float.h"
01112 //#include "./mavlink_msg_named_value_int.h"
01113 //#include "./mavlink_msg_statustext.h"
01114 //#include "./mavlink_msg_debug.h"
01115 
01116 // base include
01117 
01118 
01119 #undef MAVLINK_THIS_XML_IDX
01120 #define MAVLINK_THIS_XML_IDX 0
01121 
01122 #if MAVLINK_THIS_XML_IDX == MAVLINK_PRIMARY_XML_IDX
01123 # define MAVLINK_MESSAGE_INFO {MAVLINK_MESSAGE_INFO_HEARTBEAT, MAVLINK_MESSAGE_INFO_SYS_STATUS, MAVLINK_MESSAGE_INFO_SYSTEM_TIME, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_PING, MAVLINK_MESSAGE_INFO_CHANGE_OPERATOR_CONTROL, MAVLINK_MESSAGE_INFO_CHANGE_OPERATOR_CONTROL_ACK, MAVLINK_MESSAGE_INFO_AUTH_KEY, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_SET_MODE, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_PARAM_REQUEST_READ, MAVLINK_MESSAGE_INFO_PARAM_REQUEST_LIST, MAVLINK_MESSAGE_INFO_PARAM_VALUE, MAVLINK_MESSAGE_INFO_PARAM_SET, MAVLINK_MESSAGE_INFO_GPS_RAW_INT, MAVLINK_MESSAGE_INFO_GPS_STATUS, MAVLINK_MESSAGE_INFO_SCALED_IMU, MAVLINK_MESSAGE_INFO_RAW_IMU, MAVLINK_MESSAGE_INFO_RAW_PRESSURE, MAVLINK_MESSAGE_INFO_SCALED_PRESSURE, MAVLINK_MESSAGE_INFO_ATTITUDE, MAVLINK_MESSAGE_INFO_ATTITUDE_QUATERNION, MAVLINK_MESSAGE_INFO_LOCAL_POSITION_NED, MAVLINK_MESSAGE_INFO_GLOBAL_POSITION_INT, MAVLINK_MESSAGE_INFO_RC_CHANNELS_SCALED, MAVLINK_MESSAGE_INFO_RC_CHANNELS_RAW, MAVLINK_MESSAGE_INFO_SERVO_OUTPUT_RAW, MAVLINK_MESSAGE_INFO_MISSION_REQUEST_PARTIAL_LIST, MAVLINK_MESSAGE_INFO_MISSION_WRITE_PARTIAL_LIST, MAVLINK_MESSAGE_INFO_MISSION_ITEM, MAVLINK_MESSAGE_INFO_MISSION_REQUEST, MAVLINK_MESSAGE_INFO_MISSION_SET_CURRENT, MAVLINK_MESSAGE_INFO_MISSION_CURRENT, MAVLINK_MESSAGE_INFO_MISSION_REQUEST_LIST, MAVLINK_MESSAGE_INFO_MISSION_COUNT, MAVLINK_MESSAGE_INFO_MISSION_CLEAR_ALL, MAVLINK_MESSAGE_INFO_MISSION_ITEM_REACHED, MAVLINK_MESSAGE_INFO_MISSION_ACK, MAVLINK_MESSAGE_INFO_SET_GPS_GLOBAL_ORIGIN, MAVLINK_MESSAGE_INFO_GPS_GLOBAL_ORIGIN, MAVLINK_MESSAGE_INFO_PARAM_MAP_RC, MAVLINK_MESSAGE_INFO_MISSION_REQUEST_INT, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_SAFETY_SET_ALLOWED_AREA, MAVLINK_MESSAGE_INFO_SAFETY_ALLOWED_AREA, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_ATTITUDE_QUATERNION_COV, MAVLINK_MESSAGE_INFO_NAV_CONTROLLER_OUTPUT, MAVLINK_MESSAGE_INFO_GLOBAL_POSITION_INT_COV, MAVLINK_MESSAGE_INFO_LOCAL_POSITION_NED_COV, MAVLINK_MESSAGE_INFO_RC_CHANNELS, MAVLINK_MESSAGE_INFO_REQUEST_DATA_STREAM, MAVLINK_MESSAGE_INFO_DATA_STREAM, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_MANUAL_CONTROL, MAVLINK_MESSAGE_INFO_RC_CHANNELS_OVERRIDE, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_MISSION_ITEM_INT, MAVLINK_MESSAGE_INFO_VFR_HUD, MAVLINK_MESSAGE_INFO_COMMAND_INT, MAVLINK_MESSAGE_INFO_COMMAND_LONG, MAVLINK_MESSAGE_INFO_COMMAND_ACK, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_MANUAL_SETPOINT, MAVLINK_MESSAGE_INFO_SET_ATTITUDE_TARGET, MAVLINK_MESSAGE_INFO_ATTITUDE_TARGET, MAVLINK_MESSAGE_INFO_SET_POSITION_TARGET_LOCAL_NED, MAVLINK_MESSAGE_INFO_POSITION_TARGET_LOCAL_NED, MAVLINK_MESSAGE_INFO_SET_POSITION_TARGET_GLOBAL_INT, MAVLINK_MESSAGE_INFO_POSITION_TARGET_GLOBAL_INT, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_LOCAL_POSITION_NED_SYSTEM_GLOBAL_OFFSET, MAVLINK_MESSAGE_INFO_HIL_STATE, MAVLINK_MESSAGE_INFO_HIL_CONTROLS, MAVLINK_MESSAGE_INFO_HIL_RC_INPUTS_RAW, MAVLINK_MESSAGE_INFO_HIL_ACTUATOR_CONTROLS, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_OPTICAL_FLOW, MAVLINK_MESSAGE_INFO_GLOBAL_VISION_POSITION_ESTIMATE, MAVLINK_MESSAGE_INFO_VISION_POSITION_ESTIMATE, MAVLINK_MESSAGE_INFO_VISION_SPEED_ESTIMATE, MAVLINK_MESSAGE_INFO_VICON_POSITION_ESTIMATE, MAVLINK_MESSAGE_INFO_HIGHRES_IMU, MAVLINK_MESSAGE_INFO_OPTICAL_FLOW_RAD, MAVLINK_MESSAGE_INFO_HIL_SENSOR, MAVLINK_MESSAGE_INFO_SIM_STATE, MAVLINK_MESSAGE_INFO_RADIO_STATUS, MAVLINK_MESSAGE_INFO_FILE_TRANSFER_PROTOCOL, MAVLINK_MESSAGE_INFO_TIMESYNC, MAVLINK_MESSAGE_INFO_CAMERA_TRIGGER, MAVLINK_MESSAGE_INFO_HIL_GPS, MAVLINK_MESSAGE_INFO_HIL_OPTICAL_FLOW, MAVLINK_MESSAGE_INFO_HIL_STATE_QUATERNION, MAVLINK_MESSAGE_INFO_SCALED_IMU2, MAVLINK_MESSAGE_INFO_LOG_REQUEST_LIST, MAVLINK_MESSAGE_INFO_LOG_ENTRY, MAVLINK_MESSAGE_INFO_LOG_REQUEST_DATA, MAVLINK_MESSAGE_INFO_LOG_DATA, MAVLINK_MESSAGE_INFO_LOG_ERASE, MAVLINK_MESSAGE_INFO_LOG_REQUEST_END, MAVLINK_MESSAGE_INFO_GPS_INJECT_DATA, MAVLINK_MESSAGE_INFO_GPS2_RAW, MAVLINK_MESSAGE_INFO_POWER_STATUS, MAVLINK_MESSAGE_INFO_SERIAL_CONTROL, MAVLINK_MESSAGE_INFO_GPS_RTK, MAVLINK_MESSAGE_INFO_GPS2_RTK, MAVLINK_MESSAGE_INFO_SCALED_IMU3, MAVLINK_MESSAGE_INFO_DATA_TRANSMISSION_HANDSHAKE, MAVLINK_MESSAGE_INFO_ENCAPSULATED_DATA, MAVLINK_MESSAGE_INFO_DISTANCE_SENSOR, MAVLINK_MESSAGE_INFO_TERRAIN_REQUEST, MAVLINK_MESSAGE_INFO_TERRAIN_DATA, MAVLINK_MESSAGE_INFO_TERRAIN_CHECK, MAVLINK_MESSAGE_INFO_TERRAIN_REPORT, MAVLINK_MESSAGE_INFO_SCALED_PRESSURE2, MAVLINK_MESSAGE_INFO_ATT_POS_MOCAP, MAVLINK_MESSAGE_INFO_SET_ACTUATOR_CONTROL_TARGET, MAVLINK_MESSAGE_INFO_ACTUATOR_CONTROL_TARGET, MAVLINK_MESSAGE_INFO_ALTITUDE, MAVLINK_MESSAGE_INFO_RESOURCE_REQUEST, MAVLINK_MESSAGE_INFO_SCALED_PRESSURE3, MAVLINK_MESSAGE_INFO_FOLLOW_TARGET, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_CONTROL_SYSTEM_STATE, MAVLINK_MESSAGE_INFO_BATTERY_STATUS, MAVLINK_MESSAGE_INFO_AUTOPILOT_VERSION, MAVLINK_MESSAGE_INFO_LANDING_TARGET, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_ESTIMATOR_STATUS, MAVLINK_MESSAGE_INFO_WIND_COV, MAVLINK_MESSAGE_INFO_GPS_INPUT, MAVLINK_MESSAGE_INFO_GPS_RTCM_DATA, MAVLINK_MESSAGE_INFO_HIGH_LATENCY, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}, MAVLINK_MESSAGE_INFO_VIBRATION, MAVLINK_MESSAGE_INFO_HOME_POSITION, MAVLINK_MESSAGE_INFO_SET_HOME_POSITION, MAVLINK_MESSAGE_INFO_MESSAGE_INTERVAL, MAVLINK_MESSAGE_INFO_EXTENDED_SYS_STATE, MAVLINK_MESSAGE_INFO_ADSB_VEHICLE, MAVLINK_MESSAGE_INFO_COLLISION, MAVLINK_MESSAGE_INFO_V2_EXTENSION, MAVLINK_MESSAGE_INFO_MEMORY_VECT, MAVLINK_MESSAGE_INFO_DEBUG_VECT, MAVLINK_MESSAGE_INFO_NAMED_VALUE_FLOAT, MAVLINK_MESSAGE_INFO_NAMED_VALUE_INT, MAVLINK_MESSAGE_INFO_STATUSTEXT, MAVLINK_MESSAGE_INFO_DEBUG, {"EMPTY",0,{{"","",MAVLINK_TYPE_CHAR,0,0,0}}}}
01124 # if MAVLINK_COMMAND_24BIT
01125 #  include "../mavlink_get_info.h"
01126 # endif
01127 #endif
01128 
01129 #ifdef __cplusplus
01130 }
01131 #endif // __cplusplus
01132 #endif // MAVLINK_COMMON_H
01133