Public Types | Public Member Functions | Static Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions | Static Private Attributes | Friends | List of all members
tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize > Class Template Reference

#include <param_func.hpp>

Inheritance diagram for tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >:
Inheritance graph
[legend]

Public Types

using NumType = TNumType
 
using ParamFuncsBaseType = ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >
 

Public Member Functions

ParamFuncsBaseoperator= (const ParamFuncsBase &_other)
 
ParamFuncsBaseoperator= (ParamFuncsBase &&)=default
 
 ParamFuncsBase ()
 
 ParamFuncsBase (const ParamFuncsBase &_other)
 
 ParamFuncsBase (ParamFuncsBase &&)=default
 
virtual ~ParamFuncsBase ()=default
 
- Public Member Functions inherited from tuw::ParamFuncsBaseCRTP< ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize > >
NumType computeFuncDiff1 (const std::size_t &_funcIdx) const
 Computes 1st derivative of parametric function with index _funcIdx at parametric arc set by setEvalArc. More...
 
NumType computeFuncDiff2 (const std::size_t &_funcIdx) const
 Computes 2nd derivative of parametric function with index _funcIdx at parametric arc set by setEvalArc. More...
 
NumType computeFuncInt1 (const std::size_t &_funcIdx) const
 Computes integral of parametric function with index _funcIdx on interval [funcsArcBegin_, funcsArcEnd_]. More...
 
NumType computeFuncInt2 (const std::size_t &_funcIdx) const
 Computes double integral of parametric function with index _funcIdx on interval [funcsArcBegin_, funcsArcEnd_]. More...
 
NumType computeFuncVal (const std::size_t &_funcIdx) const
 Computes value of parametric function with index _funcIdx at parametric arc set by setEvalArc. More...
 
FuncCtrlPtTypectrlPt (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx)
 Access of a parametric function control point. More...
 
const FuncCtrlPtTypectrlPt (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx) const
 Const access of a parametric function control point. More...
 
NumTypectrlPtVal (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx, const CtrlPtDim &_ctrlPtDim=CtrlPtDim::VAL)
 Access of a parametric function control point dimension. More...
 
const NumTypectrlPtVal (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx, const CtrlPtDim &_ctrlPtDim=CtrlPtDim::VAL) const
 Const of a parametric function control point dimension. More...
 
std::size_t funcCtrlPtSize (const std::size_t &_i) const
 Number of control points for a parametric function. More...
 
NumTypefuncsArc (const std::size_t &_i, const std::size_t &_j)
 Access to the arc parameter vector at index _i, control point _j. More...
 
const NumTypefuncsArc (const std::size_t &_i, const std::size_t &_j) const
 Const access the arc parameter vector at index _i, control point _j. More...
 
NumTypefuncsArcBegin ()
 Access to the initial value of the arc parametrization. More...
 
const NumTypefuncsArcBegin () const
 Const access to the initial value of the arc parametrization. More...
 
NumTypefuncsArcEnd ()
 Access to the final value of the arc parametrization. More...
 
const NumTypefuncsArcEnd () const
 Const access to the finall value of the arc parametrization. More...
 
const NumTypefuncsArcEval () const
 Const access to the active evaluation point arc parametrization. More...
 
std::size_t funcsArcSize () const
 Number of arc parametrizations. More...
 
std::size_t funcsArcSize (const std::size_t &_i) const
 Number of control points of parametrization _i. More...
 
std::size_t funcsSize () const
 Number of parametric functions. More...
 
void init (const TParamFucsStructVecArr &_paramFuncsStructure)
 Initializes the control structure. More...
 
ParamFuncsBaseCRTPoperator= (const ParamFuncsBaseCRTP &)=default
 
ParamFuncsBaseCRTPoperator= (ParamFuncsBaseCRTP &&)=default
 
 ParamFuncsBaseCRTP ()=default
 
 ParamFuncsBaseCRTP (const ParamFuncsBaseCRTP &)=default
 
 ParamFuncsBaseCRTP (ParamFuncsBaseCRTP &&)=default
 
void precompute ()
 Precomputes cached data. More...
 
void setEvalArc (const NumType &_arcEval, const eAG &_eAG=eAG::NONE)
 Sets parametric function evaluation arc. More...
 
void shiftStartCtrlPt (const NumType &_dt)
 
 ~ParamFuncsBaseCRTP ()=default
 
