ad_map_access
Classes | Typedefs | Enumerations | Functions
ad::map::landmark Namespace Reference

namespace landmark More...

Classes

struct  ENULandmark
 DataType ENULandmark. More...
 
struct  Landmark
 DataType Landmark. More...
 
class  LandmarkId
 DataType LandmarkId. More...
 

Typedefs

typedef std::vector<::ad::map::landmark::ENULandmarkENULandmarkList
 DataType ENULandmarkList. More...
 
typedef std::vector<::ad::map::landmark::LandmarkIdLandmarkIdList
 DataType LandmarkIdList. More...
 
typedef std::set< LandmarkIdLandmarkIdSet
 Set to store landmark identifiers.
 

Enumerations

enum  LandmarkType : int32_t {
  LandmarkType::INVALID = 0, LandmarkType::UNKNOWN = 1, LandmarkType::TRAFFIC_SIGN = 2, LandmarkType::TRAFFIC_LIGHT = 3,
  LandmarkType::POLE = 4, LandmarkType::GUIDE_POST = 5, LandmarkType::TREE = 6, LandmarkType::STREET_LAMP = 7,
  LandmarkType::POSTBOX = 8, LandmarkType::MANHOLE = 9, LandmarkType::POWERCABINET = 10, LandmarkType::FIRE_HYDRANT = 11,
  LandmarkType::BOLLARD = 12, LandmarkType::OTHER = 13
}
 DataType LandmarkType. More...
 
enum  TrafficLightType : int32_t {
  TrafficLightType::INVALID = 0, TrafficLightType::UNKNOWN = 1, TrafficLightType::SOLID_RED_YELLOW = 2, TrafficLightType::SOLID_RED_YELLOW_GREEN = 3,
  TrafficLightType::LEFT_RED_YELLOW_GREEN = 4, TrafficLightType::RIGHT_RED_YELLOW_GREEN = 5, TrafficLightType::STRAIGHT_RED_YELLOW_GREEN = 6, TrafficLightType::LEFT_STRAIGHT_RED_YELLOW_GREEN = 7,
  TrafficLightType::RIGHT_STRAIGHT_RED_YELLOW_GREEN = 8, TrafficLightType::PEDESTRIAN_RED_GREEN = 9, TrafficLightType::BIKE_RED_GREEN = 10, TrafficLightType::BIKE_PEDESTRIAN_RED_GREEN = 11,
  TrafficLightType::PEDESTRIAN_RED_YELLOW_GREEN = 12, TrafficLightType::BIKE_RED_YELLOW_GREEN = 13, TrafficLightType::BIKE_PEDESTRIAN_RED_YELLOW_GREEN = 14
}
 DataType TrafficLightType. More...
 
