2017-03-07 18:30:49 -05:00
|
|
|
#ifndef OSRM_UPDATER_UPDATER_HPP
|
|
|
|
#define OSRM_UPDATER_UPDATER_HPP
|
|
|
|
|
|
|
|
#include "updater/updater_config.hpp"
|
|
|
|
|
|
|
|
#include "extractor/edge_based_edge.hpp"
|
|
|
|
|
2017-05-11 06:13:52 -04:00
|
|
|
#include <chrono>
|
2017-03-07 18:30:49 -05:00
|
|
|
#include <vector>
|
|
|
|
|
2022-12-11 04:10:26 -05:00
|
|
|
namespace osrm::updater
|
2017-03-07 18:30:49 -05:00
|
|
|
{
|
|
|
|
class Updater
|
|
|
|
{
|
2017-03-09 17:45:27 -05:00
|
|
|
public:
|
|
|
|
Updater(UpdaterConfig config_) : config(std::move(config_)) {}
|
2017-03-07 18:30:49 -05:00
|
|
|
|
2018-04-22 14:05:11 -04:00
|
|
|
EdgeID
|
|
|
|
LoadAndUpdateEdgeExpandedGraph(std::vector<extractor::EdgeBasedEdge> &edge_based_edge_list,
|
|
|
|
std::vector<EdgeWeight> &node_weights,
|
|
|
|
std::uint32_t &connectivity_checksum) const;
|
2017-03-10 17:35:46 -05:00
|
|
|
|
2018-10-30 00:47:49 -04:00
|
|
|
EdgeID LoadAndUpdateEdgeExpandedGraph(
|
|
|
|
std::vector<extractor::EdgeBasedEdge> &edge_based_edge_list,
|
|
|
|
std::vector<EdgeWeight> &node_weights,
|
|
|
|
std::vector<EdgeDuration> &node_durations, // TODO: remove when optional
|
|
|
|
std::uint32_t &connectivity_checksum) const;
|
|
|
|
EdgeID LoadAndUpdateEdgeExpandedGraph(
|
|
|
|
std::vector<extractor::EdgeBasedEdge> &edge_based_edge_list,
|
|
|
|
std::vector<EdgeWeight> &node_weights,
|
|
|
|
std::vector<EdgeDuration> &node_durations, // TODO: remove when optional
|
|
|
|
std::vector<EdgeDistance> &node_distances, // TODO: remove when optional
|
|
|
|
std::uint32_t &connectivity_checksum) const;
|
2017-03-07 18:30:49 -05:00
|
|
|
|
2017-03-09 17:45:27 -05:00
|
|
|
private:
|
2017-03-07 18:30:49 -05:00
|
|
|
UpdaterConfig config;
|
|
|
|
};
|
2022-12-20 12:00:11 -05:00
|
|
|
} // namespace osrm::updater
|
2017-03-07 18:30:49 -05:00
|
|
|
|
|
|
|
#endif
|