Public Types | Public Member Functions | Protected Attributes | List of all members
pinocchio::CodeGenBase< _Scalar > Struct Template Referenceabstract

#include <code-generator-base.hpp>

Inheritance diagram for pinocchio::CodeGenBase< _Scalar >:
Inheritance graph
[legend]

Public Types

enum  { Options = 0 }
 
typedef ADModel::ConfigVectorType ADConfigVectorType
 
typedef pinocchio::DataTpl< ADScalar, OptionsADData
 
typedef CppAD::ADFun< CGScalarADFun
 
typedef Eigen::Matrix< ADScalar, Eigen::Dynamic, Eigen::Dynamic, OptionsADMatrixXs
 
typedef pinocchio::ModelTpl< ADScalar, OptionsADModel
 
typedef CppAD::AD< CGScalarADScalar
 
typedef ADModel::TangentVectorType ADTangentVectorType
 
typedef Eigen::Matrix< ADScalar, Eigen::Dynamic, 1, OptionsADVectorXs
 
typedef pinocchio::DataTpl< CGScalar, OptionsCGData
 
typedef pinocchio::ModelTpl< CGScalar, OptionsCGModel
 
typedef CppAD::cg::CG< ScalarCGScalar
 
typedef Model::ConfigVectorType ConfigVectorType
 
typedef pinocchio::DataTpl< Scalar, OptionsData
 
typedef Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic, OptionsMatrixXs
 
typedef pinocchio::ModelTpl< Scalar, OptionsModel
 
typedef Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic, Options|Eigen::RowMajor > RowMatrixXs
 
typedef _Scalar Scalar
 
typedef Model::TangentVectorType TangentVectorType
 
typedef Eigen::Matrix< Scalar, Eigen::Dynamic, 1, OptionsVectorXs
 

Public Member Functions

virtual void buildMap ()=0
 build the mapping Y = f(X) More...
 
 CodeGenBase (const Model &model, const Eigen::DenseIndex dim_input, const Eigen::DenseIndex dim_output, const std::string &function_name, const std::string &library_name)
 
CppAD::cg::ModelCSourceGen< Scalar > & codeGenerator ()
 
void compileLib ()
 
template<typename Vector >
void evalFunction (const Eigen::MatrixBase< Vector > &x)
 
template<typename Vector >
void evalJacobian (const Eigen::MatrixBase< Vector > &x)
 
bool existLib () const
 
Eigen::DenseIndex getInputDimension () const
 Dimension of the input vector. More...
 
Eigen::DenseIndex getOutputDimension () const
 Dimension of the output vector. More...
 
void initLib ()
 
void loadLib (const bool generate_if_not_exist=true)
 

Protected Attributes

ADTangentVectorType ad_a
 
ADData ad_data
 
ADTangentVectorType ad_dq
 
ADFun ad_fun
 
ADModel ad_model
 
ADConfigVectorType ad_q
 
ADConfigVectorType ad_q_plus
 
ADTangentVectorType ad_v
 
ADVectorXs ad_X
 
ADVectorXs ad_Y
 
bool build_forward
 Options to generate or not the source code for the evaluation function. More...
 
bool build_jacobian
 Options to build or not the Jacobian of he function. More...
 
std::unique_ptr< CppAD::cg::ModelCSourceGen< Scalar > > cgen_ptr
 
std::unique_ptr< CppAD::cg::DynamicLib< Scalar > > dynamicLib_ptr
 
std::unique_ptr< CppAD::cg::DynamicModelLibraryProcessor< Scalar > > dynamicLibManager_ptr
 
const std::string function_name
 Name of the function. More...
 
std::unique_ptr< CppAD::cg::GenericModel< Scalar > > generatedFun_ptr
 
RowMatrixXs jac
 
std::unique_ptr< CppAD::cg::ModelLibraryCSourceGen< Scalar > > libcgen_ptr
 
const std::string library_name
 Name of the library. More...
 
VectorXs y
 

Detailed Description

template<typename _Scalar>
struct pinocchio::CodeGenBase< _Scalar >

