github.com/bluenviron/gomavlib/v2@v2.2.1-0.20240308101627-2c07e3da629c/pkg/dialects/icarous/enum_icarous_fms_state.go (about) 1 //autogenerated:yes 2 //nolint:revive,misspell,govet,lll,dupl,gocritic 3 package icarous 4 5 import ( 6 "fmt" 7 "strconv" 8 ) 9 10 type ICAROUS_FMS_STATE uint64 11 12 const ( 13 ICAROUS_FMS_STATE_IDLE ICAROUS_FMS_STATE = 0 14 ICAROUS_FMS_STATE_TAKEOFF ICAROUS_FMS_STATE = 1 15 ICAROUS_FMS_STATE_CLIMB ICAROUS_FMS_STATE = 2 16 ICAROUS_FMS_STATE_CRUISE ICAROUS_FMS_STATE = 3 17 ICAROUS_FMS_STATE_APPROACH ICAROUS_FMS_STATE = 4 18 ICAROUS_FMS_STATE_LAND ICAROUS_FMS_STATE = 5 19 ) 20 21 var labels_ICAROUS_FMS_STATE = map[ICAROUS_FMS_STATE]string{ 22 ICAROUS_FMS_STATE_IDLE: "ICAROUS_FMS_STATE_IDLE", 23 ICAROUS_FMS_STATE_TAKEOFF: "ICAROUS_FMS_STATE_TAKEOFF", 24 ICAROUS_FMS_STATE_CLIMB: "ICAROUS_FMS_STATE_CLIMB", 25 ICAROUS_FMS_STATE_CRUISE: "ICAROUS_FMS_STATE_CRUISE", 26 ICAROUS_FMS_STATE_APPROACH: "ICAROUS_FMS_STATE_APPROACH", 27 ICAROUS_FMS_STATE_LAND: "ICAROUS_FMS_STATE_LAND", 28 } 29 30 var values_ICAROUS_FMS_STATE = map[string]ICAROUS_FMS_STATE{ 31 "ICAROUS_FMS_STATE_IDLE": ICAROUS_FMS_STATE_IDLE, 32 "ICAROUS_FMS_STATE_TAKEOFF": ICAROUS_FMS_STATE_TAKEOFF, 33 "ICAROUS_FMS_STATE_CLIMB": ICAROUS_FMS_STATE_CLIMB, 34 "ICAROUS_FMS_STATE_CRUISE": ICAROUS_FMS_STATE_CRUISE, 35 "ICAROUS_FMS_STATE_APPROACH": ICAROUS_FMS_STATE_APPROACH, 36 "ICAROUS_FMS_STATE_LAND": ICAROUS_FMS_STATE_LAND, 37 } 38 39 // MarshalText implements the encoding.TextMarshaler interface. 40 func (e ICAROUS_FMS_STATE) MarshalText() ([]byte, error) { 41 if name, ok := labels_ICAROUS_FMS_STATE[e]; ok { 42 return []byte(name), nil 43 } 44 return []byte(strconv.Itoa(int(e))), nil 45 } 46 47 // UnmarshalText implements the encoding.TextUnmarshaler interface. 48 func (e *ICAROUS_FMS_STATE) UnmarshalText(text []byte) error { 49 if value, ok := values_ICAROUS_FMS_STATE[string(text)]; ok { 50 *e = value 51 } else if value, err := strconv.Atoi(string(text)); err == nil { 52 *e = ICAROUS_FMS_STATE(value) 53 } else { 54 return fmt.Errorf("invalid label '%s'", text) 55 } 56 return nil 57 } 58 59 // String implements the fmt.Stringer interface. 60 func (e ICAROUS_FMS_STATE) String() string { 61 val, _ := e.MarshalText() 62 return string(val) 63 }