- Public Member Functions inherited from tuw::ParamFuncsBaseVirt< TNumType >
TNumType computeFuncDiff1 (const std::size_t &_funcIdx) const
 Computes 1st derivative of parametric function with index _funcIdx at parametric arc set by setEvalArc. More...
 
TNumType computeFuncDiff2 (const std::size_t &_funcIdx) const
 Computes 2nd derivative of parametric function with index _funcIdx at parametric arc set by setEvalArc. More...
 
TNumType computeFuncInt1 (const std::size_t &_funcIdx) const
 Computes integral of parametric function with index _funcIdx on interval [funcsArcBegin_, funcsArcEnd_]. More...
 
TNumType computeFuncInt2 (const std::size_t &_funcIdx) const
 Computes double integral of parametric function with index _funcIdx on interval [funcsArcBegin_, funcsArcEnd_]. More...
 
TNumType computeFuncVal (const std::size_t &_funcIdx) const
 Computes value of parametric function with index _funcIdx at parametric arc set by setEvalArc. More...
 
FuncCtrlPtTypectrlPt (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx)
 Access of a parametric function control point. More...
 
const FuncCtrlPtTypectrlPt (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx) const
 Const access of a parametric function control point. More...
 
TNumType & ctrlPtVal (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx, const CtrlPtDim &_ctrlPtDim=CtrlPtDim::VAL)
 Access of a parametric function control point dimension. More...
 
const TNumType & ctrlPtVal (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx, const CtrlPtDim &_ctrlPtDim=CtrlPtDim::VAL) const
 Const of a parametric function control point dimension. More...
 
std::size_t funcCtrlPtSize (const std::size_t &_i) const
 Number of control points for a parametric function. More...
 
TNumType & funcsArc (const std::size_t &_i, const std::size_t &_j)
 Access to the arc parameter vector at index _i, control point _j. More...
 
const TNumType & funcsArc (const std::size_t &_i, const std::size_t &_j) const
 Const access the arc parameter vector at index _i, control point _j. More...
 
TNumType & funcsArcBegin ()
 Access to the initial value of the arc parametrization. More...
 
const TNumType & funcsArcBegin () const
 Const access to the initial value of the arc parametrization. More...
 
TNumType & funcsArcEnd ()
 Access to the final value of the arc parametrization. More...
 
const TNumType & funcsArcEnd () const
 Const access to the finall value of the arc parametrization. More...
 
const TNumType & funcsArcEval () const
 Const access to the active evaluation point arc parametrization. More...
 
std::size_t funcsArcSize () const
 Number of arc parametrizations. More...
 
std::size_t funcsArcSize (const std::size_t &_i) const
 Number of control points of parametrization _i. More...
 
std::size_t funcsSize () const
 Number of parametric functions. More...
 
void init (const std::vector< ParamFuncsStructure > &_paramFuncsStructure)
 Initializes the control structure. More...
 
ParamFuncsBaseVirtoperator= (const ParamFuncsBaseVirt &)=default
 
ParamFuncsBaseVirtoperator= (ParamFuncsBaseVirt &&)=default
 
 ParamFuncsBaseVirt ()=default
 
 ParamFuncsBaseVirt (const ParamFuncsBaseVirt &)=default
 
 ParamFuncsBaseVirt (ParamFuncsBaseVirt &&)=default
 
void precompute ()
 Precomputes cached data. More...
 
void setEvalArc (const TNumType &_arcEval, const eAG &_eAG=eAG::NONE)
 Sets parametric function evaluation arc. More...
 
void shiftStartCtrlPt (const TNumType &_dt)
 
virtual ~ParamFuncsBaseVirt ()=default
 

Static Public Attributes

static constexpr const int FuncSize = TFuncSize
 

Protected Types

using FuncCtrlPtType = FuncCtrlPt< TNumType >
 
- Protected Types inherited from tuw::ParamFuncsBaseCRTP< ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize > >
using eAG = EvalArcGuarantee
 
using FuncCtrlPtType = FuncCtrlPt< NumType >
 
using NumType = typename ParamFuncsBaseCRTPTraits< ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize > >::NumType
 
- Protected Types inherited from tuw::ParamFuncsBaseVirt< TNumType >
using eAG = EvalArcGuarantee
 
using FuncCtrlPtType = FuncCtrlPt< TNumType >
 

Protected Member Functions

void initImpl ()
 Called at end of init. To be used by extended classes. More...
 

Protected Attributes

