ADORe
ADORe is a modular open source software library and toolkit for decision making, planning, control and simulation of automated vehicles
adore::mad::LLinearPiecewiseFunctionA< T, N, k >::OneDimension Class Reference
Inheritance diagram for adore::mad::LLinearPiecewiseFunctionA< T, N, k >::OneDimension:
Inheritance graph
Collaboration diagram for adore::mad::LLinearPiecewiseFunctionA< T, N, k >::OneDimension:
Collaboration graph

Public Member Functions

 OneDimension ()
 
 OneDimension (LLinearPiecewiseFunctionA *parent, int row)
 
virtual T f (DT x) override
 
virtual DT limitHi () const override
 
virtual DT limitLo () const override
 
virtual void setLimits (DT lo, DT hi) override
 
virtual SUBFUNclone () override
 
virtual SUBFUNcreate_derivative () override
 
virtual void bound (const DT &xmin, const DT &xmax, T &ymin, T &ymax) override
 
- Public Member Functions inherited from adore::mad::ALFunction< DT, T >
virtual void setLimits (DT lo, DT hi)=0
 
virtual T f (DT x) const=0
 
virtual void f (DT *xvec, T *yvec, unsigned int count) const
 
virtual void bound (const DT &xmin, const DT &xmax, T &ymin, T &ymax)=0
 
void bound (T &ymin, T &ymax)
 
virtual ~ALFunction ()
 
 ALFunction ()
 
const T operator() (DT x) const
 
bool isInDomain (DT x)
 
f_bounded (DT x)
 
void invalidateCachedBounds ()
 

Private Types

typedef ALFunction< DT, T > SUBFUN
 

Private Attributes

LLinearPiecewiseFunctionAm_parent
 
int m_row
 

Member Typedef Documentation

◆ SUBFUN

template<typename T , int N, int k>
typedef ALFunction<DT,T> adore::mad::LLinearPiecewiseFunctionA< T, N, k >::OneDimension::SUBFUN
private

Constructor & Destructor Documentation

◆ OneDimension() [1/2]

template<typename T , int N, int k>
adore::mad::LLinearPiecewiseFunctionA< T, N, k >::OneDimension::OneDimension ( )
inline

◆ OneDimension() [2/2]

template<typename T , int N, int k>
adore::mad::LLinearPiecewiseFunctionA< T, N, k >::OneDimension::OneDimension ( LLinearPiecewiseFunctionA parent,
int  row 
)
inline

Member Function Documentation

◆ bound()

template<typename T , int N, int k>
virtual void adore::mad::LLinearPiecewiseFunctionA< T, N, k >::OneDimension::bound ( const DT xmin,
const DT xmax,
T &  ymin,
T &  ymax 
)
inlineoverridevirtual
Here is the call graph for this function:

◆ clone()

template<typename T , int N, int k>
virtual SUBFUN* adore::mad::LLinearPiecewiseFunctionA< T, N, k >::OneDimension::clone ( )
inlineoverridevirtual

create a copy of child class object - is used for function operations

Implements adore::mad::ALFunction< DT, T >.

◆ create_derivative()

template<typename T , int N, int k>
virtual SUBFUN* adore::mad::LLinearPiecewiseFunctionA< T, N, k >::OneDimension::create_derivative ( )
inlineoverridevirtual

create a new function object, which is the derivative function

Implements adore::mad::ALFunction< DT, T >.

◆ f()

template<typename T , int N, int k>
virtual T adore::mad::LLinearPiecewiseFunctionA< T, N, k >::OneDimension::f ( DT  x)
inlineoverridevirtual
Here is the call graph for this function:

◆ limitHi()

template<typename T , int N, int k>
virtual DT adore::mad::LLinearPiecewiseFunctionA< T, N, k >::OneDimension::limitHi ( ) const
inlineoverridevirtual

query upper limit of the domain

Implements adore::mad::ALFunction< DT, T >.

Here is the call graph for this function:

◆ limitLo()

template<typename T , int N, int k>
virtual DT adore::mad::LLinearPiecewiseFunctionA< T, N, k >::OneDimension::limitLo ( ) const
inlineoverridevirtual

lower limit of the domain

Implements adore::mad::ALFunction< DT, T >.

Here is the call graph for this function:

◆ setLimits()

template<typename T , int N, int k>
virtual void adore::mad::LLinearPiecewiseFunctionA< T, N, k >::OneDimension::setLimits ( DT  lo,
DT  hi 
)
inlineoverridevirtual

Member Data Documentation

◆ m_parent

template<typename T , int N, int k>
LLinearPiecewiseFunctionA* adore::mad::LLinearPiecewiseFunctionA< T, N, k >::OneDimension::m_parent
private

◆ m_row

template<typename T , int N, int k>
int adore::mad::LLinearPiecewiseFunctionA< T, N, k >::OneDimension::m_row
private

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