pub struct MavGeneratorStatusFlag(/* private fields */);
cubepilot
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.
Source§impl MavGeneratorStatusFlag
impl MavGeneratorStatusFlag
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<Self>
pub const fn from_bits(bits: u64) -> Option<Self>
Convert from a bits value.
This method will return None
if any unknown bits are set.
Sourcepub const fn from_bits_truncate(bits: u64) -> Self
pub const fn from_bits_truncate(bits: u64) -> Self
Convert from a bits value, unsetting any unknown bits.
Sourcepub const fn from_bits_retain(bits: u64) -> Self
pub const fn from_bits_retain(bits: u64) -> Self
Convert from a bits value exactly.
Sourcepub fn from_name(name: &str) -> Option<Self>
pub fn from_name(name: &str) -> Option<Self>
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: Self) -> bool
pub const fn intersects(&self, other: Self) -> bool
Whether any set bits in a source flags value are also set in a target flags value.
Sourcepub const fn contains(&self, other: Self) -> bool
pub const fn contains(&self, other: Self) -> bool
Whether all set bits in a source flags value are also set in a target flags value.
Sourcepub fn remove(&mut self, other: Self)
pub fn remove(&mut self, other: Self)
The intersection of a source flags value with the complement of a target flags value (&!
).
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: Self)
pub fn toggle(&mut self, other: Self)
The bitwise exclusive-or (^
) of the bits in two flags values.
Sourcepub fn set(&mut self, other: Self, value: bool)
pub fn set(&mut self, other: Self, value: bool)
Call insert
when value
is true
or remove
when value
is false
.
Sourcepub const fn intersection(self, other: Self) -> Self
pub const fn intersection(self, other: Self) -> Self
The bitwise and (&
) of the bits in two flags values.
Sourcepub const fn union(self, other: Self) -> Self
pub const fn union(self, other: Self) -> Self
The bitwise or (|
) of the bits in two flags values.
Sourcepub const fn difference(self, other: Self) -> Self
pub const fn difference(self, other: Self) -> Self
The intersection of a source flags value with the complement of a target flags value (&!
).
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: Self) -> Self
pub const fn symmetric_difference(self, other: Self) -> Self
The bitwise exclusive-or (^
) of the bits in two flags values.
Sourcepub const fn complement(self) -> Self
pub const fn complement(self) -> Self
The bitwise negation (!
) of the bits in a flags value, truncating the result.
Source§impl MavGeneratorStatusFlag
impl MavGeneratorStatusFlag
Sourcepub const fn iter(&self) -> Iter<MavGeneratorStatusFlag>
pub const fn iter(&self) -> Iter<MavGeneratorStatusFlag>
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<MavGeneratorStatusFlag>
pub const fn iter_names(&self) -> IterNames<MavGeneratorStatusFlag>
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.
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)
The bitwise and (&
) of the bits in two flags values.
Source§impl BitOr for MavGeneratorStatusFlag
impl BitOr for MavGeneratorStatusFlag
Source§fn bitor(self, other: MavGeneratorStatusFlag) -> Self
fn bitor(self, other: MavGeneratorStatusFlag) -> Self
The bitwise or (|
) of the bits in two flags values.
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)
The bitwise or (|
) of the bits in two flags values.
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)
The bitwise exclusive-or (^
) of the bits in two flags values.
Source§impl Clone for MavGeneratorStatusFlag
impl Clone for MavGeneratorStatusFlag
Source§fn clone(&self) -> MavGeneratorStatusFlag
fn clone(&self) -> MavGeneratorStatusFlag
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const 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)
The bitwise or (|
) of the bits in each flags value.
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 Flags for MavGeneratorStatusFlag
impl Flags for MavGeneratorStatusFlag
Source§const FLAGS: &'static [Flag<MavGeneratorStatusFlag>]
const FLAGS: &'static [Flag<MavGeneratorStatusFlag>]
Source§fn from_bits_retain(bits: u64) -> MavGeneratorStatusFlag
fn from_bits_retain(bits: u64) -> MavGeneratorStatusFlag
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 intersects(&self, other: Self) -> boolwhere
Self: Sized,
fn intersects(&self, other: Self) -> boolwhere
Self: Sized,
Source§fn contains(&self, other: Self) -> boolwhere
Self: Sized,
fn contains(&self, other: Self) -> boolwhere
Self: Sized,
Source§fn insert(&mut self, other: Self)where
Self: Sized,
fn insert(&mut self, other: Self)where
Self: Sized,
|
) of the bits in two flags values.Source§fn remove(&mut self, other: Self)where
Self: Sized,
fn remove(&mut self, other: Self)where
Self: Sized,
&!
). Read moreSource§fn toggle(&mut self, other: Self)where
Self: Sized,
fn toggle(&mut self, other: Self)where
Self: Sized,
^
) of the bits in two flags values.Source§fn intersection(self, other: Self) -> Self
fn intersection(self, other: Self) -> Self
&
) of the bits in two flags values.Source§fn difference(self, other: Self) -> Self
fn difference(self, other: Self) -> Self
&!
). Read moreSource§fn symmetric_difference(self, other: Self) -> Self
fn symmetric_difference(self, other: Self) -> Self
^
) of the bits in two flags values.Source§fn complement(self) -> Self
fn complement(self) -> Self
!
) of the bits in a flags value, truncating the result.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
The bitwise or (|
) of the bits in each flags value.
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 PartialEq for MavGeneratorStatusFlag
impl PartialEq for MavGeneratorStatusFlag
Source§fn eq(&self, other: &MavGeneratorStatusFlag) -> bool
fn eq(&self, other: &MavGeneratorStatusFlag) -> bool
self
and other
values to be equal, and is used by ==
.Source§impl PublicFlags for MavGeneratorStatusFlag
impl PublicFlags for MavGeneratorStatusFlag
Source§impl Serialize for MavGeneratorStatusFlag
impl Serialize for MavGeneratorStatusFlag
Source§impl Sub for MavGeneratorStatusFlag
impl Sub for MavGeneratorStatusFlag
Source§fn sub(self, other: Self) -> Self
fn sub(self, other: Self) -> Self
The intersection of a source flags value with the complement of a target flags value (&!
).
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 = MavGeneratorStatusFlag
type Output = MavGeneratorStatusFlag
-
operator.Source§impl SubAssign for MavGeneratorStatusFlag
impl SubAssign for MavGeneratorStatusFlag
Source§fn sub_assign(&mut self, other: Self)
fn sub_assign(&mut self, other: Self)
The intersection of a source flags value with the complement of a target flags value (&!
).
This method is not equivalent to self & !other
when other
has unknown bits set.
difference
won’t truncate other
, but the !
operator will.