Index: code/branches/core2/src/util/Math.h
===================================================================
--- code/branches/core2/src/util/Math.h	(revision 931)
+++ code/branches/core2/src/util/Math.h	(revision 933)
@@ -26,6 +26,6 @@
  */
 
-#ifndef _Math_H__
-#define _Math_H__
+#ifndef _Util_Math_H__
+#define _Util_Math_H__
 
 #include <ostream>
@@ -146,3 +146,3 @@
 }
 
-#endif /* _Math_H__ */
+#endif /* _Util_Math_H__ */
Index: code/branches/core2/src/util/MultiTypeMath.cc
===================================================================
--- code/branches/core2/src/util/MultiTypeMath.cc	(revision 931)
+++ code/branches/core2/src/util/MultiTypeMath.cc	(revision 933)
@@ -88,6 +88,4 @@
 }
 
-MultiTypeMath::operator orxonox::BaseObject*() const
-{ return (this->type_ == MT_void) ? (orxonox::BaseObject*)this->value_.void_ : (orxonox::BaseObject*)ConvertValueAndReturn<MultiTypeMath, void*>(*this); }
 MultiTypeMath::operator void*() const
 { return (this->type_ == MT_void) ? this->value_.void_ : ConvertValueAndReturn<MultiTypeMath, void*>(*this); }
Index: code/branches/core2/src/util/MultiTypeMath.h
===================================================================
--- code/branches/core2/src/util/MultiTypeMath.h	(revision 931)
+++ code/branches/core2/src/util/MultiTypeMath.h	(revision 933)
@@ -91,5 +91,4 @@
         bool operator!=(const MultiTypeMath& mtm) const;
 
-        virtual operator orxonox::BaseObject*()          const;
         virtual operator void*()                const;
         virtual operator int()                  const;
Index: code/branches/core2/src/util/MultiTypePrimitive.cc
===================================================================
--- code/branches/core2/src/util/MultiTypePrimitive.cc	(revision 931)
+++ code/branches/core2/src/util/MultiTypePrimitive.cc	(revision 933)
@@ -134,6 +134,4 @@
 }
 
-MultiTypePrimitive::operator orxonox::BaseObject*() const
-{ return (this->type_ == MT_void) ? (orxonox::BaseObject*)this->value_.void_ : (orxonox::BaseObject*)ConvertValueAndReturn<MultiTypePrimitive, void*>(*this); }
 MultiTypePrimitive::operator void*() const
 { return (this->type_ == MT_void) ? this->value_.void_ : ConvertValueAndReturn<MultiTypePrimitive, void*>(*this); }
Index: code/branches/core2/src/util/MultiTypePrimitive.h
===================================================================
--- code/branches/core2/src/util/MultiTypePrimitive.h	(revision 931)
+++ code/branches/core2/src/util/MultiTypePrimitive.h	(revision 933)
@@ -105,5 +105,7 @@
         bool operator!=(const MultiTypePrimitive& mtp) const;
 
-        virtual operator orxonox::BaseObject*()    const;
+        template <class T>
+        operator T*()                     const
+        { return ((T*)this->value_.void_); }
         virtual operator void*()          const;
         virtual operator int()            const;
Index: code/branches/core2/src/util/MultiTypeString.cc
===================================================================
--- code/branches/core2/src/util/MultiTypeString.cc	(revision 931)
+++ code/branches/core2/src/util/MultiTypeString.cc	(revision 933)
@@ -65,6 +65,4 @@
 }
 
-MultiTypeString::operator orxonox::BaseObject*() const
-{ return (this->type_ == MT_void) ? (orxonox::BaseObject*)this->value_.void_ : (orxonox::BaseObject*)ConvertValueAndReturn<MultiTypeString, void*>(*this); }
 MultiTypeString::operator void*() const
 { return (this->type_ == MT_void) ? this->value_.void_ : ConvertValueAndReturn<MultiTypeString, void*>(*this); }
Index: code/branches/core2/src/util/MultiTypeString.h
===================================================================
--- code/branches/core2/src/util/MultiTypeString.h	(revision 931)
+++ code/branches/core2/src/util/MultiTypeString.h	(revision 933)
@@ -79,5 +79,4 @@
         bool operator!=(const MultiTypeString& mts) const;
 
-        virtual operator orxonox::BaseObject*() const;
         virtual operator void*()                const;
         virtual operator int()                  const;
Index: code/branches/core2/src/util/String.h
===================================================================
--- code/branches/core2/src/util/String.h	(revision 931)
+++ code/branches/core2/src/util/String.h	(revision 933)
@@ -26,6 +26,6 @@
  */
 
-#ifndef _String_H__
-#define _String_H__
+#ifndef _Util_String_H__
+#define _Util_String_H__
 
 #include <string>
@@ -144,3 +144,3 @@
 };
 
-#endif /* _String_H__ */
+#endif /* _Util_String_H__ */