Definition at line 17 of file code-generator-base.hpp.

Member Typedef Documentation

◆ ADConfigVectorType

template<typename _Scalar >
typedef ADModel::ConfigVectorType pinocchio::CodeGenBase< _Scalar >::ADConfigVectorType

Definition at line 41 of file code-generator-base.hpp.

◆ ADData

template<typename _Scalar >
typedef pinocchio::DataTpl<ADScalar,Options> pinocchio::CodeGenBase< _Scalar >::ADData

Definition at line 30 of file code-generator-base.hpp.

◆ ADFun

template<typename _Scalar >
typedef CppAD::ADFun<CGScalar> pinocchio::CodeGenBase< _Scalar >::ADFun

Definition at line 44 of file code-generator-base.hpp.

◆ ADMatrixXs

template<typename _Scalar >
typedef Eigen::Matrix<ADScalar,Eigen::Dynamic,Eigen::Dynamic,Options> pinocchio::CodeGenBase< _Scalar >::ADMatrixXs

Definition at line 36 of file code-generator-base.hpp.

◆ ADModel

template<typename _Scalar >
typedef pinocchio::ModelTpl<ADScalar,Options> pinocchio::CodeGenBase< _Scalar >::ADModel

Definition at line 29 of file code-generator-base.hpp.

◆ ADScalar

template<typename _Scalar >
typedef CppAD::AD<CGScalar> pinocchio::CodeGenBase< _Scalar >::ADScalar

Definition at line 21 of file code-generator-base.hpp.

◆ ADTangentVectorType

template<typename _Scalar >
typedef ADModel::TangentVectorType pinocchio::CodeGenBase< _Scalar >::ADTangentVectorType

Definition at line 42 of file code-generator-base.hpp.

◆ ADVectorXs

template<typename _Scalar >
typedef Eigen::Matrix<ADScalar,Eigen::Dynamic,1,Options> pinocchio::CodeGenBase< _Scalar >::ADVectorXs

Definition at line 35 of file code-generator-base.hpp.

◆ CGData

template<typename _Scalar >
typedef pinocchio::DataTpl<CGScalar,Options> pinocchio::CodeGenBase< _Scalar >::CGData

Definition at line 28 of file code-generator-base.hpp.

◆ CGModel

template<typename _Scalar >
typedef pinocchio::ModelTpl<CGScalar,Options> pinocchio::CodeGenBase< _Scalar >::CGModel

Definition at line 27 of file code-generator-base.hpp.

◆ CGScalar

template<typename _Scalar >
typedef CppAD::cg::CG<Scalar> pinocchio::CodeGenBase< _Scalar >::CGScalar

Definition at line 20 of file code-generator-base.hpp.

◆ ConfigVectorType

template<typename _Scalar >
typedef Model::ConfigVectorType pinocchio::CodeGenBase< _Scalar >::ConfigVectorType

Definition at line 38 of file code-generator-base.hpp.

◆ Data

template<typename _Scalar >
typedef pinocchio::DataTpl<Scalar,Options> pinocchio::CodeGenBase< _Scalar >::Data

Definition at line 26 of file code-generator-base.hpp.

◆ MatrixXs

template<typename _Scalar >
typedef Eigen::Matrix<Scalar,Eigen::Dynamic,Eigen::Dynamic,Options> pinocchio::CodeGenBase< _Scalar >::MatrixXs

Definition at line 32 of file code-generator-base.hpp.

◆ Model

template<typename _Scalar >
typedef pinocchio::ModelTpl<Scalar,Options> pinocchio::CodeGenBase< _Scalar >::Model

Definition at line 25 of file code-generator-base.hpp.

◆ RowMatrixXs

template<typename _Scalar >
typedef Eigen::Matrix<Scalar,Eigen::Dynamic,Eigen::Dynamic,Options|Eigen::RowMajor> pinocchio::CodeGenBase< _Scalar >::RowMatrixXs

Definition at line 34 of file code-generator-base.hpp.

◆ Scalar

template<typename _Scalar >
typedef _Scalar pinocchio::CodeGenBase< _Scalar >::Scalar

