CARLA
Public Member Functions | Private Attributes | List of all members
carla::road::LaneSection Class Reference

#include <LaneSection.h>

+ Inheritance diagram for carla::road::LaneSection:
+ Collaboration diagram for carla::road::LaneSection:

Public Member Functions

bool ContainsLane (LaneId id) const
 
double GetDistance () const
 
SectionId GetId () const
 
LaneGetLane (const LaneId id)
 
const LaneGetLane (const LaneId id) const
 
std::map< LaneId, Lane > & GetLanes ()
 
const std::map< LaneId, Lane > & GetLanes () const
 
std::vector< Lane * > GetLanesOfType (Lane::LaneType type)
 
double GetLength () const
 
RoadGetRoad () const
 
 LaneSection (SectionId id, double s)
 

Private Attributes

const SectionId _id = 0u
 
geom::CubicPolynomial _lane_offset
 
std::map< LaneId, Lane_lanes
 
Road_road = nullptr
 
const double _s = 0.0
 
friend MapBuilder
 

Additional Inherited Members

- Private Member Functions inherited from carla::MovableNonCopyable
 MovableNonCopyable ()=default
 
 MovableNonCopyable (const MovableNonCopyable &)=delete
 
 MovableNonCopyable (MovableNonCopyable &&)=default
 
MovableNonCopyableoperator= (const MovableNonCopyable &)=delete
 
MovableNonCopyableoperator= (MovableNonCopyable &&)=default
 

Detailed Description

Definition at line 24 of file LaneSection.h.

Constructor & Destructor Documentation

◆ LaneSection()

carla::road::LaneSection::LaneSection ( SectionId  id,
double  s 
)
inlineexplicit

Definition at line 27 of file LaneSection.h.

References GetDistance(), GetLane(), GetLength(), and GetRoad().

+ Here is the call graph for this function:

Member Function Documentation

◆ ContainsLane()

bool carla::road::LaneSection::ContainsLane ( LaneId  id) const
inline

Definition at line 39 of file LaneSection.h.

References _lanes, GetId(), GetLanes(), and GetLanesOfType().

Referenced by carla::road::IsLanePresent().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetDistance()

double carla::road::LaneSection::GetDistance ( ) const

Definition at line 13 of file LaneSection.cpp.

References _s.

Referenced by carla::geom::MeshFactory::GenerateWallsWithMaxLen(), carla::geom::MeshFactory::GenerateWithMaxLen(), carla::road::Lane::GetDistance(), carla::road::MapBuilder::GetLaneNext(), and LaneSection().

+ Here is the caller graph for this function:

◆ GetId()

SectionId carla::road::LaneSection::GetId ( ) const

Definition at line 27 of file LaneSection.cpp.

References _id.

Referenced by ContainsLane(), carla::road::LaneSectionMap::Emplace(), carla::road::ForEachDrivableLaneImpl(), and carla::road::ForEachLaneImpl().

+ Here is the caller graph for this function:

◆ GetLane() [1/2]

Lane * carla::road::LaneSection::GetLane ( const LaneId  id)

Definition at line 31 of file LaneSection.cpp.

References _lanes.

Referenced by get_total_road_marks(), carla::road::MapBuilder::GetEdgeLanePointer(), carla::road::MapBuilder::GetLaneNext(), and LaneSection().

+ Here is the caller graph for this function:

◆ GetLane() [2/2]

const Lane * carla::road::LaneSection::GetLane ( const LaneId  id) const

Definition at line 39 of file LaneSection.cpp.

References _lanes.

◆ GetLanes() [1/2]

std::map< LaneId, Lane > & carla::road::LaneSection::GetLanes ( )

Definition at line 47 of file LaneSection.cpp.

References _lanes.

Referenced by ContainsLane(), carla::road::ForEachDrivableLaneImpl(), carla::road::ForEachLaneImpl(), carla::geom::MeshFactory::Generate(), carla::geom::MeshFactory::GenerateWalls(), carla::geom::MeshFactory::GenerateWallsWithMaxLen(), carla::geom::MeshFactory::GenerateWithMaxLen(), and carla::road::Road::GetLaneById().

+ Here is the caller graph for this function:

◆ GetLanes() [2/2]

const std::map< LaneId, Lane > & carla::road::LaneSection::GetLanes ( ) const

Definition at line 51 of file LaneSection.cpp.

References _lanes.

◆ GetLanesOfType()

std::vector< Lane * > carla::road::LaneSection::GetLanesOfType ( Lane::LaneType  type)

Definition at line 55 of file LaneSection.cpp.

References _lanes.

Referenced by ContainsLane().

+ Here is the caller graph for this function:

◆ GetLength()

double carla::road::LaneSection::GetLength ( ) const

Definition at line 17 of file LaneSection.cpp.

References _s, DEBUG_ASSERT, and GetRoad().

Referenced by carla::geom::MeshFactory::GenerateWallsWithMaxLen(), carla::geom::MeshFactory::GenerateWithMaxLen(), and LaneSection().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetRoad()

Road * carla::road::LaneSection::GetRoad ( ) const

Definition at line 23 of file LaneSection.cpp.

References _road.

Referenced by GetLength(), carla::road::Lane::GetRoad(), and LaneSection().

+ Here is the caller graph for this function:

Member Data Documentation

◆ _id

const SectionId carla::road::LaneSection::_id = 0u
private

Definition at line 55 of file LaneSection.h.

Referenced by GetId().

◆ _lane_offset

geom::CubicPolynomial carla::road::LaneSection::_lane_offset
private

Definition at line 63 of file LaneSection.h.

◆ _lanes

std::map<LaneId, Lane> carla::road::LaneSection::_lanes
private

◆ _road

Road* carla::road::LaneSection::_road = nullptr
private

Definition at line 59 of file LaneSection.h.

Referenced by carla::road::MapBuilder::AddRoadSection(), and GetRoad().

◆ _s

const double carla::road::LaneSection::_s = 0.0
private

Definition at line 57 of file LaneSection.h.

Referenced by GetDistance(), and GetLength().

◆ MapBuilder

friend carla::road::LaneSection::MapBuilder
private

Definition at line 53 of file LaneSection.h.


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