Struct elevate_lib::controller::NearestController
source · pub struct NearestController {
pub building: Building,
}Expand description
NearestController struct
A NearestController implements the ElevatorController trait. It decides each
elevator’s direction based on the nearest destination floor among people on the
elevator, then the nearest floor with people waiting.
Fields§
§building: BuildingImplementations§
source§impl NearestController
impl NearestController
sourcepub fn from(building: Building) -> NearestController
pub fn from(building: Building) -> NearestController
Initialize a new NearestController given a Building.
Example
let my_building: Building = Building::from(
4_usize,
2_usize,
0.5_f64,
5.0_f64,
2.5_f64,
0.5_f64
);
let my_controller: NearestController = NearestController::from(my_building);Trait Implementations§
source§impl ElevatorController for NearestController
impl ElevatorController for NearestController
source§fn update_elevators(&mut self)
fn update_elevators(&mut self)
Decide each elevator’s direction based on the nearest destination floor among people on the elevator, then the nearest floor with people waiting.
Auto Trait Implementations§
impl RefUnwindSafe for NearestController
impl Send for NearestController
impl Sync for NearestController
impl Unpin for NearestController
impl UnwindSafe for NearestController
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
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.