github.com/bluenviron/gomavlib/v2@v2.2.1-0.20240308101627-2c07e3da629c/pkg/dialects/common/enum_camera_tracking_status_flags.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  // Camera tracking status flags
    11  type CAMERA_TRACKING_STATUS_FLAGS uint64
    12  
    13  const (
    14  	// Camera is not tracking
    15  	CAMERA_TRACKING_STATUS_FLAGS_IDLE CAMERA_TRACKING_STATUS_FLAGS = 0
    16  	// Camera is tracking
    17  	CAMERA_TRACKING_STATUS_FLAGS_ACTIVE CAMERA_TRACKING_STATUS_FLAGS = 1
    18  	// Camera tracking in error state
    19  	CAMERA_TRACKING_STATUS_FLAGS_ERROR CAMERA_TRACKING_STATUS_FLAGS = 2
    20  )
    21  
    22  var labels_CAMERA_TRACKING_STATUS_FLAGS = map[CAMERA_TRACKING_STATUS_FLAGS]string{
    23  	CAMERA_TRACKING_STATUS_FLAGS_IDLE:   "CAMERA_TRACKING_STATUS_FLAGS_IDLE",
    24  	CAMERA_TRACKING_STATUS_FLAGS_ACTIVE: "CAMERA_TRACKING_STATUS_FLAGS_ACTIVE",
    25  	CAMERA_TRACKING_STATUS_FLAGS_ERROR:  "CAMERA_TRACKING_STATUS_FLAGS_ERROR",
    26  }
    27  
    28  var values_CAMERA_TRACKING_STATUS_FLAGS = map[string]CAMERA_TRACKING_STATUS_FLAGS{
    29  	"CAMERA_TRACKING_STATUS_FLAGS_IDLE":   CAMERA_TRACKING_STATUS_FLAGS_IDLE,
    30  	"CAMERA_TRACKING_STATUS_FLAGS_ACTIVE": CAMERA_TRACKING_STATUS_FLAGS_ACTIVE,
    31  	"CAMERA_TRACKING_STATUS_FLAGS_ERROR":  CAMERA_TRACKING_STATUS_FLAGS_ERROR,
    32  }
    33  
    34  // MarshalText implements the encoding.TextMarshaler interface.
    35  func (e CAMERA_TRACKING_STATUS_FLAGS) MarshalText() ([]byte, error) {
    36  	if name, ok := labels_CAMERA_TRACKING_STATUS_FLAGS[e]; ok {
    37  		return []byte(name), nil
    38  	}
    39  	return []byte(strconv.Itoa(int(e))), nil
    40  }
    41  
    42  // UnmarshalText implements the encoding.TextUnmarshaler interface.
    43  func (e *CAMERA_TRACKING_STATUS_FLAGS) UnmarshalText(text []byte) error {
    44  	if value, ok := values_CAMERA_TRACKING_STATUS_FLAGS[string(text)]; ok {
    45  		*e = value
    46  	} else if value, err := strconv.Atoi(string(text)); err == nil {
    47  		*e = CAMERA_TRACKING_STATUS_FLAGS(value)
    48  	} else {
    49  		return fmt.Errorf("invalid label '%s'", text)
    50  	}
    51  	return nil
    52  }
    53  
    54  // String implements the fmt.Stringer interface.
    55  func (e CAMERA_TRACKING_STATUS_FLAGS) String() string {
    56  	val, _ := e.MarshalText()
    57  	return string(val)
    58  }