diff options
Diffstat (limited to 'routing/base/astar_graph.hpp')
-rw-r--r-- | routing/base/astar_graph.hpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/routing/base/astar_graph.hpp b/routing/base/astar_graph.hpp new file mode 100644 index 0000000000..1647c96db7 --- /dev/null +++ b/routing/base/astar_graph.hpp @@ -0,0 +1,23 @@ +#pragma once + +#include <vector> + +namespace routing +{ +template <typename VertexType, typename EdgeType, typename WeightType> +class AStarGraph +{ +public: + + using Vertex = VertexType; + using Edge = EdgeType; + using Weight = WeightType; + + virtual Weight HeuristicCostEstimate(Vertex const & from, Vertex const & to) = 0; + + virtual void GetOutgoingEdgesList(Vertex const & v, std::vector<Edge> & edges) = 0; + virtual void GetIngoingEdgesList(Vertex const & v, std::vector<Edge> & edges) = 0; + + virtual ~AStarGraph() = default; +}; +} // namespace routing |