enum  TrafficSignType : int32_t {
  TrafficSignType::INVALID = 0, TrafficSignType::SUPPLEMENT_ARROW_APPLIES_LEFT = 1, TrafficSignType::SUPPLEMENT_ARROW_APPLIES_RIGHT = 2, TrafficSignType::SUPPLEMENT_ARROW_APPLIES_LEFT_RIGHT = 3,
  TrafficSignType::SUPPLEMENT_ARROW_APPLIES_UP_DOWN = 4, TrafficSignType::SUPPLEMENT_ARROW_APPLIES_LEFT_RIGHT_BICYCLE = 5, TrafficSignType::SUPPLEMENT_ARROW_APPLIES_UP_DOWN_BICYCLE = 6, TrafficSignType::SUPPLEMENT_APPLIES_NEXT_N_KM_TIME = 7,
  TrafficSignType::SUPPLEMENT_ENDS = 8, TrafficSignType::SUPPLEMENT_RESIDENTS_ALLOWED = 9, TrafficSignType::SUPPLEMENT_BICYCLE_ALLOWED = 10, TrafficSignType::SUPPLEMENT_MOPED_ALLOWED = 11,
  TrafficSignType::SUPPLEMENT_TRAM_ALLOWED = 12, TrafficSignType::SUPPLEMENT_FORESTAL_ALLOWED = 13, TrafficSignType::SUPPLEMENT_CONSTRUCTION_VEHICLE_ALLOWED = 14, TrafficSignType::SUPPLEMENT_ENVIRONMENT_ZONE_YELLOW_GREEN = 15,
  TrafficSignType::SUPPLEMENT_RAILWAY_ONLY = 16, TrafficSignType::SUPPLEMENT_APPLIES_FOR_WEIGHT = 17, TrafficSignType::DANGER = 18, TrafficSignType::LANES_MERGING = 19,
  TrafficSignType::CAUTION_PEDESTRIAN = 20, TrafficSignType::CAUTION_CHILDREN = 21, TrafficSignType::CAUTION_BICYCLE = 22, TrafficSignType::CAUTION_ANIMALS = 23,
  TrafficSignType::CAUTION_RAIL_CROSSING_WITH_BARRIER = 24, TrafficSignType::CAUTION_RAIL_CROSSING = 25, TrafficSignType::YIELD_TRAIN = 26, TrafficSignType::YIELD = 27,
  TrafficSignType::STOP = 28, TrafficSignType::REQUIRED_RIGHT_TURN = 29, TrafficSignType::REQUIRED_LEFT_TURN = 30, TrafficSignType::REQUIRED_STRAIGHT = 31,
  TrafficSignType::REQUIRED_STRAIGHT_OR_RIGHT_TURN = 32, TrafficSignType::REQUIRED_STRAIGHT_OR_LEFT_TURN = 33, TrafficSignType::ROUNDABOUT = 34, TrafficSignType::PASS_RIGHT = 35,
  TrafficSignType::PASS_LEFT = 36, TrafficSignType::BYBICLE_PATH = 37, TrafficSignType::FOOTWALK = 38, TrafficSignType::FOOTWALK_BICYCLE_SHARED = 39,
  TrafficSignType::FOOTWALK_BICYCLE_SEP_RIGHT = 40, TrafficSignType::FOOTWALK_BICYCLE_SEP_LEFT = 41, TrafficSignType::PEDESTRIAN_AREA_BEGIN = 42, TrafficSignType::ACCESS_FORBIDDEN = 43,
  TrafficSignType::ACCESS_FORBIDDEN_TRUCKS = 44, TrafficSignType::ACCESS_FORBIDDEN_BICYCLE = 45, TrafficSignType::ACCESS_FORBIDDEN_MOTORVEHICLES = 46, TrafficSignType::ACCESS_FORBIDDEN_WEIGHT = 47,
  TrafficSignType::ACCESS_FORBIDDEN_WIDTH = 48, TrafficSignType::ACCESS_FORBIDDEN_HEIGHT = 49, TrafficSignType::ACCESS_FORBIDDEN_WRONG_DIR = 50, TrafficSignType::ENVIORNMENT_ZONE_BEGIN = 51,
  TrafficSignType::ENVIORNMENT_ZONE_END = 52, TrafficSignType::MAX_SPEED = 53, TrafficSignType::SPEED_ZONE_30_BEGIN = 54, TrafficSignType::SPEED_ZONE_30_END = 55,
  TrafficSignType::HAS_WAY_NEXT_INTERSECTION = 56, TrafficSignType::PRIORITY_WAY = 57, TrafficSignType::CITY_BEGIN = 58, TrafficSignType::CITY_END = 59,
  TrafficSignType::MOTORWAY_BEGIN = 60, TrafficSignType::MOTORWAY_END = 61, TrafficSignType::MOTORVEHICLE_BEGIN = 62, TrafficSignType::MOTORVEHICLE_END = 63,
  TrafficSignType::INFO_MOTORWAY_INFO = 64, TrafficSignType::CUL_DE_SAC = 65, TrafficSignType::CUL_DE_SAC_EXCEPT_PED_BICYCLE = 66, TrafficSignType::INFO_NUMBER_OF_AUTOBAHN = 67,
  TrafficSignType::DIRECTION_TURN_TO_AUTOBAHN = 68, TrafficSignType::DIRECTION_TURN_TO_LOCAL = 69, TrafficSignType::DESTINATION_BOARD = 70, TrafficSignType::FREE_TEXT = 71,
  TrafficSignType::UNKNOWN = 72
}
 DataType TrafficSignType. More...
 

Functions

std::ostream & operator<< (std::ostream &os, ENULandmark const &_value)
 standard ostream operator More...
 
