github.com/bluenviron/gomavlib/v2@v2.2.1-0.20240308101627-2c07e3da629c/pkg/dialects/ardupilotmega/enum_pid_tuning_axis.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 type PID_TUNING_AXIS uint64 11 12 const ( 13 PID_TUNING_ROLL PID_TUNING_AXIS = 1 14 PID_TUNING_PITCH PID_TUNING_AXIS = 2 15 PID_TUNING_YAW PID_TUNING_AXIS = 3 16 PID_TUNING_ACCZ PID_TUNING_AXIS = 4 17 PID_TUNING_STEER PID_TUNING_AXIS = 5 18 PID_TUNING_LANDING PID_TUNING_AXIS = 6 19 ) 20 21 var labels_PID_TUNING_AXIS = map[PID_TUNING_AXIS]string{ 22 PID_TUNING_ROLL: "PID_TUNING_ROLL", 23 PID_TUNING_PITCH: "PID_TUNING_PITCH", 24 PID_TUNING_YAW: "PID_TUNING_YAW", 25 PID_TUNING_ACCZ: "PID_TUNING_ACCZ", 26 PID_TUNING_STEER: "PID_TUNING_STEER", 27 PID_TUNING_LANDING: "PID_TUNING_LANDING", 28 } 29 30 var values_PID_TUNING_AXIS = map[string]PID_TUNING_AXIS{ 31 "PID_TUNING_ROLL": PID_TUNING_ROLL, 32 "PID_TUNING_PITCH": PID_TUNING_PITCH, 33 "PID_TUNING_YAW": PID_TUNING_YAW, 34 "PID_TUNING_ACCZ": PID_TUNING_ACCZ, 35 "PID_TUNING_STEER": PID_TUNING_STEER, 36 "PID_TUNING_LANDING": PID_TUNING_LANDING, 37 } 38 39 // MarshalText implements the encoding.TextMarshaler interface. 40 func (e PID_TUNING_AXIS) MarshalText() ([]byte, error) { 41 if name, ok := labels_PID_TUNING_AXIS[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 *PID_TUNING_AXIS) UnmarshalText(text []byte) error { 49 if value, ok := values_PID_TUNING_AXIS[string(text)]; ok { 50 *e = value 51 } else if value, err := strconv.Atoi(string(text)); err == nil { 52 *e = PID_TUNING_AXIS(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 PID_TUNING_AXIS) String() string { 61 val, _ := e.MarshalText() 62 return string(val) 63 }