1#ifndef ROUTING_KIT_CUSTOMIZABLE_CONSTRACTION_HIERARCHY_H
2#define ROUTING_KIT_CUSTOMIZABLE_CONSTRACTION_HIERARCHY_H
15class ContractionHierarchy;
20 CustomizableContractionHierarchy(std::vector<unsigned>
order, std::vector<unsigned>
tail, std::vector<unsigned>head, std::function<
void(
const std::string&)>log_message = [](
const std::string&){},
bool filter_always_inf_arcs =
false);
std::vector< unsigned > tail
CustomizableContractionHierarchyMetric * metric
std::vector< unsigned > down_head
BitVector is_input_arc_upward
std::vector< unsigned > first_extra_forward_input_arc_of_cch
std::vector< unsigned > extra_forward_input_arc_of_cch
BitVector does_cch_arc_have_extra_input_arc
std::vector< unsigned > up_first_out
std::vector< unsigned > extra_backward_input_arc_of_cch
std::vector< unsigned > up_head
CustomizableContractionHierarchy()
std::vector< unsigned > backward_input_arc_of_cch
unsigned cch_arc_count() const
BitVector does_cch_arc_have_input_arc
std::vector< unsigned > down_first_out
std::vector< unsigned > elimination_tree_parent
LocalIDMapper does_cch_arc_have_extra_input_arc_mapper
unsigned node_count() const
std::vector< unsigned > down_to_up
std::vector< unsigned > input_arc_to_cch_arc
LocalIDMapper does_cch_arc_have_input_arc_mapper
unsigned input_arc_count() const
std::vector< unsigned > order
std::vector< unsigned > up_tail
std::vector< unsigned > first_extra_backward_input_arc_of_cch
std::vector< unsigned > forward_input_arc_of_cch
std::vector< unsigned > rank
ContractionHierarchy build_contraction_hierarchy_using_perfect_witness_search()
CustomizableContractionHierarchyMetric()
CustomizableContractionHierarchyMetric & customize()
const unsigned * input_weight
std::vector< unsigned > forward
const CustomizableContractionHierarchy * cch
std::vector< unsigned > backward
CustomizableContractionHierarchyMetric & reset(const CustomizableContractionHierarchy &cch, const unsigned *input_weight)
std::vector< unsigned > first_arc_of_level
CustomizableContractionHierarchyParallelization & reset(const CustomizableContractionHierarchy &cch)
CustomizableContractionHierarchyParallelization()
std::vector< unsigned > arcs_ordered_by_level
const CustomizableContractionHierarchy * cch
CustomizableContractionHierarchyParallelization & customize(CustomizableContractionHierarchyMetric &metric)
CustomizableContractionHierarchyPartialCustomization & customize(CustomizableContractionHierarchyMetric &metric)
CustomizableContractionHierarchyPartialCustomization()
const CustomizableContractionHierarchy * cch
CustomizableContractionHierarchyPartialCustomization & update_arc(unsigned xy)
CustomizableContractionHierarchyPartialCustomization & reset()
std::vector< unsigned > get_distances_to_sources()
CustomizableContractionHierarchyQuery & reset_source()
std::vector< unsigned > get_distances_to_targets()
CustomizableContractionHierarchyQuery & pin_targets(const std::vector< unsigned > &)
std::vector< unsigned > source_node
std::vector< unsigned > get_node_path()
std::vector< unsigned > forward_tentative_distance
std::vector< bool > in_forward_search_space
CustomizableContractionHierarchyQuery & run()
std::vector< unsigned > get_arc_path()
CustomizableContractionHierarchyQuery & run_to_pinned_sources()
std::vector< unsigned > backward_predecessor_node
unsigned get_used_target()
std::vector< unsigned > forward_predecessor_node
std::vector< unsigned > source_elimination_tree_end
std::vector< unsigned > target_node
std::vector< bool > in_backward_search_space
std::vector< unsigned > target_elimination_tree_end
CustomizableContractionHierarchyQuery & run_to_pinned_targets()
unsigned shortest_path_meeting_node
CustomizableContractionHierarchyQuery()
CustomizableContractionHierarchyQuery & pin_sources(const std::vector< unsigned > &)
CustomizableContractionHierarchyQuery & add_source(unsigned s, unsigned dist_to_s=0)
unsigned get_used_source()
CustomizableContractionHierarchyQuery & reset_target()
CustomizableContractionHierarchyQuery & add_target(unsigned t, unsigned dist_to_t=0)
const CustomizableContractionHierarchyMetric * metric
std::vector< unsigned > backward_tentative_distance
CustomizableContractionHierarchyQuery & reset()
const CustomizableContractionHierarchy * cch