std::ostream & operator<< (std::ostream &os, Landmark const &_value)
 standard ostream operator More...
 
std::ostream & operator<< (std::ostream &os, LandmarkId const &_value)
 standard ostream operator More...
 
std::ostream & operator<< (std::ostream &os, LandmarkType const &value)
 standard ostream operator More...
 
std::ostream & operator<< (std::ostream &os, TrafficLightType const &value)
 standard ostream operator More...
 
std::ostream & operator<< (std::ostream &os, TrafficSignType const &value)
 standard ostream operator More...
 
bool isValid (Landmark const &landmark, bool const logErrors=true)
 checks if the given Landmark is valid More...
 
bool isValid (LandmarkId const &landmarkId, bool const logErrors=true)
 checks if the given LandmarkId is valid More...
 
Landmark::ConstPtr getLandmarkPtr (LandmarkId const &id)
 Method to be called to retrieve Landmark::Ptr from the Store. More...
 
const LandmarkgetLandmark (LandmarkId const &id)
 Method to be called to retrieve Landmark from the Store. More...
 
point::ENUHeading getENUHeading (Landmark const &landmark)
 
landmark::LandmarkIdList getLandmarks ()
 
ENULandmark getENULandmark (LandmarkId const &id)
 Method to be called to retrieve Landmark from the Store and convert to ENU representation. More...
 
LandmarkIdList getVisibleLandmarks (lane::LaneId const &laneId)
 Method to be called to retrieve all the visible landmarks from the given lane. More...
 
LandmarkIdList getVisibleLandmarks (LandmarkType const &landmarkType, lane::LaneId const &laneId)
 Method to be called to retrieve all the visible landmarks of type landmarkType from the given lane. More...
 
LandmarkId uniqueLandmarkId (point::GeoPoint const &geoPoint)
 Method to be called to search the nearest landmarkid given the geo point. More...
 
LandmarkIdList getVisibleTrafficLights (lane::LaneId const &laneId)
 Method to be called to retrieve all the visible traffic lights from the given lane. More...
 

Detailed Description

namespace landmark

Handling of landmarks

Typedef Documentation

◆ ENULandmarkList

DataType ENULandmarkList.

List of ENULandmarks.

◆ LandmarkIdList

DataType LandmarkIdList.

List of landmark identifiers

Enumeration Type Documentation

◆ LandmarkType

enum ad::map::landmark::LandmarkType : int32_t
strong

DataType LandmarkType.

Type of landmark

Enumerator
INVALID 

Invalid value.

UNKNOWN 

Unknown value.

TRAFFIC_SIGN 

Traffic sign (e.g. yield, stop).

TRAFFIC_LIGHT 

Traffic light.

POLE 

Pole (e.g. street lamp).

GUIDE_POST 

guide post

TREE 

a tree

STREET_LAMP 

street lamp

POSTBOX 

post box

MANHOLE 

a manhole on the street

POWERCABINET 

electrical power box

FIRE_HYDRANT 

fire hydrant

BOLLARD 

bollard (different/bigger to GUIDE_POST and POLE)

OTHER 

None of the above.

◆ TrafficLightType

enum ad::map::landmark::TrafficLightType : int32_t
strong

DataType TrafficLightType.

Type of traffic light

Enumerator
INVALID 

Invalid value.

UNKNOWN 

Unknown value.

SOLID_RED_YELLOW 

2 solid lights: R+Y

SOLID_RED_YELLOW_GREEN 

3 solid lights: R+Y+G

LEFT_RED_YELLOW_GREEN 

3 lights with a turn-left arrow: R+Y+G

RIGHT_RED_YELLOW_GREEN 

3 lights with a turn-right arrow: R+Y+G

STRAIGHT_RED_YELLOW_GREEN 

3 lights with a straight arrow: R+Y+G

LEFT_STRAIGHT_RED_YELLOW_GREEN 

3 lights with a straight or turn-left arrow: R+Y+G

RIGHT_STRAIGHT_RED_YELLOW_GREEN 

3 lights with a straight or turn-right arrow: R+Y+G

PEDESTRIAN_RED_GREEN 

For pedestrians with 2 lights: R+G

