github.com/bluenviron/gomavlib/v2@v2.2.1-0.20240308101627-2c07e3da629c/pkg/dialects/common/enum_utm_flight_state.go (about) 1 //autogenerated:yes 2 //nolint:revive,misspell,govet,lll,dupl,gocritic 3 package common 4 5 import ( 6 "fmt" 7 "strconv" 8 ) 9 10 // Airborne status of UAS. 11 type UTM_FLIGHT_STATE uint64 12 13 const ( 14 // The flight state can't be determined. 15 UTM_FLIGHT_STATE_UNKNOWN UTM_FLIGHT_STATE = 1 16 // UAS on ground. 17 UTM_FLIGHT_STATE_GROUND UTM_FLIGHT_STATE = 2 18 // UAS airborne. 19 UTM_FLIGHT_STATE_AIRBORNE UTM_FLIGHT_STATE = 3 20 // UAS is in an emergency flight state. 21 UTM_FLIGHT_STATE_EMERGENCY UTM_FLIGHT_STATE = 16 22 // UAS has no active controls. 23 UTM_FLIGHT_STATE_NOCTRL UTM_FLIGHT_STATE = 32 24 ) 25 26 var labels_UTM_FLIGHT_STATE = map[UTM_FLIGHT_STATE]string{ 27 UTM_FLIGHT_STATE_UNKNOWN: "UTM_FLIGHT_STATE_UNKNOWN", 28 UTM_FLIGHT_STATE_GROUND: "UTM_FLIGHT_STATE_GROUND", 29 UTM_FLIGHT_STATE_AIRBORNE: "UTM_FLIGHT_STATE_AIRBORNE", 30 UTM_FLIGHT_STATE_EMERGENCY: "UTM_FLIGHT_STATE_EMERGENCY", 31 UTM_FLIGHT_STATE_NOCTRL: "UTM_FLIGHT_STATE_NOCTRL", 32 } 33 34 var values_UTM_FLIGHT_STATE = map[string]UTM_FLIGHT_STATE{ 35 "UTM_FLIGHT_STATE_UNKNOWN": UTM_FLIGHT_STATE_UNKNOWN, 36 "UTM_FLIGHT_STATE_GROUND": UTM_FLIGHT_STATE_GROUND, 37 "UTM_FLIGHT_STATE_AIRBORNE": UTM_FLIGHT_STATE_AIRBORNE, 38 "UTM_FLIGHT_STATE_EMERGENCY": UTM_FLIGHT_STATE_EMERGENCY, 39 "UTM_FLIGHT_STATE_NOCTRL": UTM_FLIGHT_STATE_NOCTRL, 40 } 41 42 // MarshalText implements the encoding.TextMarshaler interface. 43 func (e UTM_FLIGHT_STATE) MarshalText() ([]byte, error) { 44 if name, ok := labels_UTM_FLIGHT_STATE[e]; ok { 45 return []byte(name), nil 46 } 47 return []byte(strconv.Itoa(int(e))), nil 48 } 49 50 // UnmarshalText implements the encoding.TextUnmarshaler interface. 51 func (e *UTM_FLIGHT_STATE) UnmarshalText(text []byte) error { 52 if value, ok := values_UTM_FLIGHT_STATE[string(text)]; ok { 53 *e = value 54 } else if value, err := strconv.Atoi(string(text)); err == nil { 55 *e = UTM_FLIGHT_STATE(value) 56 } else { 57 return fmt.Errorf("invalid label '%s'", text) 58 } 59 return nil 60 } 61 62 // String implements the fmt.Stringer interface. 63 func (e UTM_FLIGHT_STATE) String() string { 64 val, _ := e.MarshalText() 65 return string(val) 66 }