 |
pinocchio
2.3.1-dirty
|
|
5 #ifndef __pinocchio_eigen_macros_hpp__ 6 #define __pinocchio_eigen_macros_hpp__ 8 #include "pinocchio/utils/eigen-fix.hpp" 11 #define PINOCCHIO_EIGEN_PLAIN_TYPE(D) Eigen::internal::plain_matrix_type< typename pinocchio::helper::argument_type<void(D)>::type >::type 14 #define PINOCCHIO_EIGEN_PLAIN_COLUMN_MAJOR_TYPE(D) pinocchio::helper::handle_return_type_without_typename<D,Eigen::internal::plain_matrix_type_column_major>::type 17 #define PINOCCHIO_EIGEN_PLAIN_ROW_MAJOR_TYPE(D) pinocchio::helper::handle_return_type_without_typename<D,Eigen::internal::fix::plain_matrix_type_row_major>::type 20 #define PINOCCHIO_EIGEN_REF_CONST_TYPE(D) Eigen::internal::ref_selector<D>::type 21 #if EIGEN_VERSION_AT_LEAST(3,2,90) 22 #define PINOCCHIO_EIGEN_REF_TYPE(D) Eigen::internal::ref_selector<D>::non_const_type 24 #define PINOCCHIO_EIGEN_REF_TYPE(D) \ 25 Eigen::internal::conditional< \ 26 bool(Eigen::internal::traits<D>::Flags & Eigen::NestByRefBit), \ 33 #if EIGEN_VERSION_AT_LEAST(3,3,0) 34 #define PINOCCHIO_EIGEN_DOT_PRODUCT_RETURN_TYPE(D1,D2) \ 35 Eigen::ScalarBinaryOpTraits< typename Eigen::internal::traits< D1 >::Scalar, typename Eigen::internal::traits< D2 >::Scalar >::ReturnType 37 #define PINOCCHIO_EIGEN_DOT_PRODUCT_RETURN_TYPE(D1,D2) \ 38 Eigen::internal::scalar_product_traits<typename Eigen::internal::traits< D1 >::Scalar,typename Eigen::internal::traits< D2 >::Scalar>::ReturnType 42 #define PINOCCHIO_EIGEN_CONST_CAST(TYPE,OBJ) const_cast<TYPE &>(OBJ.derived()) 45 #if defined(PINOCCHIO_WITH_CXX11_SUPPORT) && EIGEN_VERSION_AT_LEAST(3,2,90) 46 #define PINOCCHIO_WITH_EIGEN_TENSOR_MODULE 49 #endif // ifndef __pinocchio_eigen_macros_hpp__