BIKE_RED_GREEN 

For bikes with 2 lights: R+G

BIKE_PEDESTRIAN_RED_GREEN 

For bikes and pedestrians with 2 lights: R+G

PEDESTRIAN_RED_YELLOW_GREEN 

For pedestrians with 3 lights: R+Y+G

BIKE_RED_YELLOW_GREEN 

For bikes with 3 lights: R+Y+G

BIKE_PEDESTRIAN_RED_YELLOW_GREEN 

For bikes and pedestrians with 3 lights: R+Y+G

◆ TrafficSignType

enum ad::map::landmark::TrafficSignType : int32_t
strong

DataType TrafficSignType.

Type of traffic sign

Enumerator
INVALID 

INVALID

SUPPLEMENT_ARROW_APPLIES_LEFT 

SUPPLEMENT_ARROW_APPLIES_LEFT

SUPPLEMENT_ARROW_APPLIES_RIGHT 

SUPPLEMENT_ARROW_APPLIES_RIGHT

SUPPLEMENT_ARROW_APPLIES_LEFT_RIGHT 

SUPPLEMENT_ARROW_APPLIES_LEFT_RIGHT

SUPPLEMENT_ARROW_APPLIES_UP_DOWN 

SUPPLEMENT_ARROW_APPLIES_UP_DOWN

SUPPLEMENT_ARROW_APPLIES_LEFT_RIGHT_BICYCLE 

SUPPLEMENT_ARROW_APPLIES_LEFT_RIGHT_BICYCLE

SUPPLEMENT_ARROW_APPLIES_UP_DOWN_BICYCLE 

SUPPLEMENT_ARROW_APPLIES_UP_DOWN_BICYCLE

SUPPLEMENT_APPLIES_NEXT_N_KM_TIME 

SUPPLEMENT_APPLIES_NEXT_N_KM_TIME

SUPPLEMENT_ENDS 

SUPPLEMENT_ENDS

SUPPLEMENT_RESIDENTS_ALLOWED 

SUPPLEMENT_RESIDENTS_ALLOWED

SUPPLEMENT_BICYCLE_ALLOWED 

SUPPLEMENT_BICYCLE_ALLOWED

SUPPLEMENT_MOPED_ALLOWED 

SUPPLEMENT_MOPED_ALLOWED

SUPPLEMENT_TRAM_ALLOWED 

SUPPLEMENT_TRAM_ALLOWED

SUPPLEMENT_FORESTAL_ALLOWED 

SUPPLEMENT_FORESTAL_ALLOWED

SUPPLEMENT_CONSTRUCTION_VEHICLE_ALLOWED 

SUPPLEMENT_CONSTRUCTION_VEHICLE_ALLOWED

SUPPLEMENT_ENVIRONMENT_ZONE_YELLOW_GREEN 

SUPPLEMENT_ENVIRONMENT_ZONE_YELLOW_GREEN

SUPPLEMENT_RAILWAY_ONLY 

SUPPLEMENT_RAILWAY_ONLY

SUPPLEMENT_APPLIES_FOR_WEIGHT 

SUPPLEMENT_APPLIES_FOR_WEIGHT

DANGER 

DANGER

LANES_MERGING 

LANES_MERGING

CAUTION_PEDESTRIAN 

CAUTION_PEDESTRIAN

CAUTION_CHILDREN 

CAUTION_CHILDREN

CAUTION_BICYCLE 

CAUTION_BICYCLE

CAUTION_ANIMALS 

CAUTION_ANIMALS

CAUTION_RAIL_CROSSING_WITH_BARRIER 

CAUTION_RAIL_CROSSING_WITH_BARRIER

CAUTION_RAIL_CROSSING 

CAUTION_RAIL_CROSSING

YIELD_TRAIN 

YIELD_TRAIN

YIELD 

YIELD

STOP 

STOP

REQUIRED_RIGHT_TURN 

REQUIRED_RIGHT_TURN

REQUIRED_LEFT_TURN 

REQUIRED_LEFT_TURN

REQUIRED_STRAIGHT 

REQUIRED_STRAIGHT

REQUIRED_STRAIGHT_OR_RIGHT_TURN 

REQUIRED_STRAIGHT_OR_RIGHT_TURN

