19 #ifndef __se3_fwd_hpp__ 20 #define __se3_fwd_hpp__ 22 #include "pinocchio/macros.hpp" 27 template<
typename _Scalar,
int _Options=0>
class SE3Tpl;
32 template<
typename _Scalar,
int _Options=0>
class MotionTpl;
35 template<
typename Derived>
class ForceBase;
37 template<
typename Vector6ArgType>
class ForceRef;
38 template<
typename _Scalar,
int _Options=0>
class ForceTpl;
40 template<
typename _Scalar,
int _Options=0>
class InertiaTpl;
51 #define SPATIAL_TYPEDEF_TEMPLATE_GENERIC(derived,TYPENAME) \ 52 typedef TYPENAME traits<derived>::Scalar Scalar; \ 53 typedef TYPENAME traits<derived>::Vector3 Vector3; \ 54 typedef TYPENAME traits<derived>::Vector4 Vector4; \ 55 typedef TYPENAME traits<derived>::Vector6 Vector6; \ 56 typedef TYPENAME traits<derived>::Matrix3 Matrix3; \ 57 typedef TYPENAME traits<derived>::Matrix4 Matrix4; \ 58 typedef TYPENAME traits<derived>::Matrix6 Matrix6; \ 59 typedef TYPENAME traits<derived>::Angular_t Angular_t; \ 60 typedef TYPENAME traits<derived>::Linear_t Linear_t; \ 61 typedef TYPENAME traits<derived>::ConstAngular_t ConstAngular_t; \ 62 typedef TYPENAME traits<derived>::ConstLinear_t ConstLinear_t; \ 63 typedef TYPENAME traits<derived>::ActionMatrix_t ActionMatrix_t; \ 64 typedef TYPENAME traits<derived>::Quaternion_t Quaternion_t; \ 65 typedef TYPENAME traits<derived>::SE3 SE3; \ 66 typedef TYPENAME traits<derived>::Force Force; \ 67 typedef TYPENAME traits<derived>::Motion Motion; \ 68 typedef TYPENAME traits<derived>::Symmetric3 Symmetric3; \ 70 LINEAR = traits<derived>::LINEAR, \ 71 ANGULAR = traits<derived>::ANGULAR \ 74 #define SPATIAL_TYPEDEF_TEMPLATE(derived) \ 75 SPATIAL_TYPEDEF_TEMPLATE_GENERIC(derived,typename) 77 #define SPATIAL_TYPEDEF_NO_TEMPLATE(derived) \ 78 SPATIAL_TYPEDEF_TEMPLATE_GENERIC(derived,PINOCCHIO_MACRO_EMPTY_ARG) 83 #endif // ifndef __se3_fwd_hpp__
Base interface for forces representation.