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

#include <basicconstraintsandreferences.h>

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

Public Member Functions

 NominalReferenceSpeed (adore::view::ALane *lfv, adore::params::APLongitudinalPlanner *plon, adore::params::APTacticalPlanner *ptac)
 
virtual bool getValueIfAvailable (double t, double s, double ds, double &ref) const override
 
void setSpeedScale (double value)
 
virtual void update (double t0, double s0, double ds0) override
 
virtual int getDimension () override
 
virtual int getDerivative () override
 

Private Attributes

adore::view::ALanelfv_
 
LFVSpeedLimit lFVSpeedLimit_
 
CurvatureSpeedLimit curvatureSpeedLimit_
 
adore::params::APLongitudinalPlannerplon_
 
double constraintClearance_
 
double speed_scale_
 

Detailed Description

NominalReferenceSpeed - use this reference for unconstrained nominal planning - maximize speed

Constructor & Destructor Documentation

◆ NominalReferenceSpeed()

adore::fun::NominalReferenceSpeed::NominalReferenceSpeed ( adore::view::ALane lfv,
adore::params::APLongitudinalPlanner plon,
adore::params::APTacticalPlanner ptac 
)
inline

Member Function Documentation

◆ getDerivative()

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

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

Returns
applicable to which state derivative

Implements adore::fun::ANominalReference.

◆ getDimension()

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

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

Returns
applicable to which dimension, depends on setup of planner

Implements adore::fun::ANominalReference.

◆ getValueIfAvailable()

virtual bool adore::fun::NominalReferenceSpeed::getValueIfAvailable ( double  t,
double  s,
double  ds,
double &  ref 
) const
inlineoverridevirtual

Determine whether a reference is available and retrieve its value.

Parameters
ttime
sprogress along coordinate system
Returns
true, if a reference is available

Implements adore::fun::ANominalReference.

Here is the call graph for this function:

◆ setSpeedScale()

void adore::fun::NominalReferenceSpeed::setSpeedScale ( double  value)
inline
Here is the caller graph for this function:

◆ update()

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

Refresh values of the reference 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::ANominalReference.

Here is the call graph for this function:

Member Data Documentation

◆ constraintClearance_

double adore::fun::NominalReferenceSpeed::constraintClearance_
private

◆ curvatureSpeedLimit_

CurvatureSpeedLimit adore::fun::NominalReferenceSpeed::curvatureSpeedLimit_
private

◆ lfv_

adore::view::ALane* adore::fun::NominalReferenceSpeed::lfv_
private

◆ lFVSpeedLimit_

LFVSpeedLimit adore::fun::NominalReferenceSpeed::lFVSpeedLimit_
private

◆ plon_

adore::params::APLongitudinalPlanner* adore::fun::NominalReferenceSpeed::plon_
private

◆ speed_scale_

double adore::fun::NominalReferenceSpeed::speed_scale_
private

speed_scale_ allows to drive (cautiosly) at a certain percentage of the maximum speed


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