Definition at line 19 of file code-generator-base.hpp.

◆ TangentVectorType

template<typename _Scalar >
typedef Model::TangentVectorType pinocchio::CodeGenBase< _Scalar >::TangentVectorType

Definition at line 39 of file code-generator-base.hpp.

◆ VectorXs

template<typename _Scalar >
typedef Eigen::Matrix<Scalar,Eigen::Dynamic,1,Options> pinocchio::CodeGenBase< _Scalar >::VectorXs

Definition at line 33 of file code-generator-base.hpp.

Member Enumeration Documentation

◆ anonymous enum

template<typename _Scalar >
anonymous enum
Enumerator
Options 

Definition at line 23 of file code-generator-base.hpp.

Constructor & Destructor Documentation

◆ CodeGenBase()

template<typename _Scalar >
pinocchio::CodeGenBase< _Scalar >::CodeGenBase ( const Model model,
const Eigen::DenseIndex  dim_input,
const Eigen::DenseIndex  dim_output,
const std::string &  function_name,
const std::string &  library_name 
)
inline

Definition at line 46 of file code-generator-base.hpp.

Member Function Documentation

◆ buildMap()

template<typename _Scalar >
virtual void pinocchio::CodeGenBase< _Scalar >::buildMap ( )
pure virtual

◆ codeGenerator()

template<typename _Scalar >
CppAD::cg::ModelCSourceGen<Scalar>& pinocchio::CodeGenBase< _Scalar >::codeGenerator ( )
inline

Definition at line 83 of file code-generator-base.hpp.

◆ compileLib()

template<typename _Scalar >
void pinocchio::CodeGenBase< _Scalar >::compileLib ( )
inline

Definition at line 86 of file code-generator-base.hpp.

◆ evalFunction()

template<typename _Scalar >
template<typename Vector >
void pinocchio::CodeGenBase< _Scalar >::evalFunction ( const Eigen::MatrixBase< Vector > &  x)
inline

Definition at line 122 of file code-generator-base.hpp.

◆ evalJacobian()

template<typename _Scalar >
template<typename Vector >
void pinocchio::CodeGenBase< _Scalar >::evalJacobian ( const Eigen::MatrixBase< Vector > &  x)
inline

Definition at line 130 of file code-generator-base.hpp.

◆ existLib()

template<typename _Scalar >
bool pinocchio::CodeGenBase< _Scalar >::existLib ( ) const
inline

Definition at line 95 of file code-generator-base.hpp.

◆ getInputDimension()

template<typename _Scalar >
Eigen::DenseIndex pinocchio::CodeGenBase< _Scalar >::getInputDimension ( ) const
inline

Dimension of the input vector.

Definition at line 140 of file code-generator-base.hpp.

◆ getOutputDimension()

template<typename _Scalar >
Eigen::DenseIndex pinocchio::CodeGenBase< _Scalar >::getOutputDimension ( ) const
inline

Dimension of the output vector.

Definition at line 142 of file code-generator-base.hpp.

◆ initLib()

template<typename _Scalar >
void pinocchio::CodeGenBase< _Scalar >::initLib ( )
inline

Definition at line 69 of file code-generator-base.hpp.

◆ loadLib()

template<typename _Scalar >
void pinocchio::CodeGenBase< _Scalar >::loadLib ( const bool  generate_if_not_exist = true)
inline

Definition at line 102 of file code-generator-base.hpp.

Member Data Documentation

◆ ad_a

template<typename _Scalar >
ADTangentVectorType pinocchio::CodeGenBase< _Scalar >::ad_a
protected

Definition at line 164 of file code-generator-base.hpp.

◆ ad_data

template<typename _Scalar >
ADData pinocchio::CodeGenBase< _Scalar >::ad_data
protected

Definition at line 147 of file code-generator-base.hpp.

◆ ad_dq

template<typename _Scalar >
ADTangentVectorType pinocchio::CodeGenBase< _Scalar >::ad_dq
protected

Definition at line 164 of file code-generator-base.hpp.

◆ ad_fun

