8template <
typename Scalar>
struct CentroidalWrapperDataTpl;
16template <
typename _Scalar>
22 using FunPtr = shared_ptr<StageFunctionTpl<Scalar>>;
24 using Data = CentroidalWrapperDataTpl<Scalar>;
27 :
Base(centroidal_cost->
ndx1 + centroidal_cost->
nu, centroidal_cost->
nu,
36 return allocate_shared_eigen_aligned<Data>(
this);
42template <
typename Scalar>
44 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
45 using Base = StageFunctionDataTpl<Scalar>;
54#include "aligator/modelling/centroidal/centroidal-wrapper.hxx"
56#ifdef ALIGATOR_ENABLE_TEMPLATE_INSTANTIATION
57#include "./centroidal-wrapper.txx"
Base definitions for ternary functions.
CentroidalWrapperDataTpl(const CentroidalWrapperResidualTpl< Scalar > *model)
shared_ptr< Base > wrapped_data_
This residual acts as a wrapper for centroidal model cost functions in which the external forces are ...
ALIGATOR_UNARY_FUNCTION_INTERFACE(Scalar)
typename Base::Data BaseData
ALIGATOR_DYNAMIC_TYPEDEFS(Scalar)
shared_ptr< BaseData > createData() const
Instantiate a Data object.
void evaluate(const ConstVectorRef &x, BaseData &data) const
CentroidalWrapperResidualTpl(FunPtr centroidal_cost)
void computeJacobians(const ConstVectorRef &x, BaseData &data) const
shared_ptr< StageFunctionTpl< Scalar > > FunPtr
CentroidalWrapperDataTpl< Scalar > Data
Base struct for function data.
const int nu
Control dimension.
StageFunctionDataTpl< Scalar > Data
const int ndx1
Current state dimension.
const int nr
Function codimension.
Represents unary functions of the form , with no control (or next-state) arguments.