diff --git a/source/RobotAPI/components/SkillObserver/SkillObserver.h b/source/RobotAPI/components/SkillObserver/SkillObserver.h
index 44afdb0070538c416d06d2a938eef09d6d54693b..54fc0ca89f9d57cba62f2a5ca2a65b452db3d8ca 100644
--- a/source/RobotAPI/components/SkillObserver/SkillObserver.h
+++ b/source/RobotAPI/components/SkillObserver/SkillObserver.h
@@ -22,6 +22,7 @@
 
 #pragma once
 
+#include <mutex>
 #include <thread>
 
 #include <ArmarXCore/core/Component.h>
diff --git a/source/RobotAPI/libraries/ArmarXObjects/plugins/ObjectPoseClientPlugin.cpp b/source/RobotAPI/libraries/ArmarXObjects/plugins/ObjectPoseClientPlugin.cpp
index b12572855775c7c9f3f11f4f2d571da7ff36a14f..9bf87346d6014d3add6edad66bbda0bfa84019ad 100644
--- a/source/RobotAPI/libraries/ArmarXObjects/plugins/ObjectPoseClientPlugin.cpp
+++ b/source/RobotAPI/libraries/ArmarXObjects/plugins/ObjectPoseClientPlugin.cpp
@@ -1,5 +1,8 @@
 #include "ObjectPoseClientPlugin.h"
 
+#include <ArmarXCore/core/Component.h>
+
+
 namespace armarx::plugins
 {
     void ObjectPoseClientPlugin::postCreatePropertyDefinitions(PropertyDefinitionsPtr& properties)
diff --git a/source/RobotAPI/libraries/ArmarXObjects/plugins/ObjectPoseClientPlugin.h b/source/RobotAPI/libraries/ArmarXObjects/plugins/ObjectPoseClientPlugin.h
index 996f699acd35dd50afa095f3bdaa66d9d2a7e061..769d1176dd1fc8db6063fe867a3aec1ff3e1b90d 100644
--- a/source/RobotAPI/libraries/ArmarXObjects/plugins/ObjectPoseClientPlugin.h
+++ b/source/RobotAPI/libraries/ArmarXObjects/plugins/ObjectPoseClientPlugin.h
@@ -1,11 +1,12 @@
 #pragma once
 
-#include <ArmarXCore/core/Component.h>
+#include <ArmarXCore/core/ComponentPlugin.h>
 
 #include <RobotAPI/interface/objectpose/ObjectPoseStorageInterface.h>
 #include <RobotAPI/libraries/ArmarXObjects/ObjectFinder.h>
 #include <RobotAPI/libraries/ArmarXObjects/ObjectPose.h>
 
+
 namespace armarx::plugins
 {
     class ObjectPoseClientPlugin : public ComponentPlugin
@@ -51,6 +52,9 @@ namespace armarx::plugins
     };
 }
 
