|
maliput
|
geometry_base's implementation of api::BranchPoint.
#include <include/maliput/geometry_base/branch_point.h>
Public Member Functions | |
| MALIPUT_NO_COPY_NO_MOVE_NO_ASSIGN (BranchPoint) | |
| BranchPoint (const api::BranchPointId &id) | |
| Constructs an empty BranchPoint. More... | |
| void | AddABranch (Lane *lane, api::LaneEnd::Which end) |
Adds the end of lane to the "A side" of this BranchPoint. More... | |
| void | AddBBranch (Lane *lane, api::LaneEnd::Which end) |
Adds the end of lane to the "B side" of this BranchPoint. More... | |
| void | SetDefault (const api::LaneEnd &lane_end, const api::LaneEnd &default_branch) |
Sets the default branch for lane_end to default_branch. More... | |
| ~BranchPoint () override=default | |
| void | AttachToRoadGeometry (common::Passkey< RoadGeometry >, const api::RoadGeometry *road_geometry) |
Public Member Functions inherited from BranchPoint | |
| BranchPointId | id () const |
| Returns the persistent identifier. More... | |
| const RoadGeometry * | road_geometry () const |
| Returns the RoadGeometry to which this BranchPoint belongs. More... | |
| const LaneEndSet * | GetConfluentBranches (const LaneEnd &end) const |
Returns the set of LaneEnds on the same side as the given end, e.g., the LaneEnds merging with the given end. More... | |
| const LaneEndSet * | GetOngoingBranches (const LaneEnd &end) const |
Returns the set of LaneEnds on the other side from the given end, e.g., the LaneEnds which end flows into. More... | |
| std::optional< LaneEnd > | GetDefaultBranch (const LaneEnd &end) const |
Returns the default ongoing branch (if any) for the given end. More... | |
| const LaneEndSet * | GetASide () const |
| Returns the set of LaneEnds grouped together on the "A-side". More... | |
| const LaneEndSet * | GetBSide () const |
| Returns the set of LaneEnds grouped together on the "B-side". More... | |
Additional Inherited Members | |
Protected Member Functions inherited from BranchPoint | |
| BranchPoint ()=default | |
|
explicit |
Constructs an empty BranchPoint.
| id | the ID of the BranchPoint |
The BranchPoint is not fully initialized until it is added to a RoadGeometry.
|
overridevirtualdefault |
Reimplemented from BranchPoint.
| void AddABranch | ( | Lane * | lane, |
| api::LaneEnd::Which | end | ||
| ) |
Adds the end of lane to the "A side" of this BranchPoint.
| std::exception | if lane is nullptr. |
| void AddBBranch | ( | Lane * | lane, |
| api::LaneEnd::Which | end | ||
| ) |
Adds the end of lane to the "B side" of this BranchPoint.
| std::exception | if lane is nullptr. |
| void AttachToRoadGeometry | ( | common::Passkey< RoadGeometry > | , |
| const api::RoadGeometry * | road_geometry | ||
| ) |
| MALIPUT_NO_COPY_NO_MOVE_NO_ASSIGN | ( | BranchPoint | ) |
| void SetDefault | ( | const api::LaneEnd & | lane_end, |
| const api::LaneEnd & | default_branch | ||
| ) |
Sets the default branch for lane_end to default_branch.
| std::exception | if the specified LaneEnds do not belong to opposite sides of this BranchPoint. |