|
maliput
|
geometry_base's implementation of api::Junction.
#include <include/maliput/geometry_base/junction.h>
Public Member Functions | |
| MALIPUT_NO_COPY_NO_MOVE_NO_ASSIGN (Junction) | |
| Junction (const api::JunctionId &id, std::optional< bool > is_intersection=std::nullopt) | |
| Constructs a Junction. More... | |
| template<class T > | |
| T * | AddSegment (std::unique_ptr< T > segment) |
Adds segment to this Junction. More... | |
| ~Junction () override=default | |
| void | AttachToRoadGeometry (common::Passkey< RoadGeometry >, const api::RoadGeometry *road_geometry, const std::function< void(const api::Segment *)> &segment_indexing_callback, const std::function< void(const api::Lane *)> &lane_indexing_callback, const std::function< void(const api::LaneBoundary *)> &lane_boundary_indexing_callback) |
Public Member Functions inherited from Junction | |
| JunctionId | id () const |
| Returns the persistent identifier. More... | |
| const RoadGeometry * | road_geometry () const |
| Returns the RoadGeometry to which this Junction belongs. More... | |
| int | num_segments () const |
| Returns the number of Segments in the Junction. More... | |
| const Segment * | segment (int index) const |
Returns the Segment indexed by index. More... | |
| std::optional< bool > | is_intersection () const |
| Returns whether this junction is an intersection. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from Junction | |
| Junction ()=default | |
|
explicit |
Constructs a Junction.
| id | the ID of the Junction |
The Junction is not fully initialized until it is added to a RoadGeometry.
| T* AddSegment | ( | std::unique_ptr< T > | segment | ) |
Adds segment to this Junction.
This Junction will take ownership of segment and will be assigned as its parent.
segment's raw pointer.| T | must be derived from geometry_base::Segment. |
| std::exception | if segment is empty. |
| void AttachToRoadGeometry | ( | common::Passkey< RoadGeometry > | , |
| const api::RoadGeometry * | road_geometry, | ||
| const std::function< void(const api::Segment *)> & | segment_indexing_callback, | ||
| const std::function< void(const api::Lane *)> & | lane_indexing_callback, | ||
| const std::function< void(const api::LaneBoundary *)> & | lane_boundary_indexing_callback | ||
| ) |
| MALIPUT_NO_COPY_NO_MOVE_NO_ASSIGN | ( | Junction | ) |