osrm-backend/include/engine/guidance/step_maneuver.hpp

46 lines
849 B
C++
Raw Normal View History

2016-01-28 10:28:44 -05:00
#ifndef ENGINE_GUIDANCE_STEP_MANEUVER_HPP
#define ENGINE_GUIDANCE_STEP_MANEUVER_HPP
#include "util/coordinate.hpp"
2016-03-01 16:30:31 -05:00
#include "extractor/guidance/turn_instruction.hpp"
2016-01-28 10:28:44 -05:00
#include <cstdint>
#include <vector>
2016-01-28 10:28:44 -05:00
namespace osrm
{
namespace engine
{
namespace guidance
{
enum class WaypointType : std::uint8_t
{
None,
Arrive,
Depart,
};
//A represenetation of intermediate intersections
struct IntermediateIntersection
{
double duration;
double distance;
util::Coordinate location;
};
2016-01-28 10:28:44 -05:00
struct StepManeuver
{
util::Coordinate location;
2016-02-22 16:09:50 -05:00
double bearing_before;
double bearing_after;
2016-03-01 16:30:31 -05:00
extractor::guidance::TurnInstruction instruction;
WaypointType waypoint_type;
2016-02-24 04:29:23 -05:00
unsigned exit;
std::vector<IntermediateIntersection> intersections;
2016-01-28 10:28:44 -05:00
};
2016-02-24 04:29:23 -05:00
} // namespace guidance
} // namespace engine
} // namespace osrmn
2016-01-28 10:28:44 -05:00
#endif