CARLA
Public Types | Public Member Functions | Private Attributes | List of all members
carla::road::element::RoadInfoMarkRecord Class Referencefinal

Each lane within a road cross section can be provided with several road markentries. More...

#include <RoadInfoMarkRecord.h>

+ Inheritance diagram for carla::road::element::RoadInfoMarkRecord:
+ Collaboration diagram for carla::road::element::RoadInfoMarkRecord:

Public Types

enum  LaneChange : uint8_t { LaneChange::None = 0x00, LaneChange::Increase = 0x01, LaneChange::Decrease = 0x02, LaneChange::Both = 0x03 }
 Can be used as flags. More...
 

Public Member Functions

void AcceptVisitor (RoadInfoVisitor &v) final
 
const std::string & GetColor () const
 Color of the road mark. More...
 
double GetHeight () const
 Physical distance of top edge of road mark from reference plane of the lane. More...
 
LaneChange GetLaneChange () const
 Allow a lane change in the indicated direction taking into account that lanes are numbered in ascending order from right to left. More...
 
std::vector< std::unique_ptr< RoadInfoMarkTypeLine > > & GetLines ()
 
const std::string & GetMaterial () const
 Material of the road mark (identifiers to be defined, use "standard" for the moment. More...
 
int GetRoadMarkId () const
 Unique identifer for the road mark. More...
 
const std::string & GetType () const
 Type of the road mark. More...
 
const std::string & GetTypeName () const
 Name of the road mark type if it has one. More...
 
double GetTypeWidth () const
 Width of the road mark type if it has one. More...
 
const std::string & GetWeight () const
 Weight of the road mark. More...
 
double GetWidth () const
 Width of the road mark –optional. More...
 
 RoadInfoMarkRecord (double s, int road_mark_id)
 
 RoadInfoMarkRecord (double s, int road_mark_id, std::string type, std::string weight, std::string color, std::string material, double width, LaneChange lane_change, double height, std::string type_name, double type_width)
 
- Public Member Functions inherited from carla::road::element::RoadInfo
double GetDistance () const
 Distance from road's start location. More...
 
virtual ~RoadInfo ()=default
 

Private Attributes

const std::string _color
 
const double _height
 
const LaneChange _lane_change
 
std::vector< std::unique_ptr< RoadInfoMarkTypeLine > > _lines
 
const std::string _material
 
const int _road_mark_id
 
const std::string _type
 
const std::string _type_name
 
const double _type_width
 
const std::string _weight
 
const double _width
 

Additional Inherited Members

- Protected Member Functions inherited from carla::road::element::RoadInfo
 RoadInfo (double distance=0.0)
 

Detailed Description

Each lane within a road cross section can be provided with several road markentries.

The road mark information defines the style of the line at the lane’s outer border. For left lanes, this is the left border, for right lanes the right one. The style of the line separating left and right lanes is determined by the road mark entry for lane zero (i.e. the center lane)

Definition at line 25 of file RoadInfoMarkRecord.h.

Member Enumeration Documentation

◆ LaneChange

Can be used as flags.

Enumerator
None 
Increase 
Decrease 
Both 

Definition at line 29 of file RoadInfoMarkRecord.h.

Constructor & Destructor Documentation

◆ RoadInfoMarkRecord() [1/2]

carla::road::element::RoadInfoMarkRecord::RoadInfoMarkRecord ( double  s,
int  road_mark_id 
)
inline

Definition at line 36 of file RoadInfoMarkRecord.h.

◆ RoadInfoMarkRecord() [2/2]

carla::road::element::RoadInfoMarkRecord::RoadInfoMarkRecord ( double  s,
int  road_mark_id,
std::string  type,
std::string  weight,
std::string  color,
std::string  material,
double  width,
LaneChange  lane_change,
double  height,
std::string  type_name,
double  type_width 
)
inline

Definition at line 51 of file RoadInfoMarkRecord.h.

Member Function Documentation

◆ AcceptVisitor()

void carla::road::element::RoadInfoMarkRecord::AcceptVisitor ( RoadInfoVisitor v)
inlinefinalvirtual

Implements carla::road::element::RoadInfo.

Definition at line 75 of file RoadInfoMarkRecord.h.

◆ GetColor()

const std::string& carla::road::element::RoadInfoMarkRecord::GetColor ( ) const
inline

Color of the road mark.

Definition at line 95 of file RoadInfoMarkRecord.h.

References _color.

◆ GetHeight()

double carla::road::element::RoadInfoMarkRecord::GetHeight ( ) const
inline

Physical distance of top edge of road mark from reference plane of the lane.

Definition at line 119 of file RoadInfoMarkRecord.h.

References _height.

◆ GetLaneChange()

LaneChange carla::road::element::RoadInfoMarkRecord::GetLaneChange ( ) const
inline

Allow a lane change in the indicated direction taking into account that lanes are numbered in ascending order from right to left.

If the attribute is missing, “both” is assumed to be valid.

Definition at line 113 of file RoadInfoMarkRecord.h.

References _lane_change.

◆ GetLines()

std::vector<std::unique_ptr<RoadInfoMarkTypeLine> >& carla::road::element::RoadInfoMarkRecord::GetLines ( )
inline

Definition at line 133 of file RoadInfoMarkRecord.h.

References _lines.

◆ GetMaterial()

const std::string& carla::road::element::RoadInfoMarkRecord::GetMaterial ( ) const
inline

Material of the road mark (identifiers to be defined, use "standard" for the moment.

Definition at line 101 of file RoadInfoMarkRecord.h.

References _material.

◆ GetRoadMarkId()

int carla::road::element::RoadInfoMarkRecord::GetRoadMarkId ( ) const
inline

Unique identifer for the road mark.

Definition at line 80 of file RoadInfoMarkRecord.h.

References _road_mark_id.

◆ GetType()

const std::string& carla::road::element::RoadInfoMarkRecord::GetType ( ) const
inline

Type of the road mark.

Definition at line 85 of file RoadInfoMarkRecord.h.

References _type.

◆ GetTypeName()

const std::string& carla::road::element::RoadInfoMarkRecord::GetTypeName ( ) const
inline

Name of the road mark type if it has one.

Definition at line 124 of file RoadInfoMarkRecord.h.

References _type_name.

◆ GetTypeWidth()

double carla::road::element::RoadInfoMarkRecord::GetTypeWidth ( ) const
inline

Width of the road mark type if it has one.

Definition at line 129 of file RoadInfoMarkRecord.h.

References _type_width.

◆ GetWeight()

const std::string& carla::road::element::RoadInfoMarkRecord::GetWeight ( ) const
inline

Weight of the road mark.

Definition at line 90 of file RoadInfoMarkRecord.h.

References _weight.

◆ GetWidth()

double carla::road::element::RoadInfoMarkRecord::GetWidth ( ) const
inline

Width of the road mark –optional.

Definition at line 106 of file RoadInfoMarkRecord.h.

References _width.

Member Data Documentation

◆ _color

const std::string carla::road::element::RoadInfoMarkRecord::_color
private

Definition at line 145 of file RoadInfoMarkRecord.h.

Referenced by GetColor().

◆ _height

const double carla::road::element::RoadInfoMarkRecord::_height
private

Definition at line 153 of file RoadInfoMarkRecord.h.

Referenced by GetHeight().

◆ _lane_change

const LaneChange carla::road::element::RoadInfoMarkRecord::_lane_change
private

Definition at line 151 of file RoadInfoMarkRecord.h.

Referenced by GetLaneChange().

◆ _lines

std::vector<std::unique_ptr<RoadInfoMarkTypeLine> > carla::road::element::RoadInfoMarkRecord::_lines
private

Definition at line 159 of file RoadInfoMarkRecord.h.

Referenced by GetLines().

◆ _material

const std::string carla::road::element::RoadInfoMarkRecord::_material
private

Definition at line 147 of file RoadInfoMarkRecord.h.

Referenced by GetMaterial().

◆ _road_mark_id

const int carla::road::element::RoadInfoMarkRecord::_road_mark_id
private

Definition at line 139 of file RoadInfoMarkRecord.h.

Referenced by GetRoadMarkId().

◆ _type

const std::string carla::road::element::RoadInfoMarkRecord::_type
private

Definition at line 141 of file RoadInfoMarkRecord.h.

Referenced by GetType().

◆ _type_name

const std::string carla::road::element::RoadInfoMarkRecord::_type_name
private

Definition at line 155 of file RoadInfoMarkRecord.h.

Referenced by GetTypeName().

◆ _type_width

const double carla::road::element::RoadInfoMarkRecord::_type_width
private

Definition at line 157 of file RoadInfoMarkRecord.h.

Referenced by GetTypeWidth().

◆ _weight

const std::string carla::road::element::RoadInfoMarkRecord::_weight
private

Definition at line 143 of file RoadInfoMarkRecord.h.

Referenced by GetWeight().

◆ _width

const double carla::road::element::RoadInfoMarkRecord::_width
private

Definition at line 149 of file RoadInfoMarkRecord.h.

Referenced by GetWidth().


The documentation for this class was generated from the following file: