MCPcopy Create free account
hub / github.com/Project-OSRM/osrm-backend / LoadAndUpdateEdgeExpandedGraph

Function LoadAndUpdateEdgeExpandedGraph

src/customize/customizer.cpp:74–98  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

72}
73
74auto LoadAndUpdateEdgeExpandedGraph(const CustomizationConfig &config,
75 const partitioner::MultiLevelPartition &mlp,
76 std::vector<EdgeWeight> &node_weights,
77 std::vector<EdgeDuration> &node_durations,
78 std::vector<EdgeDistance> &node_distances,
79 std::uint32_t &connectivity_checksum)
80{
81 updater::Updater updater(config.updater_config);
82
83 std::vector<extractor::EdgeBasedEdge> edge_based_edge_list;
84 EdgeID num_nodes = updater.LoadAndUpdateEdgeExpandedGraph(
85 edge_based_edge_list, node_weights, node_durations, connectivity_checksum);
86
87 extractor::files::readEdgeBasedNodeDistances(config.GetPath(".osrm.enw"), node_distances);
88
89 auto directed = partitioner::splitBidirectionalEdges(edge_based_edge_list);
90
91 auto tidied =
92 partitioner::prepareEdgesForUsageInGraph<partitioner::MultiLevelEdgeBasedGraph::InputEdge>(
93 std::move(directed));
94
95 auto edge_based_graph = partitioner::MultiLevelEdgeBasedGraph(mlp, num_nodes, tidied);
96
97 return edge_based_graph;
98}
99
100std::vector<CellMetric> customizeFilteredMetrics(const partitioner::MultiLevelEdgeBasedGraph &graph,
101 const partitioner::CellStorage &storage,

Callers 2

RunMethod · 0.85

Calls 4

splitBidirectionalEdgesFunction · 0.85
GetPathMethod · 0.80

Tested by

no test coverage detected