5 #ifndef __pinocchio_algorithm_centroidal_hpp__
6 #define __pinocchio_algorithm_centroidal_hpp__
8 #include "pinocchio/multibody/model.hpp"
9 #include "pinocchio/multibody/data.hpp"
10 #include "pinocchio/algorithm/kinematics.hpp"
28 template<
typename Scalar,
int Options,
template<
typename,
int>
class JointCollectionTpl>
29 inline const typename DataTpl<Scalar,Options,JointCollectionTpl>::Force &
31 DataTpl<Scalar,Options,JointCollectionTpl> & data);
50 template<
typename Scalar,
int Options,
template<
typename,
int>
class JointCollectionTpl,
51 typename ConfigVectorType,
typename TangentVectorType>
52 inline const typename DataTpl<Scalar,Options,JointCollectionTpl>::Force &
55 const Eigen::MatrixBase<ConfigVectorType> & q,
56 const Eigen::MatrixBase<TangentVectorType> & v)
66 template<
typename Scalar,
int Options,
template<
typename,
int>
class JointCollectionTpl,
67 typename ConfigVectorType,
typename TangentVectorType>
69 inline const typename DataTpl<Scalar,Options,JointCollectionTpl>::Force &
72 const Eigen::MatrixBase<ConfigVectorType> & q,
73 const Eigen::MatrixBase<TangentVectorType> & v)
91 template<
typename Scalar,
int Options,
template<
typename,
int>
class JointCollectionTpl>
92 inline const typename DataTpl<Scalar,Options,JointCollectionTpl>::Force &
94 DataTpl<Scalar,Options,JointCollectionTpl> & data);
115 template<
typename Scalar,
int Options,
template<
typename,
int>
class JointCollectionTpl,
116 typename ConfigVectorType,
typename TangentVectorType1,
typename TangentVectorType2>
117 inline const typename DataTpl<Scalar,Options,JointCollectionTpl>::Force &
120 const Eigen::MatrixBase<ConfigVectorType> & q,
121 const Eigen::MatrixBase<TangentVectorType1> & v,
122 const Eigen::MatrixBase<TangentVectorType2> & a)
132 template<
typename Scalar,
int Options,
template<
typename,
int>
class JointCollectionTpl,
133 typename ConfigVectorType,
typename TangentVectorType1,
typename TangentVectorType2>
135 inline const typename DataTpl<Scalar,Options,JointCollectionTpl>::Force &
138 const Eigen::MatrixBase<ConfigVectorType> & q,
139 const Eigen::MatrixBase<TangentVectorType1> & v,
140 const Eigen::MatrixBase<TangentVectorType2> & a)
162 template<
typename Scalar,
int Options,
template<
typename,
int>
class JointCollectionTpl,
typename ConfigVectorType,
typename TangentVectorType>
164 ccrba(
const ModelTpl<Scalar,Options,JointCollectionTpl> & model,
165 DataTpl<Scalar,Options,JointCollectionTpl> & data,
166 const Eigen::MatrixBase<ConfigVectorType> & q,
167 const Eigen::MatrixBase<TangentVectorType> & v);
183 template<
typename Scalar,
int Options,
template<
typename,
int>
class JointCollectionTpl,
typename ConfigVectorType>
186 DataTpl<Scalar,Options,JointCollectionTpl> & data,
187 const Eigen::MatrixBase<ConfigVectorType> & q);
207 template<
typename Scalar,
int Options,
template<
typename,
int>
class JointCollectionTpl,
typename ConfigVectorType,
typename TangentVectorType>
209 dccrba(
const ModelTpl<Scalar,Options,JointCollectionTpl> & model,
210 DataTpl<Scalar,Options,JointCollectionTpl> & data,
211 const Eigen::MatrixBase<ConfigVectorType> & q,
212 const Eigen::MatrixBase<TangentVectorType> & v);
230 template<
typename Scalar,
int Options,
template<
typename,
int>
class JointCollectionTpl,
typename ConfigVectorType,
typename TangentVectorType>
233 DataTpl<Scalar,Options,JointCollectionTpl> & data,
234 const Eigen::MatrixBase<ConfigVectorType> & q,
235 const Eigen::MatrixBase<TangentVectorType> & v);
240 #include "pinocchio/algorithm/centroidal.hxx"
242 #endif // ifndef __pinocchio_algorithm_centroidal_hpp__