Go to the documentation of this file.00001 #ifndef FLIGHTMODE_HPP
00002 #define FLIGHTMODE_HPP
00003
00004 namespace fcu {
00005
00006 struct FlightMode {
00007 enum class PRIMARY_MODE : uint32_t {
00008 UNSET = 0,
00009 ANGLE,
00010 HORIZON,
00011 NAV_POSHOLD,
00012 NAV_CRUISE,
00013 NAV_RTH,
00014 NAV_WP,
00015 MANUAL
00016 };
00017
00018 enum class SECONDARY_MODE : uint32_t {
00019 NONE = 0,
00020 NAV_ALTHOLD = 1 << 0,
00021 TURN_ASSIST = 1 << 1,
00022 AIR_MODE = 1 << 2,
00023 SURFACE = 1 << 3,
00024 HEADING_HOLD = 1 << 4,
00025 HEADFREE = 1 << 5,
00026 HEADADJ = 1 << 6
00027 };
00028
00029 enum class MODIFIER : uint32_t {
00030 NONE = 0,
00031 ARM = 1 << 0,
00032 CAMSTAB = 1 << 1,
00033 BEEPER = 1 << 2,
00034 LEDLOW = 1 << 3,
00035 OSD_SW = 1 << 4,
00036 TELEMETRY = 1 << 5,
00037 BLACKBOX = 1 << 6,
00038 FAILSAFE = 1 << 7,
00039 HOME_RESET = 1 << 8,
00040 GCS_NAV = 1 << 9,
00041 FLAPERON = 1 << 10,
00042 NAV_LAUNCH = 1 << 11,
00043 SERVO_AUTOTRIM = 1 << 12,
00044 AUTOTUNE = 1 << 13
00045 };
00046
00047 PRIMARY_MODE primary;
00048 SECONDARY_MODE secondary;
00049 MODIFIER modifier;
00050 };
00051
00052 }
00053
00054 #endif