github.com/bluenviron/gomavlib/v2@v2.2.1-0.20240308101627-2c07e3da629c/pkg/dialects/ardupilotmega/enum_copter_mode.go (about) 1 //autogenerated:yes 2 //nolint:revive,misspell,govet,lll,dupl,gocritic 3 package ardupilotmega 4 5 import ( 6 "fmt" 7 "strconv" 8 ) 9 10 // A mapping of copter flight modes for custom_mode field of heartbeat. 11 type COPTER_MODE uint64 12 13 const ( 14 COPTER_MODE_STABILIZE COPTER_MODE = 0 15 COPTER_MODE_ACRO COPTER_MODE = 1 16 COPTER_MODE_ALT_HOLD COPTER_MODE = 2 17 COPTER_MODE_AUTO COPTER_MODE = 3 18 COPTER_MODE_GUIDED COPTER_MODE = 4 19 COPTER_MODE_LOITER COPTER_MODE = 5 20 COPTER_MODE_RTL COPTER_MODE = 6 21 COPTER_MODE_CIRCLE COPTER_MODE = 7 22 COPTER_MODE_LAND COPTER_MODE = 9 23 COPTER_MODE_DRIFT COPTER_MODE = 11 24 COPTER_MODE_SPORT COPTER_MODE = 13 25 COPTER_MODE_FLIP COPTER_MODE = 14 26 COPTER_MODE_AUTOTUNE COPTER_MODE = 15 27 COPTER_MODE_POSHOLD COPTER_MODE = 16 28 COPTER_MODE_BRAKE COPTER_MODE = 17 29 COPTER_MODE_THROW COPTER_MODE = 18 30 COPTER_MODE_AVOID_ADSB COPTER_MODE = 19 31 COPTER_MODE_GUIDED_NOGPS COPTER_MODE = 20 32 COPTER_MODE_SMART_RTL COPTER_MODE = 21 33 COPTER_MODE_FLOWHOLD COPTER_MODE = 22 34 COPTER_MODE_FOLLOW COPTER_MODE = 23 35 COPTER_MODE_ZIGZAG COPTER_MODE = 24 36 COPTER_MODE_SYSTEMID COPTER_MODE = 25 37 COPTER_MODE_AUTOROTATE COPTER_MODE = 26 38 COPTER_MODE_AUTO_RTL COPTER_MODE = 27 39 ) 40 41 var labels_COPTER_MODE = map[COPTER_MODE]string{ 42 COPTER_MODE_STABILIZE: "COPTER_MODE_STABILIZE", 43 COPTER_MODE_ACRO: "COPTER_MODE_ACRO", 44 COPTER_MODE_ALT_HOLD: "COPTER_MODE_ALT_HOLD", 45 COPTER_MODE_AUTO: "COPTER_MODE_AUTO", 46 COPTER_MODE_GUIDED: "COPTER_MODE_GUIDED", 47 COPTER_MODE_LOITER: "COPTER_MODE_LOITER", 48 COPTER_MODE_RTL: "COPTER_MODE_RTL", 49 COPTER_MODE_CIRCLE: "COPTER_MODE_CIRCLE", 50 COPTER_MODE_LAND: "COPTER_MODE_LAND", 51 COPTER_MODE_DRIFT: "COPTER_MODE_DRIFT", 52 COPTER_MODE_SPORT: "COPTER_MODE_SPORT", 53 COPTER_MODE_FLIP: "COPTER_MODE_FLIP", 54 COPTER_MODE_AUTOTUNE: "COPTER_MODE_AUTOTUNE", 55 COPTER_MODE_POSHOLD: "COPTER_MODE_POSHOLD", 56 COPTER_MODE_BRAKE: "COPTER_MODE_BRAKE", 57 COPTER_MODE_THROW: "COPTER_MODE_THROW", 58 COPTER_MODE_AVOID_ADSB: "COPTER_MODE_AVOID_ADSB", 59 COPTER_MODE_GUIDED_NOGPS: "COPTER_MODE_GUIDED_NOGPS", 60 COPTER_MODE_SMART_RTL: "COPTER_MODE_SMART_RTL", 61 COPTER_MODE_FLOWHOLD: "COPTER_MODE_FLOWHOLD", 62 COPTER_MODE_FOLLOW: "COPTER_MODE_FOLLOW", 63 COPTER_MODE_ZIGZAG: "COPTER_MODE_ZIGZAG", 64 COPTER_MODE_SYSTEMID: "COPTER_MODE_SYSTEMID", 65 COPTER_MODE_AUTOROTATE: "COPTER_MODE_AUTOROTATE", 66 COPTER_MODE_AUTO_RTL: "COPTER_MODE_AUTO_RTL", 67 } 68 69 var values_COPTER_MODE = map[string]COPTER_MODE{ 70 "COPTER_MODE_STABILIZE": COPTER_MODE_STABILIZE, 71 "COPTER_MODE_ACRO": COPTER_MODE_ACRO, 72 "COPTER_MODE_ALT_HOLD": COPTER_MODE_ALT_HOLD, 73 "COPTER_MODE_AUTO": COPTER_MODE_AUTO, 74 "COPTER_MODE_GUIDED": COPTER_MODE_GUIDED, 75 "COPTER_MODE_LOITER": COPTER_MODE_LOITER, 76 "COPTER_MODE_RTL": COPTER_MODE_RTL, 77 "COPTER_MODE_CIRCLE": COPTER_MODE_CIRCLE, 78 "COPTER_MODE_LAND": COPTER_MODE_LAND, 79 "COPTER_MODE_DRIFT": COPTER_MODE_DRIFT, 80 "COPTER_MODE_SPORT": COPTER_MODE_SPORT, 81 "COPTER_MODE_FLIP": COPTER_MODE_FLIP, 82 "COPTER_MODE_AUTOTUNE": COPTER_MODE_AUTOTUNE, 83 "COPTER_MODE_POSHOLD": COPTER_MODE_POSHOLD, 84 "COPTER_MODE_BRAKE": COPTER_MODE_BRAKE, 85 "COPTER_MODE_THROW": COPTER_MODE_THROW, 86 "COPTER_MODE_AVOID_ADSB": COPTER_MODE_AVOID_ADSB, 87 "COPTER_MODE_GUIDED_NOGPS": COPTER_MODE_GUIDED_NOGPS, 88 "COPTER_MODE_SMART_RTL": COPTER_MODE_SMART_RTL, 89 "COPTER_MODE_FLOWHOLD": COPTER_MODE_FLOWHOLD, 90 "COPTER_MODE_FOLLOW": COPTER_MODE_FOLLOW, 91 "COPTER_MODE_ZIGZAG": COPTER_MODE_ZIGZAG, 92 "COPTER_MODE_SYSTEMID": COPTER_MODE_SYSTEMID, 93 "COPTER_MODE_AUTOROTATE": COPTER_MODE_AUTOROTATE, 94 "COPTER_MODE_AUTO_RTL": COPTER_MODE_AUTO_RTL, 95 } 96 97 // MarshalText implements the encoding.TextMarshaler interface. 98 func (e COPTER_MODE) MarshalText() ([]byte, error) { 99 if name, ok := labels_COPTER_MODE[e]; ok { 100 return []byte(name), nil 101 } 102 return []byte(strconv.Itoa(int(e))), nil 103 } 104 105 // UnmarshalText implements the encoding.TextUnmarshaler interface. 106 func (e *COPTER_MODE) UnmarshalText(text []byte) error { 107 if value, ok := values_COPTER_MODE[string(text)]; ok { 108 *e = value 109 } else if value, err := strconv.Atoi(string(text)); err == nil { 110 *e = COPTER_MODE(value) 111 } else { 112 return fmt.Errorf("invalid label '%s'", text) 113 } 114 return nil 115 } 116 117 // String implements the fmt.Stringer interface. 118 func (e COPTER_MODE) String() string { 119 val, _ := e.MarshalText() 120 return string(val) 121 }