ADORe
ADORe is a modular open source software library and toolkit for decision making, planning, control and simulation of automated vehicles
adore::fun::NominalPlannerInformationSet< N, D > Class Template Reference

#include <anominalplannerinformation.h>

Inheritance diagram for adore::fun::NominalPlannerInformationSet< N, D >:
Inheritance graph
Collaboration diagram for adore::fun::NominalPlannerInformationSet< N, D >:
Collaboration graph

Public Member Functions

 NominalPlannerInformationSet ()
 
void add (ANominalReference *r)
 
void add (ANominalConstraint *c)
 
bool remove (ANominalConstraint *c)
 
bool remove (ANominalReference *r)
 
void add (ANominalPlannerInformation *value)
 
bool remove (ANominalPlannerInformation *value)
 
virtual bool getReferenceIfAvailable (int dim, int der, double t, double s, double ds, double &ref) const override
 
virtual double getUB (int dim, int der, double t, double s, double ds) const override
 
virtual double getLB (int dim, int der, double t, double s, double ds) const override
 
virtual void update (double t0, double s0, double ds0) override
 

Private Types

typedef std::vector< ANominalConstraint * > TCset
 
typedef std::vector< ANominalReference * > TRset
 
typedef std::vector< ANominalPlannerInformation * > TIset
 

Private Attributes

TCset bound_ [D *N *2]
 
TRset ref_ [D *N]
 
TIset subsets_
 
double unbound_
 

Detailed Description

template<int N, int D>
class adore::fun::NominalPlannerInformationSet< N, D >

NominalPlannerInformationSet - implements ANominalPlannerInformation by collecting a set of references and constraints. N is the number of derivatives D is the number of dimensions to be made available

Member Typedef Documentation

◆ TCset

template<int N, int D>
typedef std::vector<ANominalConstraint*> adore::fun::NominalPlannerInformationSet< N, D >::TCset
private

◆ TIset

template<int N, int D>
typedef std::vector<ANominalPlannerInformation*> adore::fun::NominalPlannerInformationSet< N, D >::TIset
private

◆ TRset

template<int N, int D>
typedef std::vector<ANominalReference*> adore::fun::NominalPlannerInformationSet< N, D >::TRset
private

Constructor & Destructor Documentation

◆ NominalPlannerInformationSet()

template<int N, int D>
adore::fun::NominalPlannerInformationSet< N, D >::NominalPlannerInformationSet ( )
inline

Constructor. Sets of constraints and references are initialized empty.

Member Function Documentation

◆ add() [1/3]

template<int N, int D>
void adore::fun::NominalPlannerInformationSet< N, D >::add ( ANominalConstraint c)
inline

Adds a new constraint to the set.

Here is the call graph for this function:

◆ add() [2/3]

template<int N, int D>
void adore::fun::NominalPlannerInformationSet< N, D >::add ( ANominalPlannerInformation value)
inline

Adds a set of references and constraints as a subset.

◆ add() [3/3]

template<int N, int D>
void adore::fun::NominalPlannerInformationSet< N, D >::add ( ANominalReference r)
inline

Adds a new reference to the set.

Here is the caller graph for this function:

◆ getLB()

template<int N, int D>
virtual double adore::fun::NominalPlannerInformationSet< N, D >::getLB ( int  dim,
int  der,
double  t,
double  s,
double  ds 
) const
inlineoverridevirtual

Lower bound.

Parameters
dimthe dimension (longitudinal/lateral)
derthe derivative
tthe time
sthe progress along road-relative coordinate system
dsthe derivative of s
Returns
returns the lower bound for the offset's der's derivative in dimension dim

Implements adore::fun::ANominalPlannerInformation.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getReferenceIfAvailable()

template<int N, int D>
virtual bool adore::fun::NominalPlannerInformationSet< N, D >::getReferenceIfAvailable ( int  dim,
int  der,
double  t,
double  s,
double  ds,
double &  ref 
) const
inlineoverridevirtual

Evaluate reference.

Parameters
dimthe dimension (longitudinal/lateral)
derthe derivative
tthe time
sthe progress along road-relative coordinate system
dsthe derivative of s
refthe resulting reference value returned by the function
Returns
true if the reference for the dimension and derivative is available and then writes the reference into ref

Implements adore::fun::ANominalPlannerInformation.

Here is the caller graph for this function:

◆ getUB()

template<int N, int D>
virtual double adore::fun::NominalPlannerInformationSet< N, D >::getUB ( int  dim,
int  der,
double  t,
double  s,
double  ds 
) const
inlineoverridevirtual

Upper bound.

Parameters
dimthe dimension (longitudinal/lateral)
derthe derivative
tthe time
sthe progress along road-relative coordinate system
dsthe derivative of s
Returns
returns the upper bound for the offset's der's derivative in dimension dim

Implements adore::fun::ANominalPlannerInformation.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ remove() [1/3]

template<int N, int D>
bool adore::fun::NominalPlannerInformationSet< N, D >::remove ( ANominalConstraint c)
inline

Removes a constraint from the set.

Here is the call graph for this function:

◆ remove() [2/3]

template<int N, int D>
bool adore::fun::NominalPlannerInformationSet< N, D >::remove ( ANominalPlannerInformation value)
inline

Removes a set of references and constraints as a subset.

◆ remove() [3/3]

template<int N, int D>
bool adore::fun::NominalPlannerInformationSet< N, D >::remove ( ANominalReference r)
inline

Removes a reference from the set.

◆ update()

template<int N, int D>
virtual void adore::fun::NominalPlannerInformationSet< N, D >::update ( double  t0,
double  s0,
double  ds0 
)
inlineoverridevirtual

Update all contained reference and constraint objects.

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

Implements adore::fun::ANominalPlannerInformation.

Here is the caller graph for this function:

Member Data Documentation

◆ bound_

template<int N, int D>
TCset adore::fun::NominalPlannerInformationSet< N, D >::bound_[D *N *2]
private

set of constraint objects

◆ ref_

template<int N, int D>
TRset adore::fun::NominalPlannerInformationSet< N, D >::ref_[D *N]
private

set of reference objects

◆ subsets_

template<int N, int D>
TIset adore::fun::NominalPlannerInformationSet< N, D >::subsets_
private

set of ANominalPlannerInformation bundles, for grouping of existing constraint/reference sets

◆ unbound_

template<int N, int D>
double adore::fun::NominalPlannerInformationSet< N, D >::unbound_
private

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