Drake
Junction Class Reference

An api::Junction implementation. More...

#include <drake/automotive/maliput/multilane/junction.h>

Inheritance diagram for Junction:
[legend]
Collaboration diagram for Junction:
[legend]

Public Member Functions

 Junction (const api::JunctionId &id, api::RoadGeometry *road_geometry)
 Constructs an empty Junction. More...
 
SegmentNewSegment (const api::SegmentId &id, std::unique_ptr< RoadCurve > road_curve, double r_min, double r_max, const api::HBounds &elevation_bounds)
 Creates and adds a new Segment. More...
 
 ~Junction () override=default
 
Does not allow copy, move, or assignment
 Junction (const Junction &)=delete
 
Junctionoperator= (const Junction &)=delete
 
 Junction (Junction &&)=delete
 
Junctionoperator= (Junction &&)=delete
 
- Public Member Functions inherited from Junction
const JunctionId id () const
 Returns the persistent identifier. More...
 
const RoadGeometryroad_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 Segmentsegment (int index) const
 Returns the Segment indexed by index. More...
 
 Junction (const Junction &)=delete
 
Junctionoperator= (const Junction &)=delete
 
 Junction (Junction &&)=delete
 
Junctionoperator= (Junction &&)=delete
 

Additional Inherited Members

- Protected Member Functions inherited from Junction
 Junction ()=default
 

Detailed Description

An api::Junction implementation.

Constructor & Destructor Documentation

Junction ( const Junction )
delete
Junction ( Junction &&  )
delete
Junction ( const api::JunctionId id,
api::RoadGeometry road_geometry 
)
inline

Constructs an empty Junction.

road_geometry must remain valid for the lifetime of this class, and must refer to the RoadGeometry which will contain the newly constructed Junction instance.

Here is the call graph for this function:

~Junction ( )
overridevirtualdefault

Reimplemented from Junction.

Here is the caller graph for this function:

Member Function Documentation

Segment * NewSegment ( const api::SegmentId id,
std::unique_ptr< RoadCurve road_curve,
double  r_min,
double  r_max,
const api::HBounds elevation_bounds 
)

Creates and adds a new Segment.

Parameters
idSegment's ID.
road_curveReference trajectory over the Segment's surface.
r_minLateral distance to the minimum extent of road_curve's curve from where Segment's surface starts.
r_maxLateral distance to the maximum extent of road_curve's curve from where Segment's surface ends.
elevation_boundsThe height bounds over the segment' surface.
Returns
A Segment object.

Here is the caller graph for this function:

Junction& operator= ( const Junction )
delete
Junction& operator= ( Junction &&  )
delete

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