|
1 | 1 | /*
|
2 |
| - * Copyright 2010, |
3 |
| - * François Bleibel, |
4 |
| - * Olivier Stasse, |
5 |
| - * |
6 |
| - * CNRS/AIST |
| 2 | + * Copyright 2010,2019 |
| 3 | + * CNRS/AIST |
| 4 | + * François Bleibel, Olivier Stasse, François Bailly |
7 | 5 | *
|
8 | 6 | * This file is part of sot-core.
|
9 | 7 | * sot-core is free software: you can redistribute it and/or
|
|
35 | 33 | /* --------------------------------------------------------------------- */
|
36 | 34 | /* --------------------------------------------------------------------- */
|
37 | 35 |
|
38 |
| -namespace Eigen |
39 |
| -{ |
40 |
| - #define EIGEN_MAKE_TYPEDEFS(Type, TypeSuffix, Size, SizeSuffix) \ |
41 |
| - /** \ingroup matrixtypedefs */ \ |
42 |
| - typedef Matrix<Type, Size, Size> Matrix##SizeSuffix##TypeSuffix; \ |
43 |
| - /** \ingroup matrixtypedefs */ \ |
44 |
| - typedef Matrix<Type, Size, 1> Vector##SizeSuffix##TypeSuffix; \ |
45 |
| - /** \ingroup matrixtypedefs */ \ |
46 |
| - typedef Matrix<Type, 1, Size> RowVector##SizeSuffix##TypeSuffix; |
47 |
| - |
48 |
| - #define EIGEN_MAKE_FIXED_TYPEDEFS(Type, TypeSuffix, Size) \ |
49 |
| - /** \ingroup matrixtypedefs */ \ |
50 |
| - typedef Matrix<Type, Size, Dynamic> Matrix##Size##X##TypeSuffix; \ |
51 |
| - /** \ingroup matrixtypedefs */ \ |
52 |
| - typedef Matrix<Type, Dynamic, Size> Matrix##X##Size##TypeSuffix; |
53 |
| - |
54 |
| - #define EIGEN_MAKE_TYPEDEFS_ALL_SIZES(Type, TypeSuffix) \ |
55 |
| - EIGEN_MAKE_TYPEDEFS(Type, TypeSuffix, 1, 1) \ |
56 |
| - EIGEN_MAKE_TYPEDEFS(Type, TypeSuffix, 5, 5) \ |
57 |
| - EIGEN_MAKE_TYPEDEFS(Type, TypeSuffix, 6, 6) \ |
58 |
| - EIGEN_MAKE_TYPEDEFS(Type, TypeSuffix, 7, 7) \ |
59 |
| - EIGEN_MAKE_FIXED_TYPEDEFS(Type, TypeSuffix, 1) \ |
60 |
| - EIGEN_MAKE_FIXED_TYPEDEFS(Type, TypeSuffix, 5) \ |
61 |
| - EIGEN_MAKE_FIXED_TYPEDEFS(Type, TypeSuffix, 6) \ |
62 |
| - EIGEN_MAKE_FIXED_TYPEDEFS(Type, TypeSuffix, 7) |
63 |
| - |
64 |
| - EIGEN_MAKE_TYPEDEFS_ALL_SIZES(int, i) |
65 |
| - EIGEN_MAKE_TYPEDEFS_ALL_SIZES(float, f) |
66 |
| - EIGEN_MAKE_TYPEDEFS_ALL_SIZES(double, d) |
67 |
| - EIGEN_MAKE_TYPEDEFS_ALL_SIZES(std::complex<float>, cf) |
68 |
| - EIGEN_MAKE_TYPEDEFS_ALL_SIZES(std::complex<double>, cd) |
69 |
| - |
70 |
| - #undef EIGEN_MAKE_TYPEDEFS_ALL_SIZES |
71 |
| - #undef EIGEN_MAKE_TYPEDEFS |
72 |
| - |
73 |
| - typedef Matrix<double,Dynamic,Dynamic,RowMajor> MatrixRXd; |
74 |
| - typedef Map<MatrixRXd> SigMatrixXd; |
75 |
| - typedef Map<VectorXd> SigVectorXd; |
76 |
| - typedef const Map<const MatrixRXd> const_SigMatrixXd; |
77 |
| - typedef const Map<const VectorXd> const_SigVectorXd; |
78 |
| - |
79 |
| - typedef Eigen::Ref<Eigen::VectorXd> RefVector; |
80 |
| - typedef const Eigen::Ref<const Eigen::VectorXd>& ConstRefVector; |
81 |
| - typedef Eigen::Ref<Eigen::MatrixXd> RefMatrix; |
82 |
| - typedef const Eigen::Ref<const Eigen::MatrixXd> ConstRefMatrix; |
83 |
| -} |
84 | 36 |
|
85 | 37 | namespace dynamicgraph {
|
86 | 38 | namespace sot {
|
| 39 | + |
| 40 | + #define EIGEN_MAKE_TYPEDEFS(Type, TypeSuffix, Size, SizeSuffix) \ |
| 41 | + /** \ingroup matrixtypedefs */ \ |
| 42 | + typedef Eigen::Matrix<Type, Size, Size> Matrix##SizeSuffix##TypeSuffix; \ |
| 43 | + /** \ingroup matrixtypedefs */ \ |
| 44 | + typedef Eigen::Matrix<Type, Size, 1> Vector##SizeSuffix##TypeSuffix; \ |
| 45 | + /** \ingroup matrixtypedefs */ \ |
| 46 | + typedef Eigen::Matrix<Type, 1, Size> RowVector##SizeSuffix##TypeSuffix; |
| 47 | + |
| 48 | + #define EIGEN_MAKE_FIXED_TYPEDEFS(Type, TypeSuffix, Size) \ |
| 49 | + /** \ingroup matrixtypedefs */ \ |
| 50 | + typedef Eigen::Matrix<Type, Size, Eigen::Dynamic> Matrix##Size##X##TypeSuffix; \ |
| 51 | + /** \ingroup matrixtypedefs */ \ |
| 52 | + typedef Eigen::Matrix<Type, Eigen::Dynamic, Size> Matrix##X##Size##TypeSuffix; |
| 53 | + |
| 54 | + #define EIGEN_MAKE_TYPEDEFS_ALL_SIZES(Type, TypeSuffix) \ |
| 55 | + EIGEN_MAKE_TYPEDEFS(Type, TypeSuffix, 1, 1) \ |
| 56 | + EIGEN_MAKE_TYPEDEFS(Type, TypeSuffix, 5, 5) \ |
| 57 | + EIGEN_MAKE_TYPEDEFS(Type, TypeSuffix, 6, 6) \ |
| 58 | + EIGEN_MAKE_TYPEDEFS(Type, TypeSuffix, 7, 7) \ |
| 59 | + EIGEN_MAKE_FIXED_TYPEDEFS(Type, TypeSuffix, 1) \ |
| 60 | + EIGEN_MAKE_FIXED_TYPEDEFS(Type, TypeSuffix, 5) \ |
| 61 | + EIGEN_MAKE_FIXED_TYPEDEFS(Type, TypeSuffix, 6) \ |
| 62 | + EIGEN_MAKE_FIXED_TYPEDEFS(Type, TypeSuffix, 7) |
| 63 | + |
| 64 | + EIGEN_MAKE_TYPEDEFS_ALL_SIZES(int, i) |
| 65 | + EIGEN_MAKE_TYPEDEFS_ALL_SIZES(float, f) |
| 66 | + EIGEN_MAKE_TYPEDEFS_ALL_SIZES(double, d) |
| 67 | + EIGEN_MAKE_TYPEDEFS_ALL_SIZES(std::complex<float>, cf) |
| 68 | + EIGEN_MAKE_TYPEDEFS_ALL_SIZES(std::complex<double>, cd) |
| 69 | + |
| 70 | + #undef EIGEN_MAKE_TYPEDEFS_ALL_SIZES |
| 71 | + #undef EIGEN_MAKE_TYPEDEFS |
| 72 | + |
| 73 | + typedef Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic,Eigen::RowMajor> MatrixRXd; |
| 74 | + typedef Eigen::Map<MatrixRXd> SigMatrixXd; |
| 75 | + typedef Eigen::Map<Eigen::VectorXd> SigVectorXd; |
| 76 | + typedef const Eigen::Map<const MatrixRXd> const_SigMatrixXd; |
| 77 | + typedef const Eigen::Map<const Eigen::VectorXd> const_SigVectorXd; |
| 78 | + |
| 79 | + typedef Eigen::Ref<Eigen::VectorXd> RefVector; |
| 80 | + typedef const Eigen::Ref<const Eigen::VectorXd>& ConstRefVector; |
| 81 | + typedef Eigen::Ref<Eigen::MatrixXd> RefMatrix; |
| 82 | + typedef const Eigen::Ref<const Eigen::MatrixXd> ConstRefMatrix; |
| 83 | + |
| 84 | + |
87 | 85 | typedef Eigen::Transform<double,3, Eigen::Affine> SOT_CORE_EXPORT MatrixHomogeneous;
|
88 | 86 | typedef Eigen::Matrix<double,3,3> SOT_CORE_EXPORT MatrixRotation;
|
89 | 87 | typedef Eigen::AngleAxis<double> SOT_CORE_EXPORT VectorUTheta;
|
|
0 commit comments