pinocchio  2.3.1-dirty
spatial/se3.hpp
1 //
2 // Copyright (c) 2015-2018 CNRS
3 //
4 
5 #ifndef __pinocchio_se3_hpp__
6 #define __pinocchio_se3_hpp__
7 
8 #include "pinocchio/spatial/fwd.hpp"
9 #include "pinocchio/macros.hpp"
10 
11 #define PINOCCHIO_SE3_TYPEDEF_GENERIC(Derived,TYPENAME) \
12 typedef TYPENAME traits<Derived>::Scalar Scalar; \
13 typedef TYPENAME traits<Derived>::AngularType AngularType; \
14 typedef TYPENAME traits<Derived>::LinearType LinearType; \
15 typedef TYPENAME traits<Derived>::AngularRef AngularRef; \
16 typedef TYPENAME traits<Derived>::LinearRef LinearRef; \
17 typedef TYPENAME traits<Derived>::ConstAngularRef ConstAngularRef; \
18 typedef TYPENAME traits<Derived>::ConstLinearRef ConstLinearRef; \
19 typedef TYPENAME traits<Derived>::ActionMatrixType ActionMatrixType; \
20 typedef TYPENAME traits<Derived>::HomogeneousMatrixType HomogeneousMatrixType; \
21 enum { \
22 Options = traits<Derived>::Options, \
23 LINEAR = traits<Derived>::LINEAR, \
24 ANGULAR = traits<Derived>::ANGULAR \
25 }
26 
27 #define PINOCCHIO_SE3_TYPEDEF_TPL(Derived) \
28 PINOCCHIO_SE3_TYPEDEF_GENERIC(Derived,typename)
29 
30 #define PINOCCHIO_SE3_TYPEDEF(Derived) \
31 PINOCCHIO_SE3_TYPEDEF_GENERIC(Derived,PINOCCHIO_MACRO_EMPTY_ARG)
32 
33 namespace pinocchio
34 {
35 
36  /* Type returned by the "se3Action" and "se3ActionInverse" functions. */
37  template<typename D>
38  struct SE3GroupAction { typedef D ReturnType; };
39 
40 } // namespace pinocchio
41 
42 #include "pinocchio/spatial/se3-base.hpp"
43 #include "pinocchio/spatial/se3-tpl.hpp"
44 
45 #endif // ifndef __pinocchio_se3_hpp__
Main pinocchio namespace.
Definition: treeview.dox:24