+
+#include <ArmarXCore/core/ManagedIceObject.h>
+
 namespace armarx
 {
     /**
diff --git a/source/RobotAPI/libraries/ArmarXObjects/plugins/ObjectPoseProviderPlugin.cpp b/source/RobotAPI/libraries/ArmarXObjects/plugins/ObjectPoseProviderPlugin.cpp
index 63ccab6e140afa4bb8fdd174d0523e7c3b0cd78d..6aef209e68f06d66eae2a5a9a94fde6d084e04bd 100644
--- a/source/RobotAPI/libraries/ArmarXObjects/plugins/ObjectPoseProviderPlugin.cpp
+++ b/source/RobotAPI/libraries/ArmarXObjects/plugins/ObjectPoseProviderPlugin.cpp
@@ -1,5 +1,8 @@
 #include "ObjectPoseProviderPlugin.h"
 
+#include <ArmarXCore/core/Component.h>
+
+
 namespace armarx::plugins
 {
 
diff --git a/source/RobotAPI/libraries/ArmarXObjects/plugins/ObjectPoseProviderPlugin.h b/source/RobotAPI/libraries/ArmarXObjects/plugins/ObjectPoseProviderPlugin.h
index 2f7c87ef560cad2e4a0b20257387f52b8bd6835d..1d0191ed6c32cc912efcb683155d465bdbfa0ff2 100644
--- a/source/RobotAPI/libraries/ArmarXObjects/plugins/ObjectPoseProviderPlugin.h
+++ b/source/RobotAPI/libraries/ArmarXObjects/plugins/ObjectPoseProviderPlugin.h
@@ -1,6 +1,6 @@
 #pragma once
 
-#include <ArmarXCore/core/Component.h>
+#include <ArmarXCore/core/ComponentPlugin.h>
 
 #include <RobotAPI/interface/objectpose/ObjectPoseProvider.h>
 
@@ -32,6 +32,8 @@ namespace armarx::plugins
 }
 
 
+#include <ArmarXCore/core/ManagedIceObject.h>
+
 namespace armarx
 {
 
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/ArVizComponentPlugin.cpp b/source/RobotAPI/libraries/RobotAPIComponentPlugins/ArVizComponentPlugin.cpp
index b0079227d85264a7aafea4cbf5a8795d1d606cc0..859389a12506d1a73734a9111dcae884164ea4d0 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/ArVizComponentPlugin.cpp
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/ArVizComponentPlugin.cpp
@@ -1,5 +1,8 @@
 #include "ArVizComponentPlugin.h"
 
+#include <ArmarXCore/core/Component.h>
+
+
 namespace armarx::plugins
 {
     std::string ArVizComponentPlugin::getTopicName()
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/ArVizComponentPlugin.h b/source/RobotAPI/libraries/RobotAPIComponentPlugins/ArVizComponentPlugin.h
index a4388cb604ea784494091be344b89320a317ad5b..6ce746eddb21cf676150d615cb2d9d57f2211d13 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/ArVizComponentPlugin.h
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/ArVizComponentPlugin.h
@@ -1,6 +1,6 @@
 #pragma once
 
-#include <ArmarXCore/core/Component.h>
+#include <ArmarXCore/core/ComponentPlugin.h>
 
 #include <RobotAPI/components/ArViz/Client/Client.h>
 
@@ -27,6 +27,9 @@ namespace armarx::plugins
     };
 }
 
+
+#include <ArmarXCore/core/ManagedIceObject.h>
+
 namespace armarx
 {
     /**
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/CartesianPositionControlComponentPlugin.cpp b/source/RobotAPI/libraries/RobotAPIComponentPlugins/CartesianPositionControlComponentPlugin.cpp
index 6b403e45ccfea923d1ead7b8e73fa5e7dbcf0de2..9d241c0c94832026b41a328aa215b7008e583db8 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/CartesianPositionControlComponentPlugin.cpp
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/CartesianPositionControlComponentPlugin.cpp
@@ -1,5 +1,8 @@
 #include "CartesianPositionControlComponentPlugin.h"
 
+#include <ArmarXCore/core/Component.h>
+
+
 namespace armarx
 {
     namespace plugins
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/CartesianPositionControlComponentPlugin.h b/source/RobotAPI/libraries/RobotAPIComponentPlugins/CartesianPositionControlComponentPlugin.h
index 0d53885cc44d3d0d42f4357c6c7b7cf0cfa7db5f..3a6dfebd06e39743a612ed9cfa3480fbd453d492 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/CartesianPositionControlComponentPlugin.h
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/CartesianPositionControlComponentPlugin.h
@@ -1,6 +1,6 @@
 #pragma once
 
-#include <ArmarXCore/core/Component.h>
+#include <ArmarXCore/core/ComponentPlugin.h>
 #include <RobotAPI/interface/components/CartesianPositionControlInterface.h>
 
 
@@ -30,6 +30,9 @@ namespace armarx
     }
 }
 
+
+#include <ArmarXCore/core/ManagedIceObject.h>
+
 namespace armarx
 {
     /**
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/DebugDrawerHelperComponentPlugin.cpp b/source/RobotAPI/libraries/RobotAPIComponentPlugins/DebugDrawerHelperComponentPlugin.cpp
index 5fd0cd798b0e16567b57b443bff1381467a88a89..bd995800595c1715f71723f42a5c59dfee4dc063 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/DebugDrawerHelperComponentPlugin.cpp
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/DebugDrawerHelperComponentPlugin.cpp
@@ -21,9 +21,11 @@
  */
 
 #include <ArmarXCore/util/CPPUtility/trace.h>
+#include <ArmarXCore/core/Component.h>
 
 #include "DebugDrawerHelperComponentPlugin.h"
 
+
 namespace armarx::plugins
 {
     DebugDrawerHelperComponentPlugin::DebugDrawerHelperComponentPlugin(ManagedIceObject& parent, std::string pre) :
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/DebugDrawerHelperComponentPlugin.h b/source/RobotAPI/libraries/RobotAPIComponentPlugins/DebugDrawerHelperComponentPlugin.h
index 1cf37ba70ec4000b61db4a3d8872e6871d6c7c2a..59ed86bb95d3c66aa02c6ad935066e8d97fc53e3 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/DebugDrawerHelperComponentPlugin.h
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/DebugDrawerHelperComponentPlugin.h
@@ -22,7 +22,7 @@
 
 #pragma once
 
-#include <ArmarXCore/core/Component.h>
+#include <ArmarXCore/core/ComponentPlugin.h>
 
 #include <RobotAPI/components/DebugDrawer/DebugDrawerHelper.h>
 
@@ -82,6 +82,9 @@ namespace armarx::plugins
     };
 }
 
