ADORe
ADORe is a modular open source software library and toolkit for decision making, planning, control and simulation of automated vehicles
adore::fun::FollowPrecedingVehicleOnLaneToBeLeft_BrakingCurve Class Reference

#include <lanechangeconstraintsandreferences.h>

Inheritance diagram for adore::fun::FollowPrecedingVehicleOnLaneToBeLeft_BrakingCurve:
Inheritance graph
Collaboration diagram for adore::fun::FollowPrecedingVehicleOnLaneToBeLeft_BrakingCurve:
Collaboration graph

Public Member Functions

 FollowPrecedingVehicleOnLaneToBeLeft_BrakingCurve (adore::view::ALane *lane, LaneChangePhaseEstimator *phaseEstimator, const adore::params::APVehicle *pveh, const adore::params::APTacticalPlanner *ptac, const adore::params::APTrajectoryGeneration *pgen)
 
 ~FollowPrecedingVehicleOnLaneToBeLeft_BrakingCurve ()
 
virtual double getValue (double t, double s, double ds) const override
 
virtual void update (double t0, double s0, double ds0) override
 
virtual ConstraintDirection getDirection () override
 
virtual int getDimension () override
 
virtual int getDerivative () override
 

Private Attributes

fun::FollowPrecedingVehicle_BreakingCurvefpv
 
LaneChangePhaseEstimatorphaseEstimator_
 

Additional Inherited Members

- Public Types inherited from adore::fun::ANominalConstraint
enum  ConstraintDirection { LB , UB }
 

Detailed Description

A constraint, which upper bounds the position of the ego vehicle according to the nearest preceding on the lane to be left during a lane change maneuver

Constructor & Destructor Documentation

◆ FollowPrecedingVehicleOnLaneToBeLeft_BrakingCurve()

adore::fun::FollowPrecedingVehicleOnLaneToBeLeft_BrakingCurve::FollowPrecedingVehicleOnLaneToBeLeft_BrakingCurve ( adore::view::ALane lane,
LaneChangePhaseEstimator phaseEstimator,
const adore::params::APVehicle pveh,
const adore::params::APTacticalPlanner ptac,
const adore::params::APTrajectoryGeneration pgen 
)
inline

◆ ~FollowPrecedingVehicleOnLaneToBeLeft_BrakingCurve()

adore::fun::FollowPrecedingVehicleOnLaneToBeLeft_BrakingCurve::~FollowPrecedingVehicleOnLaneToBeLeft_BrakingCurve ( )
inline

Member Function Documentation

◆ getDerivative()

virtual int adore::fun::FollowPrecedingVehicleOnLaneToBeLeft_BrakingCurve::getDerivative ( )
inlineoverridevirtual

Determine for which derivative of given dimension this constraint is responsible.

Returns
applicable to which state derivative

Implements adore::fun::ANominalConstraint.

◆ getDimension()

virtual int adore::fun::FollowPrecedingVehicleOnLaneToBeLeft_BrakingCurve::getDimension ( )
inlineoverridevirtual

Determine for which dimension this constraint is responsible (e.g. longitudinal, lateral, etc.)

Returns
applicable to which dimension, depends on setup of planner

Implements adore::fun::ANominalConstraint.

◆ getDirection()

virtual ConstraintDirection adore::fun::FollowPrecedingVehicleOnLaneToBeLeft_BrakingCurve::getDirection ( )
inlineoverridevirtual

Determine whether this constraint is an upper or lower bound.

Returns
lb or ub

Implements adore::fun::ANominalConstraint.

◆ getValue()

virtual double adore::fun::FollowPrecedingVehicleOnLaneToBeLeft_BrakingCurve::getValue ( double  t,
double  s,
double  ds 
) const
inlineoverridevirtual

return the value of the constraint at a certain time and position

Parameters
tthe time
sprogress along the road-relative coordinate system
dsderivative of s
Returns
value of the constraint (e.g. vmax for a speed limit)

Implements adore::fun::ANominalConstraint.

Here is the call graph for this function:

◆ update()

virtual void adore::fun::FollowPrecedingVehicleOnLaneToBeLeft_BrakingCurve::update ( double  t0,
double  s0,
double  ds0 
)
inlineoverridevirtual

Refresh values of the constraint object. Allows parameters and precomputations to buffered for one planning cycle.

Parameters
t0start time for planning
s0start progress in road-relative coordinate system
ds0derivative of s at t0

Implements adore::fun::ANominalConstraint.

Here is the call graph for this function:

Member Data Documentation

◆ fpv

fun::FollowPrecedingVehicle_BreakingCurve* adore::fun::FollowPrecedingVehicleOnLaneToBeLeft_BrakingCurve::fpv
private

◆ phaseEstimator_

LaneChangePhaseEstimator* adore::fun::FollowPrecedingVehicleOnLaneToBeLeft_BrakingCurve::phaseEstimator_
private

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