![]() |
Eclipse SUMO - Simulation of Urban MObility
|
Data Structures | |
| struct | CompareByKey |
| struct | GetExtraWeightTypeHelper |
| struct | GetExtraWeightTypeHelper< ContractionHierarchyExtraWeight< T > > |
| struct | InverseLinkFunction |
| struct | InvertShorcutWeights |
| struct | ShortcutWeights |
| struct | ShortcutWeights< ContractionHierarchyExtraWeight< WeightT >, LinkFunction > |
Typedefs | |
| template<class T > | |
| using | GetExtraWeightType = typename GetExtraWeightTypeHelper< T >::type |
| template<class T > | |
| using | ReturnTypeWhenPassedIntOf = typename std::remove_const< typename std::remove_reference< decltype(std::declval< T >()(1))>::type >::type |
| template<class T > | |
| using | ValueTypeOfContainer = typename std::remove_const< typename std::remove_reference< decltype(std::declval< T >()[1])>::type >::type |
Functions | |
| template<bool is_stable, class T , class K > | |
| std::vector< unsigned > | compute_inverse_maybe_stable_sort_permutation_using_key (const std::vector< T > &v, unsigned key_count, const K &get_key) |
| template<class T , class K > | |
| std::vector< unsigned > | compute_key_pos (const std::vector< T > &v, unsigned key_count, const K &get_key) |
| template<bool is_stable, class T , class K > | |
| std::vector< unsigned > | compute_maybe_stable_sort_permutation_using_key (const std::vector< T > &v, unsigned key_count, const K &get_key) |
| template<class LinkFunction , class ExtraWeight , class TmpContainer , class DistContainer > | |
| void | extract_distances_to_targets (const std::vector< unsigned > &target_list, unsigned target_count, const TimestampFlags &has_forward_predecessor, const std::vector< unsigned > &forward_predecessor_node, const std::vector< unsigned > &predecessor_arc, const ExtraWeight &extra_weight, const std::vector< unsigned > &forward_first_out, const std::vector< unsigned > &forward_head, const std::vector< unsigned > &backward_first_out, const std::vector< unsigned > &backward_head, TmpContainer &source_to_node_distance, TimestampFlags &has_source_to_node_distance, DistContainer &output, std::vector< unsigned > &stack, const LinkFunction &link) |
| template<class GetForwardWeight , class LinkFunction > | |
| ReturnTypeWhenPassedIntOf< GetForwardWeight > | get_extra_weight_up_distance (unsigned shortest_path_meeting_node, const std::vector< unsigned > &forward_predecessor_node, const std::vector< unsigned > &forward_predecessor_arc, const GetForwardWeight &get_forward_extra_weight, const LinkFunction &link) |
| const char * | handle_null_ptr (const char *p) |
| const char * | handle_null_ptr (const decltype(nullptr)) |
| template<class T > | |
| const T & | handle_null_ptr (const T &t) |
| template<class ShortcutWeights , class LinkFunction > | |
| ShortcutWeights::Weight | internal_get_extra_weight_distance (const ShortcutWeights &shortcut_weights, const LinkFunction &link, unsigned shortest_path_meeting_node, const std::vector< unsigned > &forward_predecessor_node, const std::vector< unsigned > &forward_predecessor_arc, const std::vector< unsigned > &backward_predecessor_node, const std::vector< unsigned > &backward_predecessor_arc) |
| template<class LinkFunction > | |
| InverseLinkFunction< LinkFunction > | inverse_link_function (const LinkFunction &link) |
| template<class ShortcutWeights > | |
| InvertShorcutWeights< ShortcutWeights > | inverse_shortcut_weights (const ShortcutWeights &shortcut_weights) |
| template<class K > | |
| CompareByKey< K > | make_compare_by_key (unsigned n, const K &k) |
| template<class ExtraWeight , class LinkFunction > | |
| ShortcutWeights< ExtraWeight, LinkFunction > | make_shortcut_weights (const ExtraWeight &extra_weight, const LinkFunction &link, const ContractionHierarchy &ch) |
| template<bool is_stable, class T , class K > | |
| std::vector< T > | maybe_stable_sort_using_key (const std::vector< T > &v, unsigned key_count, const K &get_key) |
| template<bool is_stable, class T , class K > | |
| std::vector< T > | maybe_stable_sort_using_key (std::vector< T > &&v, unsigned key_count, const K &get_key) |
Variables | |
| const unsigned | bucket_sort_min_key_to_element_ratio = 16 |
| using RoutingKit::detail::GetExtraWeightType = typedef typename GetExtraWeightTypeHelper<T>::type |
Definition at line 101 of file contraction_hierarchy.h.
| using RoutingKit::detail::ReturnTypeWhenPassedIntOf = typedef typename std::remove_const<typename std::remove_reference<decltype(std::declval<T>()(1))>::type>::type |
Definition at line 85 of file contraction_hierarchy.h.
| using RoutingKit::detail::ValueTypeOfContainer = typedef typename std::remove_const<typename std::remove_reference<decltype(std::declval<T>()[1])>::type>::type |
Definition at line 88 of file contraction_hierarchy.h.
| std::vector< unsigned > RoutingKit::detail::compute_inverse_maybe_stable_sort_permutation_using_key | ( | const std::vector< T > & | v, |
| unsigned | key_count, | ||
| const K & | get_key | ||
| ) |
Definition at line 224 of file sort.h.
References bucket_sort_min_key_to_element_ratio, RoutingKit::compute_inverse_sort_permutation_using_comparator(), RoutingKit::compute_inverse_stable_sort_permutation_using_comparator(), compute_key_pos(), and make_compare_by_key().
| std::vector< unsigned > RoutingKit::detail::compute_key_pos | ( | const std::vector< T > & | v, |
| unsigned | key_count, | ||
| const K & | get_key | ||
| ) |
Definition at line 131 of file sort.h.
Referenced by compute_inverse_maybe_stable_sort_permutation_using_key(), compute_maybe_stable_sort_permutation_using_key(), maybe_stable_sort_using_key(), and maybe_stable_sort_using_key().
| std::vector< unsigned > RoutingKit::detail::compute_maybe_stable_sort_permutation_using_key | ( | const std::vector< T > & | v, |
| unsigned | key_count, | ||
| const K & | get_key | ||
| ) |
Definition at line 190 of file sort.h.
References bucket_sort_min_key_to_element_ratio, compute_key_pos(), RoutingKit::compute_sort_permutation_using_comparator(), RoutingKit::compute_stable_sort_permutation_using_comparator(), and make_compare_by_key().
| void RoutingKit::detail::extract_distances_to_targets | ( | const std::vector< unsigned > & | target_list, |
| unsigned | target_count, | ||
| const TimestampFlags & | has_forward_predecessor, | ||
| const std::vector< unsigned > & | forward_predecessor_node, | ||
| const std::vector< unsigned > & | predecessor_arc, | ||
| const ExtraWeight & | extra_weight, | ||
| const std::vector< unsigned > & | forward_first_out, | ||
| const std::vector< unsigned > & | forward_head, | ||
| const std::vector< unsigned > & | backward_first_out, | ||
| const std::vector< unsigned > & | backward_head, | ||
| TmpContainer & | source_to_node_distance, | ||
| TimestampFlags & | has_source_to_node_distance, | ||
| DistContainer & | output, | ||
| std::vector< unsigned > & | stack, | ||
| const LinkFunction & | link | ||
| ) |
Definition at line 543 of file contraction_hierarchy.h.
References RoutingKit::invalid_id, RoutingKit::TimestampFlags::is_set(), RoutingKit::TimestampFlags::reset_all(), and RoutingKit::TimestampFlags::set().
Referenced by RoutingKit::ContractionHierarchyQuery::get_extra_weight_distances_to_sources(), and RoutingKit::ContractionHierarchyQuery::get_extra_weight_distances_to_targets().
| ReturnTypeWhenPassedIntOf< GetForwardWeight > RoutingKit::detail::get_extra_weight_up_distance | ( | unsigned | shortest_path_meeting_node, |
| const std::vector< unsigned > & | forward_predecessor_node, | ||
| const std::vector< unsigned > & | forward_predecessor_arc, | ||
| const GetForwardWeight & | get_forward_extra_weight, | ||
| const LinkFunction & | link | ||
| ) |
Definition at line 406 of file contraction_hierarchy.h.
References RoutingKit::invalid_id.
Referenced by internal_get_extra_weight_distance().
|
inline |
|
inline |
| const T & RoutingKit::detail::handle_null_ptr | ( | const T & | t | ) |
| ShortcutWeights::Weight RoutingKit::detail::internal_get_extra_weight_distance | ( | const ShortcutWeights & | shortcut_weights, |
| const LinkFunction & | link, | ||
| unsigned | shortest_path_meeting_node, | ||
| const std::vector< unsigned > & | forward_predecessor_node, | ||
| const std::vector< unsigned > & | forward_predecessor_arc, | ||
| const std::vector< unsigned > & | backward_predecessor_node, | ||
| const std::vector< unsigned > & | backward_predecessor_arc | ||
| ) |
Definition at line 429 of file contraction_hierarchy.h.
References RoutingKit::detail::ShortcutWeights< InputWeightContainer, LinkFunction >::get_backward_weight(), get_extra_weight_up_distance(), RoutingKit::detail::ShortcutWeights< InputWeightContainer, LinkFunction >::get_forward_weight(), RoutingKit::invalid_id, and inverse_link_function().
Referenced by RoutingKit::ContractionHierarchyQuery::get_extra_weight_distance().
| InverseLinkFunction< LinkFunction > RoutingKit::detail::inverse_link_function | ( | const LinkFunction & | link | ) |
Definition at line 324 of file contraction_hierarchy.h.
Referenced by RoutingKit::ContractionHierarchyQuery::get_extra_weight_distances_to_sources(), and internal_get_extra_weight_distance().
| InvertShorcutWeights< ShortcutWeights > RoutingKit::detail::inverse_shortcut_weights | ( | const ShortcutWeights & | shortcut_weights | ) |
Definition at line 401 of file contraction_hierarchy.h.
Referenced by RoutingKit::ContractionHierarchyQuery::get_extra_weight_distances_to_sources().
| CompareByKey< K > RoutingKit::detail::make_compare_by_key | ( | unsigned | n, |
| const K & | k | ||
| ) |
Definition at line 173 of file sort.h.
Referenced by compute_inverse_maybe_stable_sort_permutation_using_key(), compute_maybe_stable_sort_permutation_using_key(), maybe_stable_sort_using_key(), and maybe_stable_sort_using_key().
| ShortcutWeights< ExtraWeight, LinkFunction > RoutingKit::detail::make_shortcut_weights | ( | const ExtraWeight & | extra_weight, |
| const LinkFunction & | link, | ||
| const ContractionHierarchy & | ch | ||
| ) |
Definition at line 379 of file contraction_hierarchy.h.
Referenced by RoutingKit::ContractionHierarchyQuery::get_extra_weight_distance(), RoutingKit::ContractionHierarchyQuery::get_extra_weight_distances_to_sources(), and RoutingKit::ContractionHierarchyQuery::get_extra_weight_distances_to_targets().
| std::vector< T > RoutingKit::detail::maybe_stable_sort_using_key | ( | const std::vector< T > & | v, |
| unsigned | key_count, | ||
| const K & | get_key | ||
| ) |
Definition at line 256 of file sort.h.
References bucket_sort_min_key_to_element_ratio, compute_key_pos(), make_compare_by_key(), RoutingKit::sort_using_comparator(), and RoutingKit::stable_sort_using_comparator().
| std::vector< T > RoutingKit::detail::maybe_stable_sort_using_key | ( | std::vector< T > && | v, |
| unsigned | key_count, | ||
| const K & | get_key | ||
| ) |
Definition at line 278 of file sort.h.
References bucket_sort_min_key_to_element_ratio, compute_key_pos(), make_compare_by_key(), RoutingKit::sort_using_comparator(), and RoutingKit::stable_sort_using_comparator().
| const unsigned RoutingKit::detail::bucket_sort_min_key_to_element_ratio = 16 |
Definition at line 128 of file sort.h.
Referenced by compute_inverse_maybe_stable_sort_permutation_using_key(), compute_maybe_stable_sort_permutation_using_key(), maybe_stable_sort_using_key(), and maybe_stable_sort_using_key().