pinocchio  3.7.0
A fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives
 
Loading...
Searching...
No Matches
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_spatial_motion_hpp__
7#define __pinocchio_spatial_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>::Matrix4 Matrix4; \
18 typedef TYPENAME traits<Derived>::Matrix6 Matrix6; \
19 typedef TYPENAME traits<Derived>::ToVectorReturnType ToVectorReturnType; \
20 typedef TYPENAME traits<Derived>::ToVectorConstReturnType ToVectorConstReturnType; \
21 typedef TYPENAME traits<Derived>::AngularType AngularType; \
22 typedef TYPENAME traits<Derived>::LinearType LinearType; \
23 typedef TYPENAME traits<Derived>::ConstAngularType ConstAngularType; \
24 typedef TYPENAME traits<Derived>::ConstLinearType ConstLinearType; \
25 typedef TYPENAME traits<Derived>::ActionMatrixType ActionMatrixType; \
26 typedef TYPENAME traits<Derived>::HomogeneousMatrixType HomogeneousMatrixType; \
27 typedef TYPENAME traits<Derived>::MotionPlain MotionPlain; \
28 typedef TYPENAME traits<Derived>::PlainReturnType PlainReturnType; \
29 enum \
30 { \
31 LINEAR = traits<Derived>::LINEAR, \
32 ANGULAR = traits<Derived>::ANGULAR \
33 }
34
35#define MOTION_TYPEDEF_TPL(Derived) MOTION_TYPEDEF_GENERIC(Derived, typename)
36
37#define MOTION_TYPEDEF(Derived) MOTION_TYPEDEF_GENERIC(Derived, PINOCCHIO_MACRO_EMPTY_ARG)
38
39namespace pinocchio
40{
44 template<typename D, typename MotionDerived>
46 {
47 typedef D ReturnType;
48 };
49
50} // namespace pinocchio
51
52#include "pinocchio/spatial/motion-base.hpp"
53#include "pinocchio/spatial/motion-dense.hpp"
54#include "pinocchio/spatial/motion-tpl.hpp"
55#include "pinocchio/spatial/motion-ref.hpp"
56#include "pinocchio/spatial/motion-zero.hpp"
57
58#endif // ifndef __pinocchio_spatial_motion_hpp__
Main pinocchio namespace.
Definition treeview.dox:11
Return type of the ation of a Motion onto an object of type D.
Definition motion.hpp:46