This PR improves routing results by adding support for snapping to multiple ways at input locations. This means all edges at the snapped location can act as source/target candidates for routing search, ensuring we always find the best route, and not the one dependent on the edge selected.
28 lines
738 B
C++
28 lines
738 B
C++
#ifndef OSRM_SHORTEST_PATH_HPP
|
|
#define OSRM_SHORTEST_PATH_HPP
|
|
|
|
#include "engine/algorithm.hpp"
|
|
#include "engine/routing_algorithms/routing_base.hpp"
|
|
#include "engine/search_engine_data.hpp"
|
|
#include "util/typedefs.hpp"
|
|
|
|
namespace osrm
|
|
{
|
|
namespace engine
|
|
{
|
|
namespace routing_algorithms
|
|
{
|
|
|
|
template <typename Algorithm>
|
|
InternalRouteResult
|
|
shortestPathSearch(SearchEngineData<Algorithm> &engine_working_data,
|
|
const DataFacade<Algorithm> &facade,
|
|
const std::vector<PhantomNodeCandidates> &waypoint_candidates,
|
|
const boost::optional<bool> continue_straight_at_waypoint);
|
|
|
|
} // namespace routing_algorithms
|
|
} // namespace engine
|
|
} // namespace osrm
|
|
|
|
#endif /* OSRM_SHORTEST_PATH_HPP */
|