/srv/osrm/osrm-backend/include/engine
Edit: /srv/osrm/osrm-backend/include/engine/algorithm.hpp (2974B)
#ifndef OSRM_ENGINE_ALGORITHM_HPP
#define OSRM_ENGINE_ALGORITHM_HPP
#include
namespace osrm::engine::routing_algorithms
{
// Contraction Hiearchy
namespace ch
{
struct Algorithm final
{
};
} // namespace ch
// Multi-Level Dijkstra
namespace mld
{
struct Algorithm final
{
};
} // namespace mld
// Algorithm names
template const char *name();
template <> inline const char *name() { return "CH"; }
template <> inline const char *name() { return "MLD"; }
// Algorithm identifier
template const char *identifier();
template <> inline const char *identifier() { return "ch"; }
template <> inline const char *identifier() { return "mld"; }
template struct HasAlternativePathSearch final : std::false_type
{
};
template struct HasShortestPathSearch final : std::false_type
{
};
template struct HasDirectShortestPathSearch final : std::false_type
{
};
template struct HasMapMatching final : std::false_type
{
};
template struct HasManyToManySearch final : std::false_type
{
};
template struct SupportsDistanceAnnotationType final : std::false_type
{
};
template struct HasGetTileTurns final : std::false_type
{
};
template struct HasExcludeFlags final : std::false_type
{
};
// Algorithms supported by Contraction Hierarchies
template <> struct HasAlternativePathSearch final : std::true_type
{
};
template <> struct HasShortestPathSearch final : std::true_type
{
};
template <> struct HasDirectShortestPathSearch final : std::true_type
{
};
template <> struct HasMapMatching final : std::true_type
{
};
template <> struct HasManyToManySearch final : std::true_type
{
};
template <> struct SupportsDistanceAnnotationType final : std::true_type
{
};
template <> struct HasGetTileTurns final : std::true_type
{
};
template <> struct HasExcludeFlags final : std::true_type
{
};
// Algorithms supported by Multi-Level Dijkstra
template <> struct HasAlternativePathSearch final : std::true_type
{
};
template <> struct HasDirectShortestPathSearch final : std::true_type
{
};
template <> struct HasShortestPathSearch final : std::true_type
{
};
template <> struct HasMapMatching final : std::true_type
{
};
template <> struct HasManyToManySearch final : std::true_type
{
};
template <> struct SupportsDistanceAnnotationType final : std::false_type
{
};
template <> struct HasGetTileTurns final : std::true_type
{
};
template <> struct HasExcludeFlags final : std::true_type
{
};
} // namespace osrm::engine::routing_algorithms
#endif