TNumType funcsArcBegin_
 Arc parametrization at the beginning of the functions domain definitions (common for all functions). More...
 
TNumType funcsArcEnd_
 Arc parametrization at the end of the functions domain definitions (common for all functions). More...
 
TNumType funcsArcEval_
 Arc parametrization at the evaluation point (set by setEvalArc)/. More...
 

Private Member Functions

TNumType computeFuncDiff1ImplCRTP (const std::size_t &_funcIdx) const
 
TNumType computeFuncDiff1ImplVirt (const std::size_t &_funcIdx) const overridefinal
 
TNumType computeFuncDiff2ImplCRTP (const std::size_t &_funcIdx) const
 
TNumType computeFuncDiff2ImplVirt (const std::size_t &_funcIdx) const overridefinal
 
TNumType computeFuncInt1ImplCRTP (const std::size_t &_funcIdx) const
 
TNumType computeFuncInt1ImplVirt (const std::size_t &_funcIdx) const overridefinal
 
TNumType computeFuncInt2ImplCRTP (const std::size_t &_funcIdx) const
 
TNumType computeFuncInt2ImplVirt (const std::size_t &_funcIdx) const overridefinal
 
TNumType computeFuncValImplCRTP (const std::size_t &_funcIdx) const
 
TNumType computeFuncValImplVirt (const std::size_t &_funcIdx) const overridefinal
 
FuncCtrlPtTypectrlPtImplCRTP (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx)
 
const FuncCtrlPtTypectrlPtImplCRTP (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx) const
 
FuncCtrlPtTypectrlPtImplVirt (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx) overridefinal
 
const FuncCtrlPtTypectrlPtImplVirt (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx) const overridefinal
 
TNumType & ctrlPtValImplCRTP (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx, const CtrlPtDim &_ctrlPtDim)
 
const TNumType & ctrlPtValImplCRTP (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx, const CtrlPtDim &_ctrlPtDim) const
 
TNumType & ctrlPtValImplVirt (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx, const CtrlPtDim &_ctrlPtDim) overridefinal
 
const TNumType & ctrlPtValImplVirt (const std::size_t &_funcIdx, const std::size_t &_funcCtrlPtIdx, const CtrlPtDim &_ctrlPtDim) const overridefinal
 
std::size_t funcCtrlPtSizeImplCRTP (const std::size_t &_i) const
 
std::size_t funcCtrlPtSizeImplVirt (const std::size_t &_i) const overridefinal
 
TNumType & funcsArcBeginImplCRTP ()
 
const TNumType & funcsArcBeginImplCRTP () const
 
TNumType & funcsArcBeginImplVirt () overridefinal
 
const TNumType & funcsArcBeginImplVirt () const overridefinal
 
TNumType & funcsArcEndImplCRTP ()
 
const TNumType & funcsArcEndImplCRTP () const
 
TNumType & funcsArcEndImplVirt () overridefinal
 
const TNumType & funcsArcEndImplVirt () const overridefinal
 
const TNumType & funcsArcEvalImplCRTP () const
 
const TNumType & funcsArcEvalImplVirt () const overridefinal
 
TNumType & funcsArcImplCRTP (const std::size_t &_i, const std::size_t &_j)
 
const TNumType & funcsArcImplCRTP (const std::size_t &_i, const std::size_t &_j) const
 
TNumType & funcsArcImplVirt (const std::size_t &_i, const std::size_t &_j) overridefinal
 
const TNumType & funcsArcImplVirt (const std::size_t &_i, const std::size_t &_j) const overridefinal
 
std::size_t funcsArcSizeImplCRTP () const
 
std::size_t funcsArcSizeImplCRTP (const std::size_t &_i) const
 
std::size_t funcsArcSizeImplVirt () const overridefinal
 
std::size_t funcsArcSizeImplVirt (const std::size_t &_i) const overridefinal
 
std::size_t funcsSizeImplCRTP () const
 
std::size_t funcsSizeImplVirt () const overridefinal
 
template<bool FuncDyn = (IsFuncDyn), bool ArcDyn = IsArcDyn, typename std::enable_if<(FuncDyn)&&(ArcDyn)>::type * = nullptr>
void initBase (const std::vector< ParamFuncsStructure > &_paramFuncsStructure)
 
template<bool FuncDyn = (IsFuncDyn), bool ArcDyn = IsArcDyn, typename std::enable_if<(!FuncDyn)&&(ArcDyn)>::type * = nullptr>
void initBase (const std::array< ParamFuncsStructure, TFuncSize > &_paramFuncsStructure)
 
