1#ifndef ROUTING_KIT_NESTED_DISSECTION_H
2#define ROUTING_KIT_NESTED_DISSECTION_H
74 const GraphFragment&fragment,
76 const std::vector<float>&latitude,
const std::vector<float>&longitude,
77 const std::function<
void(
const std::string&)>&log_message = [](
const std::string&){}
81 const GraphFragment&fragment,
82 const std::vector<float>&latitude,
const std::vector<float>&longitude,
83 const std::function<
void(
const std::string&)>&log_message = [](
const std::string&){}
103 const std::function<
void(
const std::string&)>&log_message = [](
const std::string&){}
107 GraphFragment fragment,
108 const std::function<BitVector(
const GraphFragment&)>&compute_separator,
109 const std::function<
void(
const std::string&)>&log_message = [](
const std::string&){}
114 const std::vector<unsigned>&
tail,
const std::vector<unsigned>&head,
115 const std::vector<float>&latitude,
const std::vector<float>&longitude,
116 const std::function<
void(
const std::string&)>&log_message = [](
const std::string&){}
CutSide get_balanced_cut()
const GraphFragment * fragment
BitVector is_arc_saturated
unsigned get_current_flow_intensity() const
std::vector< unsigned > tail
std::vector< GraphFragment > decompose_graph_fragment_into_connected_components(GraphFragment fragment)
BitVector derive_separator_from_cut(const GraphFragment &fragment, const BitVector &cut)
std::vector< unsigned > compute_nested_node_dissection_order(GraphFragment fragment, const std::function< BitVector(const GraphFragment &)> &compute_separator, const std::function< void(const std::string &)> &log_message=[](const std::string &){})
std::vector< unsigned > compute_nested_node_dissection_order_using_inertial_flow(unsigned node_count, const std::vector< unsigned > &tail, const std::vector< unsigned > &head, const std::vector< float > &latitude, const std::vector< float > &longitude, const std::function< void(const std::string &)> &log_message=[](const std::string &){})
SeparatorDecomposition compute_separator_decomposition(GraphFragment fragment, const std::function< BitVector(const GraphFragment &)> &compute_separator, const std::function< void(const std::string &)> &log_message=[](const std::string &){})
void pick_smaller_side(CutSide &cut)
GraphFragment make_graph_fragment(unsigned node_count, const std::vector< unsigned > &tail, const std::vector< unsigned > &head)
CutSide inertial_flow(const GraphFragment &fragment, unsigned min_balance, const std::vector< float > &latitude, const std::vector< float > &longitude, const std::function< void(const std::string &)> &log_message=[](const std::string &){})
unsigned node_on_side_count
BitVector is_node_on_side
std::vector< unsigned > tail
std::vector< unsigned > head
std::vector< unsigned > first_out
std::vector< unsigned > back_arc
unsigned arc_count() const
unsigned node_count() const
std::vector< unsigned > global_node_id
unsigned first_separator_vertex
unsigned last_separator_vertex
std::vector< unsigned > order