Use BaseDataFacades in guidance and prevent ODR violations with inline
This commit is contained in:
parent
3c8781855e
commit
b98431e8e6
@ -3,6 +3,7 @@
|
|||||||
|
|
||||||
#include "extractor/guidance/turn_instruction.hpp"
|
#include "extractor/guidance/turn_instruction.hpp"
|
||||||
#include "extractor/travel_mode.hpp"
|
#include "extractor/travel_mode.hpp"
|
||||||
|
#include "engine/datafacade/datafacade_base.hpp"
|
||||||
#include "engine/guidance/leg_geometry.hpp"
|
#include "engine/guidance/leg_geometry.hpp"
|
||||||
#include "engine/guidance/route_step.hpp"
|
#include "engine/guidance/route_step.hpp"
|
||||||
#include "engine/guidance/toolkit.hpp"
|
#include "engine/guidance/toolkit.hpp"
|
||||||
@ -31,11 +32,10 @@ namespace guidance
|
|||||||
// |---| segment 1
|
// |---| segment 1
|
||||||
// |---| segment 2
|
// |---| segment 2
|
||||||
// |---| segment 3
|
// |---| segment 3
|
||||||
template <typename DataFacadeT>
|
inline LegGeometry assembleGeometry(const datafacade::BaseDataFacade &facade,
|
||||||
LegGeometry assembleGeometry(const DataFacadeT &facade,
|
const std::vector<PathData> &leg_data,
|
||||||
const std::vector<PathData> &leg_data,
|
const PhantomNode &source_node,
|
||||||
const PhantomNode &source_node,
|
const PhantomNode &target_node)
|
||||||
const PhantomNode &target_node)
|
|
||||||
{
|
{
|
||||||
LegGeometry geometry;
|
LegGeometry geometry;
|
||||||
|
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
|
|
||||||
#include "extractor/guidance/turn_instruction.hpp"
|
#include "extractor/guidance/turn_instruction.hpp"
|
||||||
#include "extractor/travel_mode.hpp"
|
#include "extractor/travel_mode.hpp"
|
||||||
|
#include "engine/datafacade/datafacade_base.hpp"
|
||||||
#include "engine/guidance/leg_geometry.hpp"
|
#include "engine/guidance/leg_geometry.hpp"
|
||||||
#include "engine/guidance/route_step.hpp"
|
#include "engine/guidance/route_step.hpp"
|
||||||
#include "engine/guidance/step_maneuver.hpp"
|
#include "engine/guidance/step_maneuver.hpp"
|
||||||
@ -34,14 +35,13 @@ std::pair<short, short> getIntermediateBearings(const LegGeometry &leg_geometry,
|
|||||||
const std::size_t segment_index);
|
const std::size_t segment_index);
|
||||||
} // ns detail
|
} // ns detail
|
||||||
|
|
||||||
template <typename DataFacadeT>
|
inline std::vector<RouteStep> assembleSteps(const datafacade::BaseDataFacade &facade,
|
||||||
std::vector<RouteStep> assembleSteps(const DataFacadeT &facade,
|
const std::vector<PathData> &leg_data,
|
||||||
const std::vector<PathData> &leg_data,
|
const LegGeometry &leg_geometry,
|
||||||
const LegGeometry &leg_geometry,
|
const PhantomNode &source_node,
|
||||||
const PhantomNode &source_node,
|
const PhantomNode &target_node,
|
||||||
const PhantomNode &target_node,
|
const bool source_traversed_in_reverse,
|
||||||
const bool source_traversed_in_reverse,
|
const bool target_traversed_in_reverse)
|
||||||
const bool target_traversed_in_reverse)
|
|
||||||
{
|
{
|
||||||
const double constexpr ZERO_DURATION = 0., ZERO_DISTANCE = 0.;
|
const double constexpr ZERO_DURATION = 0., ZERO_DISTANCE = 0.;
|
||||||
const constexpr char *NO_ROTARY_NAME = "";
|
const constexpr char *NO_ROTARY_NAME = "";
|
||||||
|
Loading…
Reference in New Issue
Block a user