REQUIRED_STRAIGHT_OR_LEFT_TURN 

REQUIRED_STRAIGHT_OR_LEFT_TURN

ROUNDABOUT 

ROUNDABOUT

PASS_RIGHT 

PASS_RIGHT

PASS_LEFT 

PASS_LEFT

BYBICLE_PATH 

BYBICLE_PATH

FOOTWALK 

FOOTWALK

FOOTWALK_BICYCLE_SHARED 

FOOTWALK_BICYCLE_SHARED

FOOTWALK_BICYCLE_SEP_RIGHT 

FOOTWALK_BICYCLE_SEP_RIGHT

FOOTWALK_BICYCLE_SEP_LEFT 

FOOTWALK_BICYCLE_SEP_LEFT

PEDESTRIAN_AREA_BEGIN 

PEDESTRIAN_AREA_BEGIN

ACCESS_FORBIDDEN 

ACCESS_FORBIDDEN

ACCESS_FORBIDDEN_TRUCKS 

ACCESS_FORBIDDEN_TRUCKS

ACCESS_FORBIDDEN_BICYCLE 

ACCESS_FORBIDDEN_BICYCLE

ACCESS_FORBIDDEN_MOTORVEHICLES 

ACCESS_FORBIDDEN_MOTORVEHICLES

ACCESS_FORBIDDEN_WEIGHT 

ACCESS_FORBIDDEN_WEIGHT

ACCESS_FORBIDDEN_WIDTH 

ACCESS_FORBIDDEN_WIDTH

ACCESS_FORBIDDEN_HEIGHT 

ACCESS_FORBIDDEN_HEIGHT

ACCESS_FORBIDDEN_WRONG_DIR 

ACCESS_FORBIDDEN_WRONG_DIR

ENVIORNMENT_ZONE_BEGIN 

ENVIORNMENT_ZONE_BEGIN

ENVIORNMENT_ZONE_END 

ENVIORNMENT_ZONE_END

MAX_SPEED 

MAX_SPEED

SPEED_ZONE_30_BEGIN 

SPEED_ZONE_30_BEGIN

SPEED_ZONE_30_END 

SPEED_ZONE_30_END

HAS_WAY_NEXT_INTERSECTION 

HAS_WAY_NEXT_INTERSECTION

PRIORITY_WAY 

PRIORITY_WAY

CITY_BEGIN 

CITY_BEGIN

CITY_END 

CITY_END

MOTORWAY_BEGIN 

MOTORWAY_BEGIN

MOTORWAY_END 

MOTORWAY_END

MOTORVEHICLE_BEGIN 

MOTORVEHICLE_BEGIN

MOTORVEHICLE_END 

MOTORVEHICLE_END

INFO_MOTORWAY_INFO 

INFO_MOTORWAY_INFO

CUL_DE_SAC 

CUL_DE_SAC

CUL_DE_SAC_EXCEPT_PED_BICYCLE 

CUL_DE_SAC_EXCEPT_PED_BICYCLE

INFO_NUMBER_OF_AUTOBAHN 

INFO_NUMBER_OF_AUTOBAHN

DIRECTION_TURN_TO_AUTOBAHN 

DIRECTION_TURN_TO_AUTOBAHN

DIRECTION_TURN_TO_LOCAL 

DIRECTION_TURN_TO_LOCAL

DESTINATION_BOARD 

DESTINATION_BOARD

FREE_TEXT 

FREE_TEXT

UNKNOWN 

UNKNOWN

Function Documentation

◆ getENUHeading()

point::ENUHeading ad::map::landmark::getENUHeading ( Landmark const &  landmark)
Returns
the enu heading of the landmark

◆ getENULandmark()

ENULandmark ad::map::landmark::getENULandmark ( LandmarkId const &  id)

Method to be called to retrieve Landmark from the Store and convert to ENU representation.

Parameters
[in]idLandmark identifier.
Returns
Landmark with given identifier.
Exceptions
std::invalid_argumentif the landmark id does not exist in the store

◆ getLandmark()

const Landmark& ad::map::landmark::getLandmark ( LandmarkId const &  id)

Method to be called to retrieve Landmark from the Store.