template<bool FuncDyn = (IsFuncDyn), bool ArcDyn = IsArcDyn, typename std::enable_if<(FuncDyn)&&(!ArcDyn)>::type * = nullptr>
void initBase (const std::vector< ParamFuncsStructure > &_paramFuncsStructure)
 
template<bool FuncDyn = (IsFuncDyn), bool ArcDyn = IsArcDyn, typename std::enable_if<(!FuncDyn)&&(!ArcDyn)>::type * = nullptr>
void initBase (const std::array< ParamFuncsStructure, TFuncSize > &_paramFuncsStructure)
 
template<typename TParamFucsStructVecArr >
void initImplCRTP (const TParamFucsStructVecArr &_paramFuncsStructure)
 
void initImplVirt (const std::vector< ParamFuncsStructure > &_paramFuncsStructure) overridefinal
 
template<bool FuncDyn = IsFuncDyn, typename std::enable_if< FuncDyn >::type * = nullptr>
void initImplVirtDispatch (const std::vector< ParamFuncsStructure > &_paramFuncsStructure)
 
template<bool FuncDyn = IsFuncDyn, typename std::enable_if<!FuncDyn >::type * = nullptr>
void initImplVirtDispatch (const std::vector< ParamFuncsStructure > &_paramFuncsStructure)
 
void precomputeImplCRTP ()
 
void precomputeImplVirt () overridefinal
 
void setEvalArcImplCRTP (const TNumType &_arcEval, const typename ParamFuncsBaseCRTP< ParamFuncsBaseType >::eAG &_eAG)
 
void setEvalArcImplVirt (const TNumType &_arcEval, const typename ParamFuncsBaseCRTP< ParamFuncsBaseType >::eAG &_eAG) overridefinal
 
void shiftStartCtrlPtImplCRTP (const TNumType &_dt)
 
void shiftStartCtrlPtImplVirt (const TNumType &_dt) overridefinal
 
TDerived & thisDerived ()
 
const TDerived & thisDerived () const
 

Static Private Attributes

static constexpr const bool IsArcDyn = TArcLatticeSize == -1
 
static constexpr const bool IsFuncDyn = TFuncSize == -1
 

Friends

template<typename TDerived2 >
class ParamFuncsBaseCRTP
 
template<typename TNum2 >
class ParamFuncsBaseVirt
 

Detailed Description

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
class tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >

Definition at line 642 of file param_func.hpp.

Member Typedef Documentation

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
using tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::FuncCtrlPtType = FuncCtrlPt<TNumType>
protected

Definition at line 665 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
using tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::NumType = TNumType

Definition at line 650 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
using tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::ParamFuncsBaseType = ParamFuncsBase<TDerived, TNumType, TFuncSize, TArcLatticeSize>

Definition at line 653 of file param_func.hpp.

Constructor & Destructor Documentation

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::ParamFuncsBase ( )
inline

Definition at line 669 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
virtual tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::~ParamFuncsBase ( )
virtualdefault
template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::ParamFuncsBase ( const ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize > &  _other)
inline

Definition at line 677 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::ParamFuncsBase ( ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize > &&  )
default

Member Function Documentation

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::computeFuncDiff1ImplCRTP ( const std::size_t &  _funcIdx) const
inlineprivate

Definition at line 817 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::computeFuncDiff1ImplVirt ( const std::size_t &  _funcIdx) const
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 775 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::computeFuncDiff2ImplCRTP ( const std::size_t &  _funcIdx) const
inlineprivate

Definition at line 823 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::computeFuncDiff2ImplVirt ( const std::size_t &  _funcIdx) const
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 781 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::computeFuncInt1ImplCRTP ( const std::size_t &  _funcIdx) const
inlineprivate

Definition at line 829 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::computeFuncInt1ImplVirt ( const std::size_t &  _funcIdx) const
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 787 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::computeFuncInt2ImplCRTP ( const std::size_t &  _funcIdx) const
inlineprivate

Definition at line 835 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::computeFuncInt2ImplVirt ( const std::size_t &  _funcIdx) const
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 793 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::computeFuncValImplCRTP ( const std::size_t &  _funcIdx) const
inlineprivate

