18#include <boost/optional.hpp>
39 return std::hash<road::element::Waypoint>()(
_waypoint);
72 std::vector<SharedPtr<Waypoint>>
GetNext(
double distance)
const;
74 std::vector<SharedPtr<Waypoint>>
GetPrevious(
double distance)
const;
96 double distance,
bool stop_at_junction =
false)
const;
101 double distance, std::string filter_type,
bool stop_at_junction =
false)
const;
Inherit (privately) to suppress copy/move construction and assignment.
SharedPtr< Waypoint > GetLeft() const
std::vector< SharedPtr< Landmark > > GetLandmarksOfTypeInDistance(double distance, std::string filter_type, bool stop_at_junction=false) const
Returns a list of landmarks from the current position to a certain distance Filters by specified type
auto GetSectionId() const
road::element::Waypoint _waypoint
SharedPtr< Waypoint > GetRight() const
SharedPtr< const Map > _parent
boost::optional< road::element::LaneMarking > GetLeftLaneMarking() const
boost::optional< road::element::LaneMarking > GetRightLaneMarking() const
road::JuncId GetJunctionId() const
geom::Transform _transform
double GetLaneWidth() const
std::vector< SharedPtr< Waypoint > > GetPrevious(double distance) const
const geom::Transform & GetTransform() const
Waypoint(SharedPtr< const Map > parent, road::element::Waypoint waypoint)
road::element::LaneMarking::LaneChange GetLaneChange() const
std::vector< SharedPtr< Waypoint > > GetNext(double distance) const
SharedPtr< Junction > GetJunction() const
std::vector< SharedPtr< Waypoint > > GetNextUntilLaneEnd(double distance) const
Returns a list of waypoints separated by distance from the current waypoint to the end of the lane
std::vector< SharedPtr< Landmark > > GetAllLandmarksInDistance(double distance, bool stop_at_junction=false) const
Returns a list of landmarks from the current position to a certain distance
uint64_t GetId() const
Returns an unique Id identifying this waypoint.
std::vector< SharedPtr< Waypoint > > GetPreviousUntilLaneStart(double distance) const
Returns a list of waypoints separated by distance from the current waypoint to the start of the lane
std::pair< const road::element::RoadInfoMarkRecord *, const road::element::RoadInfoMarkRecord * > _mark_record
road::Lane::LaneType GetType() const
LaneType
Can be used as flags
Each lane within a road cross section can be provided with several road markentries.
carla::SharedPtr< carla::client::Junction > Junction
This file contains definitions of common data structures used in traffic manager.
boost::shared_ptr< T > SharedPtr
Use this SharedPtr (boost::shared_ptr) to keep compatibility with boost::python, but it would be nice...
LaneChange
Can be used as flags.