Drake
Segment Class Reference

An api::Segment implementation. More...

#include <drake/automotive/maliput/monolane/segment.h>

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

Public Member Functions

 Segment (const api::SegmentId &id, api::Junction *junction)
 Constructs a new Segment. More...
 
LineLaneNewLineLane (api::LaneId id, const V2 &xy0, const V2 &dxy, const api::RBounds &lane_bounds, const api::RBounds &driveable_bounds, const api::HBounds &elevation_bounds, const CubicPolynomial &elevation, const CubicPolynomial &superelevation)
 Gives the segment a newly constructed LineLane. More...
 
ArcLaneNewArcLane (api::LaneId id, const V2 &center, const double radius, const double theta0, const double d_theta, const api::RBounds &lane_bounds, const api::RBounds &driveable_bounds, const api::HBounds &elevation_bounds, const CubicPolynomial &elevation, const CubicPolynomial &superelevation)
 Gives the segment a newly constructed ArcLane. More...
 
 ~Segment () override=default
 
Does not allow copy, move, or assignment
 Segment (const Segment &)=delete
 
Segmentoperator= (const Segment &)=delete
 
 Segment (Segment &&)=delete
 
Segmentoperator= (Segment &&)=delete
 
- Public Member Functions inherited from Segment
const SegmentId id () const
 Returns the persistent identifier. More...
 
const Junctionjunction () const
 Returns the Junction to which this Segment belongs. More...
 
int num_lanes () const
 Returns the number of Lanes contained in this Segment. More...
 
const Lanelane (int index) const
 Returns the Lane indexed by index. More...
 
 Segment (const Segment &)=delete
 
Segmentoperator= (const Segment &)=delete
 
 Segment (Segment &&)=delete
 
Segmentoperator= (Segment &&)=delete
 

Additional Inherited Members

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

Detailed Description

An api::Segment implementation.

Constructor & Destructor Documentation

Segment ( const Segment )
delete
Segment ( Segment &&  )
delete
Segment ( const api::SegmentId id,
api::Junction junction 
)
inline

Constructs a new Segment.

The Segment is not fully initialized until one of NewLineLane() or NewArcLane() is called exactly once. junction must remain valid for the lifetime of this class.

~Segment ( )
overridevirtualdefault

Reimplemented from Segment.

Member Function Documentation

ArcLane * NewArcLane ( api::LaneId  id,
const V2 center,
const double  radius,
const double  theta0,
const double  d_theta,
const api::RBounds lane_bounds,
const api::RBounds driveable_bounds,
const api::HBounds elevation_bounds,
const CubicPolynomial elevation,
const CubicPolynomial superelevation 
)

Gives the segment a newly constructed ArcLane.

Here is the call graph for this function:

Here is the caller graph for this function:

LineLane * NewLineLane ( api::LaneId  id,
const V2 xy0,
const V2 dxy,
const api::RBounds lane_bounds,
const api::RBounds driveable_bounds,
const api::HBounds elevation_bounds,
const CubicPolynomial elevation,
const CubicPolynomial superelevation 
)

Gives the segment a newly constructed LineLane.

Here is the call graph for this function:

Here is the caller graph for this function:

Segment& operator= ( const Segment )
delete
Segment& operator= ( Segment &&  )
delete

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