Definition at line 811 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::computeFuncValImplVirt ( const std::size_t &  _funcIdx) const
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 769 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
FuncCtrlPtType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::ctrlPtImplCRTP ( const std::size_t &  _funcIdx,
const std::size_t &  _funcCtrlPtIdx 
)
inlineprivate

Definition at line 1296 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
const FuncCtrlPtType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::ctrlPtImplCRTP ( const std::size_t &  _funcIdx,
const std::size_t &  _funcCtrlPtIdx 
) const
inlineprivate

Definition at line 1302 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
FuncCtrlPtType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::ctrlPtImplVirt ( const std::size_t &  _funcIdx,
const std::size_t &  _funcCtrlPtIdx 
)
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 937 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
const FuncCtrlPtType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::ctrlPtImplVirt ( const std::size_t &  _funcIdx,
const std::size_t &  _funcCtrlPtIdx 
) const
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 943 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::ctrlPtValImplCRTP ( const std::size_t &  _funcIdx,
const std::size_t &  _funcCtrlPtIdx,
const CtrlPtDim _ctrlPtDim 
)
inlineprivate

Definition at line 1308 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
const TNumType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::ctrlPtValImplCRTP ( const std::size_t &  _funcIdx,
const std::size_t &  _funcCtrlPtIdx,
const CtrlPtDim _ctrlPtDim 
) const
inlineprivate

Definition at line 1326 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::ctrlPtValImplVirt ( const std::size_t &  _funcIdx,
const std::size_t &  _funcCtrlPtIdx,
const CtrlPtDim _ctrlPtDim 
)
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 950 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
const TNumType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::ctrlPtValImplVirt ( const std::size_t &  _funcIdx,
const std::size_t &  _funcCtrlPtIdx,
const CtrlPtDim _ctrlPtDim 
) const
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 957 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
std::size_t tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcCtrlPtSizeImplCRTP ( const std::size_t &  _i) const
inlineprivate

Definition at line 1232 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
std::size_t tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcCtrlPtSizeImplVirt ( const std::size_t &  _i) const
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 889 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcBeginImplCRTP ( )
inlineprivate

Definition at line 1238 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
const TNumType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcBeginImplCRTP ( ) const
inlineprivate

Definition at line 1244 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcBeginImplVirt ( )
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 895 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
const TNumType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcBeginImplVirt ( ) const
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 901 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcEndImplCRTP ( )
inlineprivate

Definition at line 1250 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
const TNumType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcEndImplCRTP ( ) const
inlineprivate

Definition at line 1256 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcEndImplVirt ( )
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 907 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
const TNumType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcEndImplVirt ( ) const
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 913 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
const TNumType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcEvalImplCRTP ( ) const
inlineprivate

Definition at line 1262 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
const TNumType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcEvalImplVirt ( ) const
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 919 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcImplCRTP ( const std::size_t &  _i,
const std::size_t &  _j 
)
inlineprivate

Definition at line 1268 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
const TNumType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcImplCRTP ( const std::size_t &  _i,
const std::size_t &  _j 
) const
inlineprivate

Definition at line 1282 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcImplVirt ( const std::size_t &  _i,
const std::size_t &  _j 
)
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 925 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
const TNumType& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcImplVirt ( const std::size_t &  _i,
const std::size_t &  _j 
) const
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 931 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
std::size_t tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcSizeImplCRTP ( ) const
inlineprivate

Definition at line 1220 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
std::size_t tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcSizeImplCRTP ( const std::size_t &  _i) const
inlineprivate

Definition at line 1226 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
std::size_t tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcSizeImplVirt ( ) const
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 877 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
std::size_t tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcSizeImplVirt ( const std::size_t &  _i) const
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 883 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
std::size_t tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsSizeImplCRTP ( ) const
inlineprivate

Definition at line 1214 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
std::size_t tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsSizeImplVirt ( ) const
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 871 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
template<bool FuncDyn = (IsFuncDyn), bool ArcDyn = IsArcDyn, typename std::enable_if<(FuncDyn)&&(ArcDyn)>::type * = nullptr>
void tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::initBase ( const std::vector< ParamFuncsStructure > &  _paramFuncsStructure)
inlineprivate

Definition at line 972 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
template<bool FuncDyn = (IsFuncDyn), bool ArcDyn = IsArcDyn, typename std::enable_if<(!FuncDyn)&&(ArcDyn)>::type * = nullptr>
void tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::initBase ( const std::array< ParamFuncsStructure, TFuncSize > &  _paramFuncsStructure)
inlineprivate