+
+#include <ArmarXCore/core/ManagedIceObject.h>
+
 namespace armarx
 {
     class DebugDrawerHelperComponentPluginUser : virtual public ManagedIceObject
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/FrameTrackingComponentPlugin.cpp b/source/RobotAPI/libraries/RobotAPIComponentPlugins/FrameTrackingComponentPlugin.cpp
index f5ba6417ad1ee3c5a683a33209678c3465c76277..1ca9b39590f7f49df239495cce72356223b70514 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/FrameTrackingComponentPlugin.cpp
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/FrameTrackingComponentPlugin.cpp
@@ -1,5 +1,8 @@
 #include "FrameTrackingComponentPlugin.h"
 
+#include <ArmarXCore/core/Component.h>
+
+
 namespace armarx
 {
     namespace plugins
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/FrameTrackingComponentPlugin.h b/source/RobotAPI/libraries/RobotAPIComponentPlugins/FrameTrackingComponentPlugin.h
index 82b1b593d1c457b1b2c636a292ee0ce8aebce477..8364375ea697ba9129d3699edc00c0dede740810 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/FrameTrackingComponentPlugin.h
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/FrameTrackingComponentPlugin.h
@@ -1,6 +1,6 @@
 #pragma once
 
-#include <ArmarXCore/core/Component.h>
+#include <ArmarXCore/core/ComponentPlugin.h>
 #include <RobotAPI/interface/components/FrameTrackingInterface.h>
 
 
@@ -30,6 +30,9 @@ namespace armarx
     }
 }
 
