pub struct RangeModeConfig {
pub available_modes: Vec<RangeMode>,
pub current_mode: RangeMode,
pub mode_capabilities: HashMap<RangeMode, TransportCapabilities>,
}Expand description
Range mode configuration for a transport
Fields§
§available_modes: Vec<RangeMode>Available modes for this transport
current_mode: RangeModeCurrent active mode
mode_capabilities: HashMap<RangeMode, TransportCapabilities>Capabilities per mode
Implementations§
Source§impl RangeModeConfig
impl RangeModeConfig
Sourcepub fn new(modes: Vec<(RangeMode, TransportCapabilities)>) -> RangeModeConfig
pub fn new(modes: Vec<(RangeMode, TransportCapabilities)>) -> RangeModeConfig
Create a new range mode configuration
Sourcepub fn current_capabilities(&self) -> Option<&TransportCapabilities>
pub fn current_capabilities(&self) -> Option<&TransportCapabilities>
Get capabilities for the current mode
Sourcepub fn recommend_for_distance(&self, distance_meters: u32) -> Option<RangeMode>
pub fn recommend_for_distance(&self, distance_meters: u32) -> Option<RangeMode>
Find the best mode for a target distance
Trait Implementations§
Source§impl Clone for RangeModeConfig
impl Clone for RangeModeConfig
Source§fn clone(&self) -> RangeModeConfig
fn clone(&self) -> RangeModeConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for RangeModeConfig
impl RefUnwindSafe for RangeModeConfig
impl Send for RangeModeConfig
impl Sync for RangeModeConfig
impl Unpin for RangeModeConfig
impl UnsafeUnpin for RangeModeConfig
impl UnwindSafe for RangeModeConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more