pub struct MavProtocolCapability(/* private fields */);Expand description
Bitmask of (optional) autopilot capabilities (64 bit). If a bit is set, the autopilot supports this capability.
Implementations§
Source§impl MavProtocolCapability
impl MavProtocolCapability
Sourcepub const MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT: MavProtocolCapability
Autopilot supports the MISSION_ITEM float message type. Note that MISSION_ITEM is deprecated, and autopilots should use MISSION_ITEM_INT instead.
Sourcepub const MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT: MavProtocolCapability
👎Deprecated: See MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST (Deprecated since 2022-03)
pub const MAV_PROTOCOL_CAPABILITY_PARAM_FLOAT: MavProtocolCapability
See MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST (Deprecated since 2022-03)
Autopilot supports the new param float message type.
Sourcepub const MAV_PROTOCOL_CAPABILITY_MISSION_INT: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_MISSION_INT: MavProtocolCapability
Autopilot supports MISSION_ITEM_INT scaled integer message type. Note that this flag must always be set if missions are supported, because missions must always use MISSION_ITEM_INT (rather than MISSION_ITEM, which is deprecated).
Sourcepub const MAV_PROTOCOL_CAPABILITY_COMMAND_INT: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_COMMAND_INT: MavProtocolCapability
Autopilot supports COMMAND_INT scaled integer message type.
Sourcepub const MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE: MavProtocolCapability
Parameter protocol uses byte-wise encoding of parameter values into param_value (float) fields: https://mavlink.io/en/services/parameter.html#parameter-encoding. Note that either this flag or MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST should be set if the parameter protocol is supported.
Sourcepub const MAV_PROTOCOL_CAPABILITY_FTP: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_FTP: MavProtocolCapability
Autopilot supports the File Transfer Protocol v1: https://mavlink.io/en/services/ftp.html.
Sourcepub const MAV_PROTOCOL_CAPABILITY_SET_ATTITUDE_TARGET: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_SET_ATTITUDE_TARGET: MavProtocolCapability
Autopilot supports commanding attitude offboard.
Sourcepub const MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_LOCAL_NED: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_LOCAL_NED: MavProtocolCapability
Autopilot supports commanding position and velocity targets in local NED frame.
Sourcepub const MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_GLOBAL_INT: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_SET_POSITION_TARGET_GLOBAL_INT: MavProtocolCapability
Autopilot supports commanding position and velocity targets in global scaled integers.
Sourcepub const MAV_PROTOCOL_CAPABILITY_TERRAIN: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_TERRAIN: MavProtocolCapability
Autopilot supports terrain protocol / data handling.
Sourcepub const MAV_PROTOCOL_CAPABILITY_RESERVED3: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_RESERVED3: MavProtocolCapability
Reserved for future use.
Sourcepub const MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_FLIGHT_TERMINATION: MavProtocolCapability
Autopilot supports the MAV_CMD_DO_FLIGHTTERMINATION command (flight termination).
Sourcepub const MAV_PROTOCOL_CAPABILITY_COMPASS_CALIBRATION: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_COMPASS_CALIBRATION: MavProtocolCapability
Autopilot supports onboard compass calibration.
Sourcepub const MAV_PROTOCOL_CAPABILITY_MAVLINK2: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_MAVLINK2: MavProtocolCapability
Autopilot supports MAVLink version 2.
Sourcepub const MAV_PROTOCOL_CAPABILITY_MISSION_FENCE: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_MISSION_FENCE: MavProtocolCapability
Autopilot supports mission fence protocol.
Sourcepub const MAV_PROTOCOL_CAPABILITY_MISSION_RALLY: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_MISSION_RALLY: MavProtocolCapability
Autopilot supports mission rally point protocol.
Sourcepub const MAV_PROTOCOL_CAPABILITY_RESERVED2: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_RESERVED2: MavProtocolCapability
Reserved for future use.
Sourcepub const MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_C_CAST: MavProtocolCapability
Parameter protocol uses C-cast of parameter values to set the param_value (float) fields: https://mavlink.io/en/services/parameter.html#parameter-encoding. Note that either this flag or MAV_PROTOCOL_CAPABILITY_PARAM_ENCODE_BYTEWISE should be set if the parameter protocol is supported.
Sourcepub const MAV_PROTOCOL_CAPABILITY_COMPONENT_IMPLEMENTS_GIMBAL_MANAGER: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_COMPONENT_IMPLEMENTS_GIMBAL_MANAGER: MavProtocolCapability
This component implements/is a gimbal manager. This means the GIMBAL_MANAGER_INFORMATION, and other messages can be requested.
Sourcepub const MAV_PROTOCOL_CAPABILITY_COMPONENT_ACCEPTS_GCS_CONTROL: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_COMPONENT_ACCEPTS_GCS_CONTROL: MavProtocolCapability
Component supports locking control to a particular GCS independent of its system (via MAV_CMD_REQUEST_OPERATOR_CONTROL).
Sourcepub const MAV_PROTOCOL_CAPABILITY_GRIPPER: MavProtocolCapability
pub const MAV_PROTOCOL_CAPABILITY_GRIPPER: MavProtocolCapability
Autopilot has a connected gripper. MAVLink Grippers would set MAV_TYPE_GRIPPER instead.
Source§impl MavProtocolCapability
impl MavProtocolCapability
Sourcepub const fn empty() -> MavProtocolCapability
pub const fn empty() -> MavProtocolCapability
Get a flags value with all bits unset.
Sourcepub const fn all() -> MavProtocolCapability
pub const fn all() -> MavProtocolCapability
Get a flags value with all known bits set.
Sourcepub const fn bits(&self) -> u64
pub const fn bits(&self) -> u64
Get the underlying bits value.
The returned value is exactly the bits set in this flags value.
Sourcepub const fn from_bits(bits: u64) -> Option<MavProtocolCapability>
pub const fn from_bits(bits: u64) -> Option<MavProtocolCapability>
Convert from a bits value.
This method will return None if any unknown bits are set.
Sourcepub const fn from_bits_truncate(bits: u64) -> MavProtocolCapability
pub const fn from_bits_truncate(bits: u64) -> MavProtocolCapability
Convert from a bits value, unsetting any unknown bits.
Sourcepub const fn from_bits_retain(bits: u64) -> MavProtocolCapability
pub const fn from_bits_retain(bits: u64) -> MavProtocolCapability
Convert from a bits value exactly.
Sourcepub fn from_name(name: &str) -> Option<MavProtocolCapability>
pub fn from_name(name: &str) -> Option<MavProtocolCapability>
Get a flags value with the bits of a flag with the given name set.
This method will return None if name is empty or doesn’t
correspond to any named flag.
Sourcepub const fn intersects(&self, other: MavProtocolCapability) -> bool
pub const fn intersects(&self, other: MavProtocolCapability) -> bool
Whether any set bits in other are also set in self.
Sourcepub const fn contains(&self, other: MavProtocolCapability) -> bool
pub const fn contains(&self, other: MavProtocolCapability) -> bool
Whether all set bits in other are also set in self.
Sourcepub fn insert(&mut self, other: MavProtocolCapability)
pub fn insert(&mut self, other: MavProtocolCapability)
The bitwise or (|) of the bits in self and other.
Sourcepub fn remove(&mut self, other: MavProtocolCapability)
pub fn remove(&mut self, other: MavProtocolCapability)
The intersection of self with the complement of other (&!).
This method is not equivalent to self & !other when other has unknown bits set.
remove won’t truncate other, but the ! operator will.
Sourcepub fn toggle(&mut self, other: MavProtocolCapability)
pub fn toggle(&mut self, other: MavProtocolCapability)
The bitwise exclusive-or (^) of the bits in self and other.
Sourcepub fn set(&mut self, other: MavProtocolCapability, value: bool)
pub fn set(&mut self, other: MavProtocolCapability, value: bool)
Call insert when value is true or remove when value is false.
Sourcepub const fn intersection(
self,
other: MavProtocolCapability,
) -> MavProtocolCapability
pub const fn intersection( self, other: MavProtocolCapability, ) -> MavProtocolCapability
The bitwise and (&) of the bits in self and other.
Sourcepub const fn union(self, other: MavProtocolCapability) -> MavProtocolCapability
pub const fn union(self, other: MavProtocolCapability) -> MavProtocolCapability
The bitwise or (|) of the bits in self and other.
Sourcepub const fn difference(
self,
other: MavProtocolCapability,
) -> MavProtocolCapability
pub const fn difference( self, other: MavProtocolCapability, ) -> MavProtocolCapability
The intersection of self with the complement of other (&!).
This method is not equivalent to self & !other when other has unknown bits set.
difference won’t truncate other, but the ! operator will.
Sourcepub const fn symmetric_difference(
self,
other: MavProtocolCapability,
) -> MavProtocolCapability
pub const fn symmetric_difference( self, other: MavProtocolCapability, ) -> MavProtocolCapability
The bitwise exclusive-or (^) of the bits in self and other.
Sourcepub const fn complement(self) -> MavProtocolCapability
pub const fn complement(self) -> MavProtocolCapability
The bitwise negation (!) of the bits in self, truncating the result.
Source§impl MavProtocolCapability
impl MavProtocolCapability
Sourcepub const fn iter(&self) -> Iter<MavProtocolCapability> ⓘ
pub const fn iter(&self) -> Iter<MavProtocolCapability> ⓘ
Yield a set of contained flags values.
Each yielded flags value will correspond to a defined named flag. Any unknown bits will be yielded together as a final flags value.
Sourcepub const fn iter_names(&self) -> IterNames<MavProtocolCapability> ⓘ
pub const fn iter_names(&self) -> IterNames<MavProtocolCapability> ⓘ
Yield a set of contained named flags values.
This method is like iter, except only yields bits in contained named flags.
Any unknown bits, or bits not corresponding to a contained flag will not be yielded.
Source§impl MavProtocolCapability
impl MavProtocolCapability
pub const DEFAULT: MavProtocolCapability = Self::MAV_PROTOCOL_CAPABILITY_MISSION_FLOAT
Trait Implementations§
Source§impl Binary for MavProtocolCapability
impl Binary for MavProtocolCapability
Source§impl BitAnd for MavProtocolCapability
impl BitAnd for MavProtocolCapability
Source§fn bitand(self, other: MavProtocolCapability) -> MavProtocolCapability
fn bitand(self, other: MavProtocolCapability) -> MavProtocolCapability
The bitwise and (&) of the bits in self and other.
Source§type Output = MavProtocolCapability
type Output = MavProtocolCapability
& operator.Source§impl BitAndAssign for MavProtocolCapability
impl BitAndAssign for MavProtocolCapability
Source§fn bitand_assign(&mut self, other: MavProtocolCapability)
fn bitand_assign(&mut self, other: MavProtocolCapability)
The bitwise and (&) of the bits in self and other.
Source§impl BitOr for MavProtocolCapability
impl BitOr for MavProtocolCapability
Source§fn bitor(self, other: MavProtocolCapability) -> MavProtocolCapability
fn bitor(self, other: MavProtocolCapability) -> MavProtocolCapability
The bitwise or (|) of the bits in self and other.
Source§type Output = MavProtocolCapability
type Output = MavProtocolCapability
| operator.Source§impl BitOrAssign for MavProtocolCapability
impl BitOrAssign for MavProtocolCapability
Source§fn bitor_assign(&mut self, other: MavProtocolCapability)
fn bitor_assign(&mut self, other: MavProtocolCapability)
The bitwise or (|) of the bits in self and other.
Source§impl BitXor for MavProtocolCapability
impl BitXor for MavProtocolCapability
Source§fn bitxor(self, other: MavProtocolCapability) -> MavProtocolCapability
fn bitxor(self, other: MavProtocolCapability) -> MavProtocolCapability
The bitwise exclusive-or (^) of the bits in self and other.
Source§type Output = MavProtocolCapability
type Output = MavProtocolCapability
^ operator.Source§impl BitXorAssign for MavProtocolCapability
impl BitXorAssign for MavProtocolCapability
Source§fn bitxor_assign(&mut self, other: MavProtocolCapability)
fn bitxor_assign(&mut self, other: MavProtocolCapability)
The bitwise exclusive-or (^) of the bits in self and other.
Source§impl Clone for MavProtocolCapability
impl Clone for MavProtocolCapability
Source§fn clone(&self) -> MavProtocolCapability
fn clone(&self) -> MavProtocolCapability
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for MavProtocolCapability
Source§impl Debug for MavProtocolCapability
impl Debug for MavProtocolCapability
Source§impl Default for MavProtocolCapability
impl Default for MavProtocolCapability
Source§fn default() -> MavProtocolCapability
fn default() -> MavProtocolCapability
Source§impl Extend<MavProtocolCapability> for MavProtocolCapability
impl Extend<MavProtocolCapability> for MavProtocolCapability
Source§fn extend<T>(&mut self, iterator: T)where
T: IntoIterator<Item = MavProtocolCapability>,
fn extend<T>(&mut self, iterator: T)where
T: IntoIterator<Item = MavProtocolCapability>,
The bitwise or (|) of the bits in each flags value.
Source§fn extend_one(&mut self, item: T)
fn extend_one(&mut self, item: T)
extend_one)Source§fn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one)Source§impl Flags for MavProtocolCapability
impl Flags for MavProtocolCapability
Source§const FLAGS: &'static [Flag<MavProtocolCapability>]
const FLAGS: &'static [Flag<MavProtocolCapability>]
Source§fn from_bits_retain(bits: u64) -> MavProtocolCapability
fn from_bits_retain(bits: u64) -> MavProtocolCapability
Source§fn all_named() -> MavProtocolCapability
fn all_named() -> MavProtocolCapability
Source§fn known_bits(&self) -> Self::Bits
fn known_bits(&self) -> Self::Bits
Source§fn unknown_bits(&self) -> Self::Bits
fn unknown_bits(&self) -> Self::Bits
Source§fn contains_unknown_bits(&self) -> bool
fn contains_unknown_bits(&self) -> bool
true if any unknown bits are set.Source§fn from_bits_truncate(bits: Self::Bits) -> Self
fn from_bits_truncate(bits: Self::Bits) -> Self
Source§fn from_name(name: &str) -> Option<Self>
fn from_name(name: &str) -> Option<Self>
Source§fn iter_names(&self) -> IterNames<Self> ⓘ
fn iter_names(&self) -> IterNames<Self> ⓘ
Source§fn iter_defined_names() -> IterDefinedNames<Self> ⓘ
fn iter_defined_names() -> IterDefinedNames<Self> ⓘ
Self::FLAGS.Source§fn iter_equal_names(&self) -> IterEqualNames<Self> ⓘ
fn iter_equal_names(&self) -> IterEqualNames<Self> ⓘ
Source§fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
other are also set in self.Source§fn contains(&self, other: Self) -> boolwhere
Self: Sized,
fn contains(&self, other: Self) -> boolwhere
Self: Sized,
other are also set in self.Source§fn insert(&mut self, other: Self)where
Self: Sized,
fn insert(&mut self, other: Self)where
Self: Sized,
|) of the bits in self and other.Source§fn toggle(&mut self, other: Self)where
Self: Sized,
fn toggle(&mut self, other: Self)where
Self: Sized,
^) of the bits in self and other.Source§fn intersection(self, other: Self) -> Self
fn intersection(self, other: Self) -> Self
&) of the bits in self and other.Source§fn difference(self, other: Self) -> Self
fn difference(self, other: Self) -> Self
Source§fn symmetric_difference(self, other: Self) -> Self
fn symmetric_difference(self, other: Self) -> Self
^) of the bits in self and other.Source§fn complement(self) -> Self
fn complement(self) -> Self
!) of the bits in self, truncating the result.Source§impl FromIterator<MavProtocolCapability> for MavProtocolCapability
impl FromIterator<MavProtocolCapability> for MavProtocolCapability
Source§fn from_iter<T>(iterator: T) -> MavProtocolCapabilitywhere
T: IntoIterator<Item = MavProtocolCapability>,
fn from_iter<T>(iterator: T) -> MavProtocolCapabilitywhere
T: IntoIterator<Item = MavProtocolCapability>,
The bitwise or (|) of the bits in each flags value.
Source§impl IntoIterator for MavProtocolCapability
impl IntoIterator for MavProtocolCapability
Source§type Item = MavProtocolCapability
type Item = MavProtocolCapability
Source§type IntoIter = Iter<MavProtocolCapability>
type IntoIter = Iter<MavProtocolCapability>
Source§fn into_iter(self) -> <MavProtocolCapability as IntoIterator>::IntoIter
fn into_iter(self) -> <MavProtocolCapability as IntoIterator>::IntoIter
Source§impl LowerHex for MavProtocolCapability
impl LowerHex for MavProtocolCapability
Source§impl Not for MavProtocolCapability
impl Not for MavProtocolCapability
Source§fn not(self) -> MavProtocolCapability
fn not(self) -> MavProtocolCapability
The bitwise negation (!) of the bits in self, truncating the result.
Source§type Output = MavProtocolCapability
type Output = MavProtocolCapability
! operator.Source§impl Octal for MavProtocolCapability
impl Octal for MavProtocolCapability
Source§impl PartialEq for MavProtocolCapability
impl PartialEq for MavProtocolCapability
impl StructuralPartialEq for MavProtocolCapability
Source§impl Sub for MavProtocolCapability
impl Sub for MavProtocolCapability
Source§fn sub(self, other: MavProtocolCapability) -> MavProtocolCapability
fn sub(self, other: MavProtocolCapability) -> MavProtocolCapability
The intersection of self with the complement of other (&!).
This method is not equivalent to self & !other when other has unknown bits set.
difference won’t truncate other, but the ! operator will.
Source§type Output = MavProtocolCapability
type Output = MavProtocolCapability
- operator.Source§impl SubAssign for MavProtocolCapability
impl SubAssign for MavProtocolCapability
Source§fn sub_assign(&mut self, other: MavProtocolCapability)
fn sub_assign(&mut self, other: MavProtocolCapability)
The intersection of self with the complement of other (&!).
This method is not equivalent to self & !other when other has unknown bits set.
difference won’t truncate other, but the ! operator will.