+
+#include <ArmarXCore/core/ManagedIceObject.h>
+
 namespace armarx
 {
     /**
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/GraspCandidateObserverComponentPlugin.cpp b/source/RobotAPI/libraries/RobotAPIComponentPlugins/GraspCandidateObserverComponentPlugin.cpp
index 47494bcad7cba1f390206cbb513a12f8fe1fa838..6ab08acaee80d8896636f3c16c81bb38822365a5 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/GraspCandidateObserverComponentPlugin.cpp
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/GraspCandidateObserverComponentPlugin.cpp
@@ -1,5 +1,7 @@
 #include <SimoxUtility/algorithm/string/string_tools.h>
 
+#include <ArmarXCore/core/Component.h>
+
 #include "GraspCandidateObserverComponentPlugin.h"
 
 namespace armarx
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/GraspCandidateObserverComponentPlugin.h b/source/RobotAPI/libraries/RobotAPIComponentPlugins/GraspCandidateObserverComponentPlugin.h
index e2f134ef78f79da7ea1e7298a969d984cd3a4123..a47f7877514702b1d4c719cb87947fea09ed5c90 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/GraspCandidateObserverComponentPlugin.h
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/GraspCandidateObserverComponentPlugin.h
@@ -1,6 +1,6 @@
 #pragma once
 
-#include <ArmarXCore/core/Component.h>
+#include <ArmarXCore/core/ComponentPlugin.h>
 #include <RobotAPI/interface/observers/GraspCandidateObserverInterface.h>
 
 namespace armarx
@@ -36,6 +36,9 @@ namespace armarx
     }
 }
 
+
+#include <ArmarXCore/core/ManagedIceObject.h>
+
 namespace armarx
 {
     /**
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/HandUnitComponentPlugin.cpp b/source/RobotAPI/libraries/RobotAPIComponentPlugins/HandUnitComponentPlugin.cpp
index c99b6a9c2dafb560e00e86c28eee0108b650c888..df3ed14e186ef4bced826f2e4cc9e581529ae5af 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/HandUnitComponentPlugin.cpp
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/HandUnitComponentPlugin.cpp
@@ -1,5 +1,8 @@
 #include "HandUnitComponentPlugin.h"
 
+#include <ArmarXCore/core/Component.h>
+
+
 namespace armarx
 {
     namespace plugins
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/HandUnitComponentPlugin.h b/source/RobotAPI/libraries/RobotAPIComponentPlugins/HandUnitComponentPlugin.h
index 4cd3593cb95abd83e023e8aa5642b68e23bea3fb..6cfe35ef754764c1c657ddefd7ec5bee811339c0 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/HandUnitComponentPlugin.h
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/HandUnitComponentPlugin.h
@@ -1,6 +1,6 @@
 #pragma once
 
-#include <ArmarXCore/core/Component.h>
+#include <ArmarXCore/core/ComponentPlugin.h>
 #include <RobotAPI/interface/units/HandUnitInterface.h>
 
 
@@ -30,6 +30,9 @@ namespace armarx
     }
 }
 
+
+#include <ArmarXCore/core/ManagedIceObject.h>
+
 namespace armarx
 {
     /**
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/KinematicUnitComponentPlugin.cpp b/source/RobotAPI/libraries/RobotAPIComponentPlugins/KinematicUnitComponentPlugin.cpp
index ba8ba16d24d40bbb2312690ef87b4dd9f5619cd5..59dc918a1be3688d70795a5175c90ca28c5da099 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/KinematicUnitComponentPlugin.cpp
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/KinematicUnitComponentPlugin.cpp
@@ -1,5 +1,8 @@
 #include "KinematicUnitComponentPlugin.h"
 
+#include <ArmarXCore/core/Component.h>
+
+
 namespace armarx
 {
     namespace plugins
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/KinematicUnitComponentPlugin.h b/source/RobotAPI/libraries/RobotAPIComponentPlugins/KinematicUnitComponentPlugin.h
index e3b4062b59500f26314a6ccdb6e5480dd7d34a2b..2b3486826b6b84883e28c86598f3e05ea04c2674 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/KinematicUnitComponentPlugin.h
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/KinematicUnitComponentPlugin.h
@@ -1,6 +1,6 @@
 #pragma once
 
-#include <ArmarXCore/core/Component.h>
+#include <ArmarXCore/core/ComponentPlugin.h>
 #include <RobotAPI/interface/units/KinematicUnitInterface.h>
 
 
@@ -30,6 +30,9 @@ namespace armarx
     }
 }
 
+
+#include <ArmarXCore/core/ManagedIceObject.h>
+
 namespace armarx
 {
     /**
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/NaturalIKComponentPlugin.cpp b/source/RobotAPI/libraries/RobotAPIComponentPlugins/NaturalIKComponentPlugin.cpp
index 008d497652fbd0888ef82eb1e5b99650bda11a25..fd592a9250cb0bb99caef834243ff4cf5bbaab23 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/NaturalIKComponentPlugin.cpp
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/NaturalIKComponentPlugin.cpp
@@ -1,5 +1,8 @@
 #include "NaturalIKComponentPlugin.h"
 
+#include <ArmarXCore/core/Component.h>
+
+
 namespace armarx
 {
     namespace plugins
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/NaturalIKComponentPlugin.h b/source/RobotAPI/libraries/RobotAPIComponentPlugins/NaturalIKComponentPlugin.h
index 0532416d50ae164baf5645d0cbc30ff50f3e9f48..c7e1c9cf61c21bfa986b3a0c827a6b371aba3048 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/NaturalIKComponentPlugin.h
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/NaturalIKComponentPlugin.h
@@ -1,6 +1,6 @@
 #pragma once
 
-#include <ArmarXCore/core/Component.h>
+#include <ArmarXCore/core/ComponentPlugin.h>
 #include <RobotAPI/interface/components/NaturalIKInterface.h>
 
 
@@ -30,6 +30,9 @@ namespace armarx
     }
 }
 
+
+#include <ArmarXCore/core/ManagedIceObject.h>
+
 namespace armarx
 {
     /**
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/PlatformUnitComponentPlugin.cpp b/source/RobotAPI/libraries/RobotAPIComponentPlugins/PlatformUnitComponentPlugin.cpp
index f40b6cd34a5f5a8f028b714cc7a1517d590f2b3c..affec3b906414a2616c3e786aa0f88e6fa7b4d44 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/PlatformUnitComponentPlugin.cpp
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/PlatformUnitComponentPlugin.cpp
@@ -1,5 +1,8 @@
 #include "PlatformUnitComponentPlugin.h"
 
+#include <ArmarXCore/core/Component.h>
+
+
 namespace armarx
 {
     namespace plugins
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/PlatformUnitComponentPlugin.h b/source/RobotAPI/libraries/RobotAPIComponentPlugins/PlatformUnitComponentPlugin.h
index d2cec0f45b698f813d12a10920a122efbb63d00b..67b0edbc320bf724e321e2c32631b37ac5ebc92f 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/PlatformUnitComponentPlugin.h
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/PlatformUnitComponentPlugin.h
@@ -1,6 +1,6 @@
 #pragma once
 
-#include <ArmarXCore/core/Component.h>
+#include <ArmarXCore/core/ComponentPlugin.h>
 #include <RobotAPI/interface/units/PlatformUnitInterface.h>
 
 
@@ -30,6 +30,9 @@ namespace armarx
     }
 }
 
+
+#include <ArmarXCore/core/ManagedIceObject.h>
+
 namespace armarx
 {
     /**
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotStateComponentPlugin.cpp b/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotStateComponentPlugin.cpp
index 026024a9fb704181271f09f69ec4b94306a3d295..b9ad4f67a8e71d645fc5c868912a0ea9e271c1c9 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotStateComponentPlugin.cpp
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotStateComponentPlugin.cpp
@@ -19,11 +19,15 @@
  * @copyright  http://www.gnu.org/licenses/gpl-2.0.txt
  *             GNU General Public License
  */
+
+#include <ArmarXCore/core/Component.h>
+
 #include <RobotAPI/libraries/core/remoterobot/RemoteRobot.h>
 #include <RobotAPI/libraries/core/FramedPose.h>
 
 #include "RobotStateComponentPlugin.h"
 
+
 namespace armarx::plugins
 {
     const RobotNameHelper& RobotStateComponentPlugin::getRobotNameHelper() const
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotStateComponentPlugin.h b/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotStateComponentPlugin.h
index d60ed34f0964b4dc8592c88b055fb32e7bab4608..d3a1ba42bd9a21279268f24780572957b1d80aa4 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotStateComponentPlugin.h
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotStateComponentPlugin.h
@@ -27,12 +27,13 @@
 #include <VirtualRobot/Robot.h>
 #include <VirtualRobot/XML/RobotIO.h>
 
-#include <ArmarXCore/core/Component.h>
+#include <ArmarXCore/core/ComponentPlugin.h>
 
 #include <RobotAPI/libraries/RobotStatechartHelpers/RobotNameHelper.h>
 #include <RobotAPI/interface/core/RobotState.h>
 #include <RobotAPI/libraries/diffik/SimpleDiffIK.h>
 
+
 namespace armarx::plugins
 {
     /**
@@ -158,6 +159,9 @@ namespace armarx::plugins
     };
 }
 
+
+#include <ArmarXCore/core/ManagedIceObject.h>
+
 namespace armarx
 {
     class RobotStateComponentPluginUser : virtual public ManagedIceObject
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotUnitComponentPlugin.cpp b/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotUnitComponentPlugin.cpp
index 3259d2011790dad13984c6e2e442a3202519b411..4e6e7966cc4c71e819da47cd9a7ee06ccd536775 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotUnitComponentPlugin.cpp
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotUnitComponentPlugin.cpp
@@ -1,7 +1,11 @@
 #include "RobotUnitComponentPlugin.h"
-#include "ArmarXCore/util/CPPUtility/Pointer.h"
+
+#include <ArmarXCore/core/Component.h>
+#include <ArmarXCore/util/CPPUtility/Pointer.h>
+
 #include <thread>
 
+
 namespace armarx::plugins
 {
     RobotUnitDataStreamingReceiverPtr
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotUnitComponentPlugin.h b/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotUnitComponentPlugin.h
index 80deaf3e55177a2d38385b5a272c1969f584b61f..80357a96e9a3bb6c889d7b73435baef90a385b54 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotUnitComponentPlugin.h
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotUnitComponentPlugin.h
@@ -1,6 +1,6 @@
 #pragma once
 
-#include <ArmarXCore/core/Component.h>
+#include <ArmarXCore/core/ComponentPlugin.h>
 #include <RobotAPI/interface/units/RobotUnit/RobotUnitInterface.h>
 #include <RobotAPI/libraries/RobotUnitDataStreamingReceiver/RobotUnitDataStreamingReceiver.h>
 
@@ -75,6 +75,9 @@ namespace armarx
     }
 }
 
+
+#include <ArmarXCore/core/ManagedIceObject.h>
+
 namespace armarx
 {
     /**
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotUnitObserverComponentPlugin.cpp b/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotUnitObserverComponentPlugin.cpp
index 284533cf16e62834d85ff33e73d36b158943acef..0b5805c209fe40ab96eaafbeb2f573ca91a9ba9e 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotUnitObserverComponentPlugin.cpp
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotUnitObserverComponentPlugin.cpp
@@ -1,5 +1,8 @@
 #include "RobotUnitObserverComponentPlugin.h"
 
+#include <ArmarXCore/core/Component.h>
+
+
 namespace armarx
 {
     namespace plugins
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotUnitObserverComponentPlugin.h b/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotUnitObserverComponentPlugin.h
index 0ebeff910700102871aa6229259e05f2efec866d..27b70a5064ad2e6be651e04b2cffe5f7d2d0360f 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotUnitObserverComponentPlugin.h
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/RobotUnitObserverComponentPlugin.h
@@ -1,6 +1,6 @@
 #pragma once
 
-#include <ArmarXCore/core/Component.h>
+#include <ArmarXCore/core/ComponentPlugin.h>
 #include <ArmarXCore/interface/observers/ObserverInterface.h>
 
 
@@ -30,6 +30,9 @@ namespace armarx
     }
 }
 
+
+#include <ArmarXCore/core/ManagedIceObject.h>
+
 namespace armarx
 {
     /**
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/TrajectoryPlayerComponentPlugin.cpp b/source/RobotAPI/libraries/RobotAPIComponentPlugins/TrajectoryPlayerComponentPlugin.cpp
index 1de30ae07c9f8218666121c28350f32c1ca1f5dc..28a6479b0ab5f844e5a2e68c14fdf84df66e3c67 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/TrajectoryPlayerComponentPlugin.cpp
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/TrajectoryPlayerComponentPlugin.cpp
@@ -1,5 +1,8 @@
 #include "TrajectoryPlayerComponentPlugin.h"
 
+#include <ArmarXCore/core/Component.h>
+
+
 namespace armarx
 {
     namespace plugins
diff --git a/source/RobotAPI/libraries/RobotAPIComponentPlugins/TrajectoryPlayerComponentPlugin.h b/source/RobotAPI/libraries/RobotAPIComponentPlugins/TrajectoryPlayerComponentPlugin.h
index 3fc52df857f7a7225eacb25103dbd7fa16de4af5..28d57ca0488a8318ca154add6ec749b5380f8e50 100644
--- a/source/RobotAPI/libraries/RobotAPIComponentPlugins/TrajectoryPlayerComponentPlugin.h
+++ b/source/RobotAPI/libraries/RobotAPIComponentPlugins/TrajectoryPlayerComponentPlugin.h
@@ -1,6 +1,6 @@
 #pragma once
 
-#include <ArmarXCore/core/Component.h>
+#include <ArmarXCore/core/ComponentPlugin.h>
 #include <RobotAPI/interface/components/TrajectoryPlayerInterface.h>
 
 
@@ -30,6 +30,9 @@ namespace armarx
     }
 }
 
+
+#include <ArmarXCore/core/ManagedIceObject.h>
+
 namespace armarx
 {
     /**
diff --git a/source/RobotAPI/libraries/armem/client/MemoryNameSystemComponentPlugin.cpp b/source/RobotAPI/libraries/armem/client/MemoryNameSystemComponentPlugin.cpp
index 1d24d974e97932be9a56dd8693b1f74ef8a604f1..60fae2cf9b37e450fcfbaee806af8115f496c678 100644
--- a/source/RobotAPI/libraries/armem/client/MemoryNameSystemComponentPlugin.cpp
+++ b/source/RobotAPI/libraries/armem/client/MemoryNameSystemComponentPlugin.cpp
@@ -1,5 +1,6 @@
 #include "MemoryNameSystemComponentPlugin.h"
 
+#include <ArmarXCore/core/Component.h>
 #include <ArmarXCore/core/exceptions/local/ExpressionException.h>
 
 #include <RobotAPI/libraries/armem/core/error.h>
diff --git a/source/RobotAPI/libraries/armem/client/MemoryNameSystemComponentPlugin.h b/source/RobotAPI/libraries/armem/client/MemoryNameSystemComponentPlugin.h
index 2e71cd33c126a572e74441fdcb42cc219bee10fe..a6a2434a68a033d3e540729c08e83c90babda847 100644
--- a/source/RobotAPI/libraries/armem/client/MemoryNameSystemComponentPlugin.h
+++ b/source/RobotAPI/libraries/armem/client/MemoryNameSystemComponentPlugin.h
@@ -1,6 +1,6 @@
 #pragma once
 
-#include <ArmarXCore/core/Component.h>
+#include <ArmarXCore/core/ComponentPlugin.h>
 
 #include <RobotAPI/interface/armem/mns/MemoryNameSystemInterface.h>
 #include <RobotAPI/interface/armem/client/MemoryListenerInterface.h>
@@ -55,6 +55,8 @@ namespace armarx::armem::client::plugins
 }
 
 
+#include <ArmarXCore/core/ManagedIceObject.h>
+
 namespace armarx::armem::client
 {