osrm-backend/include/partitioner/tarjan_graph_wrapper.hpp
2022-12-20 18:00:11 +01:00

27 lines
648 B
C++

#ifndef OSRM_PARTITIONER_TARJAN_GRAPH_WRAPPER_HPP_
#define OSRM_PARTITIONER_TARJAN_GRAPH_WRAPPER_HPP_
#include "partitioner/bisection_graph.hpp"
#include "util/integer_range.hpp"
#include "util/typedefs.hpp"
namespace osrm::partitioner
{
class TarjanGraphWrapper
{
public:
TarjanGraphWrapper(const BisectionGraph &bisection_graph);
std::size_t GetNumberOfNodes() const;
util::range<EdgeID> GetAdjacentEdgeRange(const NodeID nid) const;
NodeID GetTarget(const EdgeID eid) const;
protected:
const BisectionGraph &bisection_graph;
};
} // namespace osrm::partitioner
#endif // OSRM_PARTITIONER_TARJAN_GRAPH_WRAPPER_HPP_