Parameters
[in]idLandmark identifier.
Returns
Landmark with given identifier. Throws std::invalid_argument if landmark does not exist in the store.

◆ getLandmarkPtr()

Landmark::ConstPtr ad::map::landmark::getLandmarkPtr ( LandmarkId const &  id)

Method to be called to retrieve Landmark::Ptr from the Store.

Parameters
[in]idLandmark identifier.
Returns
Landmark::Ptr with given identifier. Throws std::invalid_argument if landmark does not exist in the store.

◆ getLandmarks()

landmark::LandmarkIdList ad::map::landmark::getLandmarks ( )
Returns
all Landmarks in the Store.

◆ getVisibleLandmarks() [1/2]

LandmarkIdList ad::map::landmark::getVisibleLandmarks ( LandmarkType const &  landmarkType,
lane::LaneId const &  laneId 
)

Method to be called to retrieve all the visible landmarks of type landmarkType from the given lane.

Parameters
[in]landmarkTypeLandmark type desired.
[in]laneIdthe lane the landmarks refer to
Returns
Landmarks of landmarkType visible from given lane.

◆ getVisibleLandmarks() [2/2]

LandmarkIdList ad::map::landmark::getVisibleLandmarks ( lane::LaneId const &  laneId)

Method to be called to retrieve all the visible landmarks from the given lane.

Parameters
[in]laneIdthe lane the landmarks refer to
Returns
Landmarks visible from given lane.

◆ getVisibleTrafficLights()

LandmarkIdList ad::map::landmark::getVisibleTrafficLights ( lane::LaneId const &  laneId)
inline

Method to be called to retrieve all the visible traffic lights from the given lane.

Parameters
[in]laneIdthe lane the landmarks refer to
Returns
Traffic light landmarks visible from given lane.

◆ isValid() [1/2]

bool ad::map::landmark::isValid ( Landmark const &  landmark,
bool const  logErrors = true 
)
inline

checks if the given Landmark is valid

The landmark is valid if it's within valid input range.

◆ isValid() [2/2]

bool ad::map::landmark::isValid ( LandmarkId const &  landmarkId,
bool const  logErrors = true 
)
inline

checks if the given LandmarkId is valid

The landmarkId is valid if it's within valid input range.

◆ operator<<() [1/6]

std::ostream& ad::map::landmark::operator<< ( std::ostream &  os,
ENULandmark const &  _value 
)
inline

standard ostream operator

Parameters
[in]osThe output stream to write to
[in]_valueENULandmark value
Returns
The stream object.

◆ operator<<() [2/6]

std::ostream& ad::map::landmark::operator<< ( std::ostream &  os,
Landmark const &  _value 
)
inline

standard ostream operator

Parameters
[in]osThe output stream to write to
[in]_valueLandmark value
Returns
The stream object.

◆ operator<<() [3/6]

std::ostream& ad::map::landmark::operator<< ( std::ostream &  os,
LandmarkId const &  _value 
)
inline

standard ostream operator

Parameters
[in]osThe output stream to write to
[in]_valueLandmarkId value
Returns
The stream object.

◆ operator<<() [4/6]

std::ostream& ad::map::landmark::operator<< ( std::ostream &  os,
LandmarkType const &  value 
)
inline

standard ostream operator

Parameters
[in]osThe output stream to write to
[in]valueLandmarkType value
Returns
The stream object.

◆ operator<<() [5/6]

std::ostream& ad::map::landmark::operator<< ( std::ostream &  os,
TrafficLightType const &  value 
)
inline

standard ostream operator

Parameters
[in]osThe output stream to write to
[in]valueTrafficLightType value
Returns
The stream object.

◆ operator<<() [6/6]

std::ostream& ad::map::landmark::operator<< ( std::ostream &  os,
TrafficSignType const &  value 
)
inline

standard ostream operator

Parameters
[in]osThe output stream to write to
[in]valueTrafficSignType value
Returns
The stream object.

◆ uniqueLandmarkId()

LandmarkId ad::map::landmark::uniqueLandmarkId ( point::GeoPoint const &  geoPoint)

Method to be called to search the nearest landmarkid given the geo point.

Parameters
[in]Thegeo point given
Returns
returns search result of Landmarkid from given geo point.