diff --git a/alib2common/src/abstraction/AlgorithmAbstraction.hpp b/alib2common/src/abstraction/AlgorithmAbstraction.hpp
index a73c0b9a8b0b34e771f3ceb46f4d7b03d31ef326..16b5b2ca320a04ea0f699270bdd40dbaf2041353 100644
--- a/alib2common/src/abstraction/AlgorithmAbstraction.hpp
+++ b/alib2common/src/abstraction/AlgorithmAbstraction.hpp
@@ -41,6 +41,19 @@ public:
 	}
 };
 
+template < class ... ParamTypes >
+class Callback < void, ParamTypes ... > {
+	std::function < void ( ParamTypes ... ) > m_callback;
+
+public:
+	Callback ( std::function < void ( ParamTypes ... ) > callback ) : m_callback ( callback ) {
+	}
+
+	void operator ( ) ( ParamTypes ... params ) {
+		m_callback ( std::forward < ParamTypes > ( params ) ... );
+	}
+};
+
 template < class ReturnType, class ... ParamTypes >
 class AlgorithmAbstractionBase : public ResultClassSelector < ReturnType >::OutputClass {
 protected: