Enum map_model::pathfind::engine::PathfindEngine
source · pub enum PathfindEngine {
Empty,
Dijkstra {
graph: DiGraph<usize, usize>,
},
CH {
graph: FastGraph,
path_calc: ThreadLocal<RefCell<PathCalculator>>,
},
}
Expand description
This operates on raw IDs and costs; no type safety. The thing containing this transforms to/from higher-level types.
Variants§
Implementations§
source§impl PathfindEngine
impl PathfindEngine
sourcepub fn calculate_path(
&self,
start: usize,
end: usize
) -> Option<(usize, Vec<usize>)>
pub fn calculate_path( &self, start: usize, end: usize ) -> Option<(usize, Vec<usize>)>
Returns (path cost, node IDs in path)
sourcepub fn calculate_path_multiple_sources_and_targets(
&self,
starts: Vec<(usize, usize)>,
ends: Vec<(usize, usize)>
) -> Option<(usize, Vec<usize>)>
pub fn calculate_path_multiple_sources_and_targets( &self, starts: Vec<(usize, usize)>, ends: Vec<(usize, usize)> ) -> Option<(usize, Vec<usize>)>
Returns (path cost, node IDs in path). Input is pairs of (node ID, extra weight)
pub fn reuse_ordering(&self) -> CreateEngine<'_>
pub fn is_dijkstra(&self) -> bool
pub fn all_costs_from(&self, start: usize) -> HashMap<usize, usize>
Trait Implementations§
source§impl Clone for PathfindEngine
impl Clone for PathfindEngine
source§impl<'de> Deserialize<'de> for PathfindEngine
impl<'de> Deserialize<'de> for PathfindEngine
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>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl !Freeze for PathfindEngine
impl RefUnwindSafe for PathfindEngine
impl Send for PathfindEngine
impl Sync for PathfindEngine
impl Unpin for PathfindEngine
impl UnwindSafe for PathfindEngine
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