Definition at line 1035 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
template<bool FuncDyn = (IsFuncDyn), bool ArcDyn = IsArcDyn, typename std::enable_if<(FuncDyn)&&(!ArcDyn)>::type * = nullptr>
void tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::initBase ( const std::vector< ParamFuncsStructure > &  _paramFuncsStructure)
inlineprivate

Definition at line 1089 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
template<bool FuncDyn = (IsFuncDyn), bool ArcDyn = IsArcDyn, typename std::enable_if<(!FuncDyn)&&(!ArcDyn)>::type * = nullptr>
void tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::initBase ( const std::array< ParamFuncsStructure, TFuncSize > &  _paramFuncsStructure)
inlineprivate

Definition at line 1153 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
void tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::initImpl ( )
inlineprotected

Called at end of init. To be used by extended classes.

Definition at line 750 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
template<typename TParamFucsStructVecArr >
void tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::initImplCRTP ( const TParamFucsStructVecArr &  _paramFuncsStructure)
inlineprivate

Definition at line 1207 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
void tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::initImplVirt ( const std::vector< ParamFuncsStructure > &  _paramFuncsStructure)
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 865 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
template<bool FuncDyn = IsFuncDyn, typename std::enable_if< FuncDyn >::type * = nullptr>
void tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::initImplVirtDispatch ( const std::vector< ParamFuncsStructure > &  _paramFuncsStructure)
inlineprivate

Definition at line 842 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
template<bool FuncDyn = IsFuncDyn, typename std::enable_if<!FuncDyn >::type * = nullptr>
void tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::initImplVirtDispatch ( const std::vector< ParamFuncsStructure > &  _paramFuncsStructure)
inlineprivate

Definition at line 849 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
ParamFuncsBase& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::operator= ( const ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize > &  _other)
inline

Definition at line 698 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
ParamFuncsBase& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::operator= ( ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize > &&  )
default
template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
void tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::precomputeImplCRTP ( )
inlineprivate

Definition at line 799 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
void tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::precomputeImplVirt ( )
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 756 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
void tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::setEvalArcImplCRTP ( const TNumType &  _arcEval,
const typename ParamFuncsBaseCRTP< ParamFuncsBaseType >::eAG _eAG 
)
inlineprivate

Definition at line 805 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
void tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::setEvalArcImplVirt ( const TNumType &  _arcEval,
const typename ParamFuncsBaseCRTP< ParamFuncsBaseType >::eAG _eAG 
)
inlinefinaloverrideprivate

Definition at line 762 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
void tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::shiftStartCtrlPtImplCRTP ( const TNumType &  _dt)
inlineprivate

Definition at line 1344 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
void tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::shiftStartCtrlPtImplVirt ( const TNumType &  _dt)
inlinefinaloverrideprivatevirtual

Implements tuw::ParamFuncsBaseVirt< TNumType >.

Definition at line 964 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TDerived& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::thisDerived ( )
inlineprivate

Definition at line 1381 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
const TDerived& tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::thisDerived ( ) const
inlineprivate

Definition at line 1387 of file param_func.hpp.

Friends And Related Function Documentation

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
template<typename TDerived2 >
friend class ParamFuncsBaseCRTP
friend

Definition at line 1403 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
template<typename TNum2 >
friend class ParamFuncsBaseVirt
friend

Definition at line 1405 of file param_func.hpp.

Member Data Documentation

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcBegin_
protected

Arc parametrization at the beginning of the functions domain definitions (common for all functions).

Definition at line 1394 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcEnd_
protected

Arc parametrization at the end of the functions domain definitions (common for all functions).

Definition at line 1397 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
TNumType tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::funcsArcEval_
protected

Arc parametrization at the evaluation point (set by setEvalArc)/.

Definition at line 1400 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
constexpr const int tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::FuncSize = TFuncSize
static

Definition at line 656 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
constexpr const bool tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::IsArcDyn = TArcLatticeSize == -1
staticprivate

Definition at line 662 of file param_func.hpp.

template<typename TDerived, typename TNumType, int TFuncSize, int TArcLatticeSize>
constexpr const bool tuw::ParamFuncsBase< TDerived, TNumType, TFuncSize, TArcLatticeSize >::IsFuncDyn = TFuncSize == -1
staticprivate

Definition at line 659 of file param_func.hpp.


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


tuw_control
Author(s): George Todoran
autogenerated on Mon Jun 10 2019 15:27:23