Template Struct JointModelMimicTpl

Inheritance Relationships

Base Type

Struct Documentation

template<typename _Scalar, int _Options, template<typename S, int O> class JointCollectionTpl>
struct JointModelMimicTpl : public pinocchio::JointModelBase<JointModelMimicTpl<_Scalar, _Options, JointCollectionTpl>>

Public Types

Values:

enumerator MaxNVMimicked
typedef JointMimicTpl<_Scalar, _Options, JointCollectionTpl> JointDerived
typedef JointCollectionTpl<Scalar, Options> JointCollection
typedef JointModelTpl<Scalar, Options, JointCollectionTpl> JointModel
typedef SE3Tpl<Scalar, Options> SE3
typedef MotionTpl<Scalar, Options> Motion
typedef InertiaTpl<Scalar, Options> Inertia

Public Functions

PINOCCHIO_JOINT_TYPEDEF_TEMPLATE(JointDerived)
inline JointModelMimicTpl()
template<typename JointModel>
inline JointModelMimicTpl(const JointModelBase<JointModel> &jmodel, const Scalar &scaling, const Scalar &offset)
template<typename JointModelMimicking, typename JointModelMimicked>
inline JointModelMimicTpl(const JointModelBase<JointModelMimicking> &jmodel_mimicking, const JointModelBase<JointModelMimicked> &jmodel_mimicked, const Scalar &scaling, const Scalar &offset)
inline Base &base()
inline const Base &base() const
inline int nq_impl() const
inline int nv_impl() const
inline int nvExtended_impl() const
inline void setIndexes_impl(JointIndex id, int, int, int vExtended)

Note

q and v are ignored in the _impl for mimic joint because most algorithms will pass indexes of their current position in the tree, while in this case idx_q and idx_v should remain pointing to the mimicked joint. (See setMimicIndexes)

inline void setMimicIndexes(JointIndex id, int q, int v, int vExtended)

Specific way for mimic joints to set the mimicked q,v indexes. Used for manipulating tree (e.g. appendModel).

Parameters:
  • id – Set the mimicking joint id

  • q – Set the mimic joint idx_q (should point to the mimicked joint)

  • v – Set the mimic joint idx_v (should point to the mimicked joint)

  • vExtended – Set the mimicking idx_vExtended

inline JointDataDerived createData() const
inline const std::vector<bool> hasConfigurationLimit() const
inline const std::vector<bool> hasConfigurationLimitInTangent() const
template<typename ConfigVector> inline PINOCCHIO_DONT_INLINE void calc (JointDataDerived &jdata, const typename Eigen::MatrixBase< ConfigVector > &qs) const
template<typename ConfigVector, typename TangentVector> inline PINOCCHIO_DONT_INLINE void calc (JointDataDerived &jdata, const typename Eigen::MatrixBase< ConfigVector > &qs, const typename Eigen::MatrixBase< TangentVector > &vs) const
template<typename VectorLike, typename Matrix6Like>
inline void calc_aba(JointDataDerived&, const Eigen::MatrixBase<VectorLike>&, const Eigen::MatrixBase<Matrix6Like>&, const bool) const
inline std::string shortname() const
template<typename NewScalar>
inline CastType<NewScalar, JointModelMimicTpl>::type cast() const
Returns:

An expression of *this with the Scalar type casted to NewScalar.

inline const JointModel &jmodel() const
inline JointModel &jmodel()
inline const Scalar &scaling() const
inline Scalar &scaling()
inline const Scalar &offset() const
inline Scalar &offset()
template<typename D>
inline SizeDepType<NQ>::template SegmentReturn<D>::ConstType JointMappedConfigSelector_impl(const Eigen::MatrixBase<D> &a) const
template<typename D>
inline SizeDepType<NQ>::template SegmentReturn<D>::Type JointMappedConfigSelector_impl(Eigen::MatrixBase<D> &a) const
template<typename D>
inline SizeDepType<NQ>::template SegmentReturn<D>::ConstType JointMappedVelocitySelector_impl(const Eigen::MatrixBase<D> &a) const
template<typename D>
inline SizeDepType<NQ>::template SegmentReturn<D>::Type JointMappedVelocitySelector_impl(Eigen::MatrixBase<D> &a) const
template<typename D>
inline SizeDepType<NV>::template ColsReturn<D>::ConstType jointCols_impl(const Eigen::MatrixBase<D> &A) const
template<typename D>
inline SizeDepType<NV>::template ColsReturn<D>::Type jointCols_impl(Eigen::MatrixBase<D> &A) const
template<typename D>
inline SizeDepType<NV>::template RowsReturn<D>::ConstType jointRows_impl(const Eigen::MatrixBase<D> &A) const
template<typename D>
inline SizeDepType<NV>::template RowsReturn<D>::Type jointRows_impl(Eigen::MatrixBase<D> &A) const
template<typename D>
inline SizeDepType<NV>::template BlockReturn<D>::ConstType jointBlock_impl(const Eigen::MatrixBase<D> &Mat) const
template<typename D>
inline SizeDepType<NV>::template BlockReturn<D>::Type jointBlock_impl(Eigen::MatrixBase<D> &Mat) const
inline void disp(std::ostream &os) const

Public Members

EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef JointModelBase< JointModelMimicTpl > Base

Public Static Functions

static inline std::string classname()

Protected Attributes

JointModel m_jmodel_mimicking
Scalar m_scaling
Scalar m_offset
int m_nqExtended
int m_nvExtended