diff --git a/SimoxUtility/CMakeLists.txt b/SimoxUtility/CMakeLists.txt index 9a88be24ee4e0034811572e2cb5bf8fc691ae97e..ee77716ff8b9d9fd839a02334fa223be21939ecc 100644 --- a/SimoxUtility/CMakeLists.txt +++ b/SimoxUtility/CMakeLists.txt @@ -50,6 +50,7 @@ SET(SOURCES SET(INCLUDES SimoxUtility.h + EigenStdVector.h meta/eigen/enable_if_compile_time_size.h diff --git a/SimoxUtility/EigenStdVector.h b/SimoxUtility/EigenStdVector.h new file mode 100644 index 0000000000000000000000000000000000000000..8db258529224a38acb381427da183928f01c71eb --- /dev/null +++ b/SimoxUtility/EigenStdVector.h @@ -0,0 +1,20 @@ +#pragma once + +#include<Eigen/StdVector> +#ifndef EIGEN_STL_VECTOR_SPECIFICATION_DEFINED +#define EIGEN_STL_VECTOR_SPECIFICATION_DEFINED +EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Vector2f) +EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Vector3f) +EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Vector4f) +EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::VectorXf) +EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::VectorXd) +EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Matrix2f) +EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Matrix3f) +EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Matrix4f) +EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::MatrixXf) +EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::MatrixXd) + +EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Vector3d) +EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Vector3i) +#endif + diff --git a/SimoxUtility/SimoxUtility.h b/SimoxUtility/SimoxUtility.h index b05d9d777e9c58f661029e2b44949c90eae2ba42..6094e6364d98018267b4767f1967a98a0693c9f7 100644 --- a/SimoxUtility/SimoxUtility.h +++ b/SimoxUtility/SimoxUtility.h @@ -2,6 +2,8 @@ //dummy header +#include "EigenStdVector.h" + #include "math.h" #include "meta.h" #include "shapes.h" diff --git a/VirtualRobot/VirtualRobot.h b/VirtualRobot/VirtualRobot.h index 1c917018dc3006ab7942166e634d73f926615af5..142bf505fbd615e06cb97e30c05b466287f1f14a 100644 --- a/VirtualRobot/VirtualRobot.h +++ b/VirtualRobot/VirtualRobot.h @@ -107,23 +107,7 @@ // allow std vector to be used with Eigen objects -#include<Eigen/StdVector> -#ifndef EIGEN_STL_VECTOR_SPECIFICATION_DEFINED -#define EIGEN_STL_VECTOR_SPECIFICATION_DEFINED -EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Vector2f) -EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Vector3f) -EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Vector4f) -EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::VectorXf) -EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::VectorXd) -EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Matrix2f) -EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Matrix3f) -EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Matrix4f) -EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::MatrixXf) -EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::MatrixXd) - -EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Vector3d) -EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Vector3i) -#endif +#include <SimoxUtility/EigenStdVector.h> #ifndef Q_MOC_RUN // workaround for some bug in some QT/boost versions #include <boost/shared_ptr.hpp>