template<typename _Scalar >
ADFun pinocchio::CodeGenBase< _Scalar >::ad_fun
protected

Definition at line 161 of file code-generator-base.hpp.

◆ ad_model

template<typename _Scalar >
ADModel pinocchio::CodeGenBase< _Scalar >::ad_model
protected

Definition at line 146 of file code-generator-base.hpp.

◆ ad_q

template<typename _Scalar >
ADConfigVectorType pinocchio::CodeGenBase< _Scalar >::ad_q
protected

Definition at line 163 of file code-generator-base.hpp.

◆ ad_q_plus

template<typename _Scalar >
ADConfigVectorType pinocchio::CodeGenBase< _Scalar >::ad_q_plus
protected

Definition at line 163 of file code-generator-base.hpp.

◆ ad_v

template<typename _Scalar >
ADTangentVectorType pinocchio::CodeGenBase< _Scalar >::ad_v
protected

Definition at line 164 of file code-generator-base.hpp.

◆ ad_X

template<typename _Scalar >
ADVectorXs pinocchio::CodeGenBase< _Scalar >::ad_X
protected

Definition at line 160 of file code-generator-base.hpp.

◆ ad_Y

template<typename _Scalar >
ADVectorXs pinocchio::CodeGenBase< _Scalar >::ad_Y
protected

Definition at line 160 of file code-generator-base.hpp.

◆ build_forward

template<typename _Scalar >
bool pinocchio::CodeGenBase< _Scalar >::build_forward
protected

Options to generate or not the source code for the evaluation function.

Definition at line 155 of file code-generator-base.hpp.

◆ build_jacobian

template<typename _Scalar >
bool pinocchio::CodeGenBase< _Scalar >::build_jacobian
protected

Options to build or not the Jacobian of he function.

Definition at line 158 of file code-generator-base.hpp.

◆ cgen_ptr

template<typename _Scalar >
std::unique_ptr<CppAD::cg::ModelCSourceGen<Scalar> > pinocchio::CodeGenBase< _Scalar >::cgen_ptr
protected

Definition at line 169 of file code-generator-base.hpp.

◆ dynamicLib_ptr

template<typename _Scalar >
std::unique_ptr<CppAD::cg::DynamicLib<Scalar> > pinocchio::CodeGenBase< _Scalar >::dynamicLib_ptr
protected

Definition at line 172 of file code-generator-base.hpp.

◆ dynamicLibManager_ptr

template<typename _Scalar >
std::unique_ptr<CppAD::cg::DynamicModelLibraryProcessor<Scalar> > pinocchio::CodeGenBase< _Scalar >::dynamicLibManager_ptr
protected

Definition at line 171 of file code-generator-base.hpp.

◆ function_name

template<typename _Scalar >
const std::string pinocchio::CodeGenBase< _Scalar >::function_name
protected

Name of the function.

Definition at line 150 of file code-generator-base.hpp.

◆ generatedFun_ptr

template<typename _Scalar >
std::unique_ptr<CppAD::cg::GenericModel<Scalar> > pinocchio::CodeGenBase< _Scalar >::generatedFun_ptr
protected

Definition at line 173 of file code-generator-base.hpp.

◆ jac

template<typename _Scalar >
RowMatrixXs pinocchio::CodeGenBase< _Scalar >::jac
protected

Definition at line 167 of file code-generator-base.hpp.

◆ libcgen_ptr

template<typename _Scalar >
std::unique_ptr<CppAD::cg::ModelLibraryCSourceGen<Scalar> > pinocchio::CodeGenBase< _Scalar >::libcgen_ptr
protected

Definition at line 170 of file code-generator-base.hpp.

◆ library_name

template<typename _Scalar >
const std::string pinocchio::CodeGenBase< _Scalar >::library_name
protected

Name of the library.

Definition at line 152 of file code-generator-base.hpp.

◆ y

template<typename _Scalar >
VectorXs pinocchio::CodeGenBase< _Scalar >::y
protected

Definition at line 166 of file code-generator-base.hpp.


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


pinocchio
Author(s):
autogenerated on Fri Jun 23 2023 02:38:34