pub struct MavGeneratorStatusFlag { /* private fields */ }
matrixpilot
only.Expand description
Flags to report status/failure cases for a power generator (used in GENERATOR_STATUS). Note that FAULTS are conditions that cause the generator to fail. Warnings are conditions that require attention before the next use (they indicate the system is not operating properly).
Implementations§
Source§impl MavGeneratorStatusFlag
impl MavGeneratorStatusFlag
Sourcepub const MAV_GENERATOR_STATUS_FLAG_OFF: Self
pub const MAV_GENERATOR_STATUS_FLAG_OFF: Self
Generator is off.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_READY: Self
pub const MAV_GENERATOR_STATUS_FLAG_READY: Self
Generator is ready to start generating power.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_GENERATING: Self
pub const MAV_GENERATOR_STATUS_FLAG_GENERATING: Self
Generator is generating power.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_CHARGING: Self
pub const MAV_GENERATOR_STATUS_FLAG_CHARGING: Self
Generator is charging the batteries (generating enough power to charge and provide the load).
Sourcepub const MAV_GENERATOR_STATUS_FLAG_REDUCED_POWER: Self
pub const MAV_GENERATOR_STATUS_FLAG_REDUCED_POWER: Self
Generator is operating at a reduced maximum power.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_MAXPOWER: Self
pub const MAV_GENERATOR_STATUS_FLAG_MAXPOWER: Self
Generator is providing the maximum output.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_OVERTEMP_WARNING: Self
pub const MAV_GENERATOR_STATUS_FLAG_OVERTEMP_WARNING: Self
Generator is near the maximum operating temperature, cooling is insufficient.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_OVERTEMP_FAULT: Self
pub const MAV_GENERATOR_STATUS_FLAG_OVERTEMP_FAULT: Self
Generator hit the maximum operating temperature and shutdown.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_WARNING: Self
pub const MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_WARNING: Self
Power electronics are near the maximum operating temperature, cooling is insufficient.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_FAULT: Self
pub const MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_OVERTEMP_FAULT: Self
Power electronics hit the maximum operating temperature and shutdown.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_FAULT: Self
pub const MAV_GENERATOR_STATUS_FLAG_ELECTRONICS_FAULT: Self
Power electronics experienced a fault and shutdown.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_POWERSOURCE_FAULT: Self
pub const MAV_GENERATOR_STATUS_FLAG_POWERSOURCE_FAULT: Self
The power source supplying the generator failed e.g. mechanical generator stopped, tether is no longer providing power, solar cell is in shade, hydrogen reaction no longer happening.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_COMMUNICATION_WARNING: Self
pub const MAV_GENERATOR_STATUS_FLAG_COMMUNICATION_WARNING: Self
Generator controller having communication problems.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_COOLING_WARNING: Self
pub const MAV_GENERATOR_STATUS_FLAG_COOLING_WARNING: Self
Power electronic or generator cooling system error.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_POWER_RAIL_FAULT: Self
pub const MAV_GENERATOR_STATUS_FLAG_POWER_RAIL_FAULT: Self
Generator controller power rail experienced a fault.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_OVERCURRENT_FAULT: Self
pub const MAV_GENERATOR_STATUS_FLAG_OVERCURRENT_FAULT: Self
Generator controller exceeded the overcurrent threshold and shutdown to prevent damage.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_BATTERY_OVERCHARGE_CURRENT_FAULT: Self
pub const MAV_GENERATOR_STATUS_FLAG_BATTERY_OVERCHARGE_CURRENT_FAULT: Self
Generator controller detected a high current going into the batteries and shutdown to prevent battery damage.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_OVERVOLTAGE_FAULT: Self
pub const MAV_GENERATOR_STATUS_FLAG_OVERVOLTAGE_FAULT: Self
Generator controller exceeded it’s overvoltage threshold and shutdown to prevent it exceeding the voltage rating.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_BATTERY_UNDERVOLT_FAULT: Self
pub const MAV_GENERATOR_STATUS_FLAG_BATTERY_UNDERVOLT_FAULT: Self
Batteries are under voltage (generator will not start).
Sourcepub const MAV_GENERATOR_STATUS_FLAG_START_INHIBITED: Self
pub const MAV_GENERATOR_STATUS_FLAG_START_INHIBITED: Self
Generator start is inhibited by e.g. a safety switch.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_MAINTENANCE_REQUIRED: Self
pub const MAV_GENERATOR_STATUS_FLAG_MAINTENANCE_REQUIRED: Self
Generator requires maintenance.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_WARMING_UP: Self
pub const MAV_GENERATOR_STATUS_FLAG_WARMING_UP: Self
Generator is not ready to generate yet.
Sourcepub const MAV_GENERATOR_STATUS_FLAG_IDLE: Self
pub const MAV_GENERATOR_STATUS_FLAG_IDLE: Self
Generator is idle.
Sourcepub const fn from_bits(bits: u64) -> Option<Self>
pub const fn from_bits(bits: u64) -> Option<Self>
Convert from underlying bit representation, unless that representation contains bits that do not correspond to a flag.
Sourcepub const fn from_bits_truncate(bits: u64) -> Self
pub const fn from_bits_truncate(bits: u64) -> Self
Convert from underlying bit representation, dropping any bits that do not correspond to flags.
Sourcepub const unsafe fn from_bits_unchecked(bits: u64) -> Self
pub const unsafe fn from_bits_unchecked(bits: u64) -> Self
Convert from underlying bit representation, preserving all bits (even those not corresponding to a defined flag).
§Safety
The caller of the bitflags!
macro can chose to allow or
disallow extra bits for their bitflags type.
The caller of from_bits_unchecked()
has to ensure that
all bits correspond to a defined flag or that extra bits
are valid for this bitflags type.
Sourcepub const fn intersects(&self, other: Self) -> bool
pub const fn intersects(&self, other: Self) -> bool
Returns true
if there are flags common to both self
and other
.
Sourcepub const fn contains(&self, other: Self) -> bool
pub const fn contains(&self, other: Self) -> bool
Returns true
if all of the flags in other
are contained within self
.
Sourcepub fn set(&mut self, other: Self, value: bool)
pub fn set(&mut self, other: Self, value: bool)
Inserts or removes the specified flags depending on the passed value.
Sourcepub const fn intersection(self, other: Self) -> Self
pub const fn intersection(self, other: Self) -> Self
Returns the intersection between the flags in self
and
other
.
Specifically, the returned set contains only the flags which are
present in both self
and other
.
This is equivalent to using the &
operator (e.g.
ops::BitAnd
), as in flags & other
.
Sourcepub const fn union(self, other: Self) -> Self
pub const fn union(self, other: Self) -> Self
Returns the union of between the flags in self
and other
.
Specifically, the returned set contains all flags which are
present in either self
or other
, including any which are
present in both (see Self::symmetric_difference
if that
is undesirable).
This is equivalent to using the |
operator (e.g.
ops::BitOr
), as in flags | other
.
Sourcepub const fn difference(self, other: Self) -> Self
pub const fn difference(self, other: Self) -> Self
Returns the difference between the flags in self
and other
.
Specifically, the returned set contains all flags present in
self
, except for the ones present in other
.
It is also conceptually equivalent to the “bit-clear” operation:
flags & !other
(and this syntax is also supported).
This is equivalent to using the -
operator (e.g.
ops::Sub
), as in flags - other
.
Sourcepub const fn symmetric_difference(self, other: Self) -> Self
pub const fn symmetric_difference(self, other: Self) -> Self
Returns the symmetric difference between the flags
in self
and other
.
Specifically, the returned set contains the flags present which
are present in self
or other
, but that are not present in
both. Equivalently, it contains the flags present in exactly
one of the sets self
and other
.
This is equivalent to using the ^
operator (e.g.
ops::BitXor
), as in flags ^ other
.
Sourcepub const fn complement(self) -> Self
pub const fn complement(self) -> Self
Returns the complement of this set of flags.
Specifically, the returned set contains all the flags which are
not set in self
, but which are allowed for this type.
Alternatively, it can be thought of as the set difference
between Self::all()
and self
(e.g. Self::all() - self
)
This is equivalent to using the !
operator (e.g.
ops::Not
), as in !flags
.
Trait Implementations§
Source§impl Binary for MavGeneratorStatusFlag
impl Binary for MavGeneratorStatusFlag
Source§impl BitAnd for MavGeneratorStatusFlag
impl BitAnd for MavGeneratorStatusFlag
Source§impl BitAndAssign for MavGeneratorStatusFlag
impl BitAndAssign for MavGeneratorStatusFlag
Source§fn bitand_assign(&mut self, other: Self)
fn bitand_assign(&mut self, other: Self)
Disables all flags disabled in the set.
Source§impl BitOr for MavGeneratorStatusFlag
impl BitOr for MavGeneratorStatusFlag
Source§fn bitor(self, other: MavGeneratorStatusFlag) -> Self
fn bitor(self, other: MavGeneratorStatusFlag) -> Self
Returns the union of the two sets of flags.
Source§type Output = MavGeneratorStatusFlag
type Output = MavGeneratorStatusFlag
|
operator.Source§impl BitOrAssign for MavGeneratorStatusFlag
impl BitOrAssign for MavGeneratorStatusFlag
Source§fn bitor_assign(&mut self, other: Self)
fn bitor_assign(&mut self, other: Self)
Adds the set of flags.
Source§impl BitXor for MavGeneratorStatusFlag
impl BitXor for MavGeneratorStatusFlag
Source§impl BitXorAssign for MavGeneratorStatusFlag
impl BitXorAssign for MavGeneratorStatusFlag
Source§fn bitxor_assign(&mut self, other: Self)
fn bitxor_assign(&mut self, other: Self)
Toggles the set of flags.
Source§impl Clone for MavGeneratorStatusFlag
impl Clone for MavGeneratorStatusFlag
Source§fn clone(&self) -> MavGeneratorStatusFlag
fn clone(&self) -> MavGeneratorStatusFlag
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for MavGeneratorStatusFlag
impl Debug for MavGeneratorStatusFlag
Source§impl Default for MavGeneratorStatusFlag
impl Default for MavGeneratorStatusFlag
Source§impl<'de> Deserialize<'de> for MavGeneratorStatusFlag
impl<'de> Deserialize<'de> for MavGeneratorStatusFlag
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Extend<MavGeneratorStatusFlag> for MavGeneratorStatusFlag
impl Extend<MavGeneratorStatusFlag> for MavGeneratorStatusFlag
Source§fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
fn extend<T: IntoIterator<Item = Self>>(&mut self, iterator: T)
Source§fn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one
)Source§fn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one
)Source§impl FromIterator<MavGeneratorStatusFlag> for MavGeneratorStatusFlag
impl FromIterator<MavGeneratorStatusFlag> for MavGeneratorStatusFlag
Source§fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self
fn from_iter<T: IntoIterator<Item = Self>>(iterator: T) -> Self
Source§impl Hash for MavGeneratorStatusFlag
impl Hash for MavGeneratorStatusFlag
Source§impl LowerHex for MavGeneratorStatusFlag
impl LowerHex for MavGeneratorStatusFlag
Source§impl Not for MavGeneratorStatusFlag
impl Not for MavGeneratorStatusFlag
Source§impl Octal for MavGeneratorStatusFlag
impl Octal for MavGeneratorStatusFlag
Source§impl Ord for MavGeneratorStatusFlag
impl Ord for MavGeneratorStatusFlag
Source§fn cmp(&self, other: &MavGeneratorStatusFlag) -> Ordering
fn cmp(&self, other: &MavGeneratorStatusFlag) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for MavGeneratorStatusFlag
impl PartialEq for MavGeneratorStatusFlag
Source§impl PartialOrd for MavGeneratorStatusFlag
impl PartialOrd for MavGeneratorStatusFlag
Source§impl Serialize for MavGeneratorStatusFlag
impl Serialize for MavGeneratorStatusFlag
Source§impl Sub for MavGeneratorStatusFlag
impl Sub for MavGeneratorStatusFlag
Source§impl SubAssign for MavGeneratorStatusFlag
impl SubAssign for MavGeneratorStatusFlag
Source§fn sub_assign(&mut self, other: Self)
fn sub_assign(&mut self, other: Self)
Disables all flags enabled in the set.