github.com/bluenviron/gomavlib/v2@v2.2.1-0.20240308101627-2c07e3da629c/pkg/dialects/matrixpilot/enum_mav_preflight_storage_action.go (about)

     1  //autogenerated:yes
     2  //nolint:revive,misspell,govet,lll,dupl,gocritic
     3  package matrixpilot
     4  
     5  import (
     6  	"fmt"
     7  	"strconv"
     8  )
     9  
    10  // Action required when performing CMD_PREFLIGHT_STORAGE
    11  type MAV_PREFLIGHT_STORAGE_ACTION uint64
    12  
    13  const (
    14  	// Read all parameters from storage
    15  	MAV_PFS_CMD_READ_ALL MAV_PREFLIGHT_STORAGE_ACTION = 0
    16  	// Write all parameters to storage
    17  	MAV_PFS_CMD_WRITE_ALL MAV_PREFLIGHT_STORAGE_ACTION = 1
    18  	// Clear all  parameters in storage
    19  	MAV_PFS_CMD_CLEAR_ALL MAV_PREFLIGHT_STORAGE_ACTION = 2
    20  	// Read specific parameters from storage
    21  	MAV_PFS_CMD_READ_SPECIFIC MAV_PREFLIGHT_STORAGE_ACTION = 3
    22  	// Write specific parameters to storage
    23  	MAV_PFS_CMD_WRITE_SPECIFIC MAV_PREFLIGHT_STORAGE_ACTION = 4
    24  	// Clear specific parameters in storage
    25  	MAV_PFS_CMD_CLEAR_SPECIFIC MAV_PREFLIGHT_STORAGE_ACTION = 5
    26  	// do nothing
    27  	MAV_PFS_CMD_DO_NOTHING MAV_PREFLIGHT_STORAGE_ACTION = 6
    28  )
    29  
    30  var labels_MAV_PREFLIGHT_STORAGE_ACTION = map[MAV_PREFLIGHT_STORAGE_ACTION]string{
    31  	MAV_PFS_CMD_READ_ALL:       "MAV_PFS_CMD_READ_ALL",
    32  	MAV_PFS_CMD_WRITE_ALL:      "MAV_PFS_CMD_WRITE_ALL",
    33  	MAV_PFS_CMD_CLEAR_ALL:      "MAV_PFS_CMD_CLEAR_ALL",
    34  	MAV_PFS_CMD_READ_SPECIFIC:  "MAV_PFS_CMD_READ_SPECIFIC",
    35  	MAV_PFS_CMD_WRITE_SPECIFIC: "MAV_PFS_CMD_WRITE_SPECIFIC",
    36  	MAV_PFS_CMD_CLEAR_SPECIFIC: "MAV_PFS_CMD_CLEAR_SPECIFIC",
    37  	MAV_PFS_CMD_DO_NOTHING:     "MAV_PFS_CMD_DO_NOTHING",
    38  }
    39  
    40  var values_MAV_PREFLIGHT_STORAGE_ACTION = map[string]MAV_PREFLIGHT_STORAGE_ACTION{
    41  	"MAV_PFS_CMD_READ_ALL":       MAV_PFS_CMD_READ_ALL,
    42  	"MAV_PFS_CMD_WRITE_ALL":      MAV_PFS_CMD_WRITE_ALL,
    43  	"MAV_PFS_CMD_CLEAR_ALL":      MAV_PFS_CMD_CLEAR_ALL,
    44  	"MAV_PFS_CMD_READ_SPECIFIC":  MAV_PFS_CMD_READ_SPECIFIC,
    45  	"MAV_PFS_CMD_WRITE_SPECIFIC": MAV_PFS_CMD_WRITE_SPECIFIC,
    46  	"MAV_PFS_CMD_CLEAR_SPECIFIC": MAV_PFS_CMD_CLEAR_SPECIFIC,
    47  	"MAV_PFS_CMD_DO_NOTHING":     MAV_PFS_CMD_DO_NOTHING,
    48  }
    49  
    50  // MarshalText implements the encoding.TextMarshaler interface.
    51  func (e MAV_PREFLIGHT_STORAGE_ACTION) MarshalText() ([]byte, error) {
    52  	if name, ok := labels_MAV_PREFLIGHT_STORAGE_ACTION[e]; ok {
    53  		return []byte(name), nil
    54  	}
    55  	return []byte(strconv.Itoa(int(e))), nil
    56  }
    57  
    58  // UnmarshalText implements the encoding.TextUnmarshaler interface.
    59  func (e *MAV_PREFLIGHT_STORAGE_ACTION) UnmarshalText(text []byte) error {
    60  	if value, ok := values_MAV_PREFLIGHT_STORAGE_ACTION[string(text)]; ok {
    61  		*e = value
    62  	} else if value, err := strconv.Atoi(string(text)); err == nil {
    63  		*e = MAV_PREFLIGHT_STORAGE_ACTION(value)
    64  	} else {
    65  		return fmt.Errorf("invalid label '%s'", text)
    66  	}
    67  	return nil
    68  }
    69  
    70  // String implements the fmt.Stringer interface.
    71  func (e MAV_PREFLIGHT_STORAGE_ACTION) String() string {
    72  	val, _ := e.MarshalText()
    73  	return string(val)
    74  }