From 51c32ed6e40a2bdfe650584969b2227a36ebb828 Mon Sep 17 00:00:00 2001
From: Fabian Reister <fabian.reister@kit.edu>
Date: Wed, 1 Sep 2021 13:27:16 +0200
Subject: [PATCH] Both SimoxUtility/EigenStdVector.h and
 RobotAPI/libraries/core/EigenStl.h are no longer needed. Removing usages

---
 .../components/ArViz/Client/Elements.h        |  1 -
 .../components/ArViz/Client/elements/Mesh.h   |  3 ++-
 source/RobotAPI/libraries/core/EigenStl.h     | 23 +++++++------------
 .../MedianDerivativeFilterV3.h                |  1 -
 .../observerfilters/PoseMedianOffsetFilter.h  |  3 ---
 5 files changed, 10 insertions(+), 21 deletions(-)

diff --git a/source/RobotAPI/components/ArViz/Client/Elements.h b/source/RobotAPI/components/ArViz/Client/Elements.h
index e540d18c0..858bff262 100644
--- a/source/RobotAPI/components/ArViz/Client/Elements.h
+++ b/source/RobotAPI/components/ArViz/Client/Elements.h
@@ -16,7 +16,6 @@
 
 #include <ArmarXCore/core/exceptions/local/ExpressionException.h>
 
-#include <SimoxUtility/EigenStdVector.h>
 #include <SimoxUtility/math/normal/normal_to_mat4.h>
 #include <SimoxUtility/math/convert/rpy_to_mat3f.h>
 #include <SimoxUtility/math/pose/transform.h>
diff --git a/source/RobotAPI/components/ArViz/Client/elements/Mesh.h b/source/RobotAPI/components/ArViz/Client/elements/Mesh.h
index a6ac8ae67..a75475aee 100644
--- a/source/RobotAPI/components/ArViz/Client/elements/Mesh.h
+++ b/source/RobotAPI/components/ArViz/Client/elements/Mesh.h
@@ -2,8 +2,9 @@
 
 #include <functional>
 #include <numeric>  // for std::accumulate
+#include <vector>
 
-#include <SimoxUtility/EigenStdVector.h>
+#include <Eigen/Core>
 
 #include <ArmarXCore/util/CPPUtility/Iterator.h>
 #include <ArmarXCore/core/exceptions/local/ExpressionException.h>
diff --git a/source/RobotAPI/libraries/core/EigenStl.h b/source/RobotAPI/libraries/core/EigenStl.h
index bf2bb0655..1c8f9d751 100644
--- a/source/RobotAPI/libraries/core/EigenStl.h
+++ b/source/RobotAPI/libraries/core/EigenStl.h
@@ -18,20 +18,13 @@
 *             GNU General Public License
 */
 
+#pragma once
 
-// 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::Matrix2f)
-EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Matrix3f)
-EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Matrix4f)
-EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::MatrixXf)
+#include <Eigen/Core>
 
-EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Vector3d)
-EIGEN_DEFINE_STL_VECTOR_SPECIALIZATION(Eigen::Vector3i)
-#endif
+#include <vector>
+#include <memory>
+#include <deque>
+#include <queue>
+
+#pragma message("This header is deprecated. It contains fixes for C++ prior to C++11. See https://eigen.tuxfamily.org/dox/group__TopicStlContainers.html. Remove this header and check if e.g. <Eigen/Core> and <vector> should be used instead.")
diff --git a/source/RobotAPI/libraries/core/observerfilters/MedianDerivativeFilterV3.h b/source/RobotAPI/libraries/core/observerfilters/MedianDerivativeFilterV3.h
index c7881099c..382e5c3d6 100644
--- a/source/RobotAPI/libraries/core/observerfilters/MedianDerivativeFilterV3.h
+++ b/source/RobotAPI/libraries/core/observerfilters/MedianDerivativeFilterV3.h
@@ -23,7 +23,6 @@
  */
 #pragma once
 
-#include <RobotAPI/libraries/core/EigenStl.h>
 #include <ArmarXCore/observers/filters/MedianFilter.h>
 #include <RobotAPI/libraries/core/FramedPose.h>
 #include <RobotAPI/interface/core/PoseBase.h>
diff --git a/source/RobotAPI/libraries/core/observerfilters/PoseMedianOffsetFilter.h b/source/RobotAPI/libraries/core/observerfilters/PoseMedianOffsetFilter.h
index 73d79140c..7e8cc3e23 100644
--- a/source/RobotAPI/libraries/core/observerfilters/PoseMedianOffsetFilter.h
+++ b/source/RobotAPI/libraries/core/observerfilters/PoseMedianOffsetFilter.h
@@ -23,7 +23,6 @@
  */
 #pragma once
 
-#include <RobotAPI/libraries/core/EigenStl.h>
 #include <ArmarXCore/observers/filters/MedianFilter.h>
 #include <RobotAPI/libraries/core/FramedPose.h>
 #include <RobotAPI/interface/core/PoseBase.h>
@@ -69,5 +68,3 @@ namespace armarx::filters
     };
 
 } // namespace Filters
-
-
-- 
GitLab