pinocchio  2.4.4
A fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives
motion.hpp
1 //
2 // Copyright (c) 2015-2018 CNRS
3 // Copyright (c) 2015-2016 Wandercraft, 86 rue de Paris 91400 Orsay, France.
4 //
5 
6 #ifndef __pinocchio_motion_hpp__
7 #define __pinocchio_motion_hpp__
8 
9 #include "pinocchio/spatial/fwd.hpp"
10 #include "pinocchio/macros.hpp"
11 #include "pinocchio/spatial/se3.hpp"
12 
13 #define MOTION_TYPEDEF_GENERIC(Derived,TYPENAME) \
14 typedef TYPENAME traits<Derived>::Scalar Scalar; \
15 typedef TYPENAME traits<Derived>::Vector3 Vector3; \
16 typedef TYPENAME traits<Derived>::Vector6 Vector6; \
17 typedef TYPENAME traits<Derived>::Matrix6 Matrix6; \
18 typedef TYPENAME traits<Derived>::ToVectorReturnType ToVectorReturnType; \
19 typedef TYPENAME traits<Derived>::ToVectorConstReturnType ToVectorConstReturnType; \
20 typedef TYPENAME traits<Derived>::AngularType AngularType; \
21 typedef TYPENAME traits<Derived>::LinearType LinearType; \
22 typedef TYPENAME traits<Derived>::ConstAngularType ConstAngularType; \
23 typedef TYPENAME traits<Derived>::ConstLinearType ConstLinearType; \
24 typedef TYPENAME traits<Derived>::ActionMatrixType ActionMatrixType; \
25 typedef TYPENAME traits<Derived>::MotionPlain MotionPlain; \
26 typedef TYPENAME traits<Derived>::PlainReturnType PlainReturnType; \
27 enum { \
28 LINEAR = traits<Derived>::LINEAR, \
29 ANGULAR = traits<Derived>::ANGULAR \
30 }
31 
32 #define MOTION_TYPEDEF_TPL(Derived) \
33 MOTION_TYPEDEF_GENERIC(Derived,typename)
34 
35 #define MOTION_TYPEDEF(Derived) \
36 MOTION_TYPEDEF_GENERIC(Derived,PINOCCHIO_MACRO_EMPTY_ARG)
37 
38 namespace pinocchio
39 {
43  template<typename D, typename MotionDerived>
44  struct MotionAlgebraAction { typedef D ReturnType; };
45 
46 } // namespace pinocchio
47 
48 #include "pinocchio/spatial/motion-base.hpp"
49 #include "pinocchio/spatial/motion-dense.hpp"
50 #include "pinocchio/spatial/motion-tpl.hpp"
51 #include "pinocchio/spatial/motion-ref.hpp"
52 #include "pinocchio/spatial/motion-zero.hpp"
53 
54 #endif // ifndef __pinocchio_motion_hpp__
Return type of the ation of a Motion onto an object of type D.
Definition: motion.hpp:44
Main pinocchio namespace.
Definition: treeview.dox:24