Index: code/trunk/src/util/Convert.h
===================================================================
--- code/trunk/src/util/Convert.h	(revision 2710)
+++ code/trunk/src/util/Convert.h	(revision 3196)
@@ -40,6 +40,4 @@
 #include <string>
 #include <sstream>
-#include <istream>
-#include <ostream>
 #include <typeinfo>
 
@@ -123,5 +121,5 @@
 namespace orxonox
 {
-    namespace
+    namespace detail
     {
         //! Little template that maps integers to entire types (Alexandrescu 2001)
@@ -139,5 +137,5 @@
     struct ConverterFallback
     {
-        static bool convert(ToType* output, const FromType& input)
+        FORCEINLINE static bool convert(ToType* output, const FromType& input)
         {
             COUT(2) << "Could not convert value of type " << typeid(FromType).name()
@@ -151,5 +149,5 @@
     struct ConverterFallback<FromType*, ToType*>
     {
-        static bool convert(ToType** output, FromType* const input)
+        FORCEINLINE static bool convert(ToType** output, FromType* const input)
         {
             ToType* temp = dynamic_cast<ToType*>(input);
@@ -174,5 +172,5 @@
 struct ConverterStringStream
 {
-    static bool convert(ToType* output, const FromType& input)
+    FORCEINLINE static bool convert(ToType* output, const FromType& input)
     {
         return orxonox::ConverterFallback<FromType, ToType>::convert(output, input);
@@ -188,5 +186,5 @@
 {
     template <class FromType>
-    inline bool operator <<(std::ostream& outstream,  const FromType& input)
+    FORCEINLINE bool operator <<(std::ostream& outstream,  const FromType& input)
     {
         std::string temp;
@@ -205,5 +203,5 @@
 struct ConverterStringStream<FromType, std::string>
 {
-    static bool convert(std::string* output, const FromType& input)
+    FORCEINLINE static bool convert(std::string* output, const FromType& input)
     {
         using namespace fallbackTemplates;
@@ -228,5 +226,5 @@
 {
     template <class ToType>
-    inline bool operator >>(std::istream& instream, ToType& output)
+    FORCEINLINE bool operator >>(std::istream& instream, ToType& output)
     {
         return orxonox::ConverterFallback<std::string, ToType>
@@ -239,5 +237,5 @@
 struct ConverterStringStream<std::string, ToType>
 {
-    static bool convert(ToType* output, const std::string& input)
+    FORCEINLINE static bool convert(ToType* output, const std::string& input)
     {
         using namespace fallbackTemplates;
@@ -262,5 +260,5 @@
     // implicit cast not possible, try stringstream conversion next
     template <class FromType, class ToType>
-    inline bool convertImplicitely(ToType* output, const FromType& input, orxonox::Int2Type<false>)
+    FORCEINLINE bool convertImplicitely(ToType* output, const FromType& input, detail::Int2Type<false>)
     {
         return ConverterStringStream<FromType, ToType>::convert(output, input);
@@ -269,5 +267,5 @@
     // We can cast implicitely
     template <class FromType, class ToType>
-    inline bool convertImplicitely(ToType* output, const FromType& input, orxonox::Int2Type<true>)
+    FORCEINLINE bool convertImplicitely(ToType* output, const FromType& input, detail::Int2Type<true>)
     {
         (*output) = static_cast<ToType>(input);
@@ -284,10 +282,10 @@
     struct ConverterExplicit
     {
-        static bool convert(ToType* output, const FromType& input)
+        FORCEINLINE static bool convert(ToType* output, const FromType& input)
         {
             // Try implict cast and probe first. If a simple cast is not possible, it will not compile
             // We therefore have to out source it into another template function
             const bool probe = ImplicitConversion<FromType, ToType>::exists;
-            return convertImplicitely(output, input, orxonox::Int2Type<probe>());
+            return convertImplicitely(output, input, detail::Int2Type<probe>());
         }
     };
@@ -306,14 +304,7 @@
     */
     template <class FromType, class ToType>
-    inline bool convertValue(ToType* output, const FromType& input)
+    FORCEINLINE bool convertValue(ToType* output, const FromType& input)
     {
         return ConverterExplicit<FromType, ToType>::convert(output, input);
-    }
-
-    // For compatibility reasons. The same, but with capital ConvertValue
-    template<class FromType, class ToType>
-    inline bool ConvertValue(ToType* output, const FromType& input)
-    {
-        return convertValue(output, input);
     }
 
@@ -331,5 +322,5 @@
     */
     template<class FromType, class ToType>
-    inline bool convertValue(ToType* output, const FromType& input, const ToType& fallback)
+    FORCEINLINE bool convertValue(ToType* output, const FromType& input, const ToType& fallback)
     {
         if (convertValue(output, input))
@@ -342,14 +333,7 @@
     }
 
-    // for compatibility reason. (capital 'c' in ConvertValue)
-    template<class FromType, class ToType>
-    inline bool ConvertValue(ToType* output, const FromType& input, const ToType& fallback)
-    {
-        return convertValue(output, input, fallback);
-    }
-
     // Directly returns the converted value, even if the conversion was not successful.
     template<class FromType, class ToType>
-    inline ToType getConvertedValue(const FromType& input)
+    FORCEINLINE ToType getConvertedValue(const FromType& input)
     {
         ToType output;
@@ -360,5 +344,5 @@
     // Directly returns the converted value, but uses the fallback on failure.
     template<class FromType, class ToType>
-    inline ToType getConvertedValue(const FromType& input, const ToType& fallback)
+    FORCEINLINE ToType getConvertedValue(const FromType& input, const ToType& fallback)
     {
         ToType output;
@@ -370,5 +354,5 @@
     // That means you can call it exactly like static_cast<ToType>(fromTypeValue).
     template<class ToType, class FromType>
-    inline ToType omni_cast(const FromType& input)
+    FORCEINLINE ToType multi_cast(const FromType& input)
     {
         ToType output;
@@ -379,14 +363,14 @@
     // convert to string Shortcut
     template <class FromType>
-    inline std::string convertToString(FromType value)
-    {
-      return getConvertedValue<FromType, std::string>(value);
+    FORCEINLINE std::string convertToString(FromType value)
+    {
+        return getConvertedValue<FromType, std::string>(value);
     }
 
     // convert from string Shortcut
     template <class ToType>
-    inline ToType convertFromString(std::string str)
-    {
-      return getConvertedValue<std::string, ToType>(str);
+    FORCEINLINE ToType convertFromString(std::string str)
+    {
+        return getConvertedValue<std::string, ToType>(str);
     }
 
@@ -399,5 +383,5 @@
     struct ConverterExplicit<const char*, ToType>
     {
-        static bool convert(ToType* output, const char* input)
+        FORCEINLINE static bool convert(ToType* output, const char* input)
         {
             return convertValue<std::string, ToType>(output, input);
@@ -409,5 +393,5 @@
     struct ConverterExplicit<char, std::string>
     {
-        static bool convert(std::string* output, const char input)
+        FORCEINLINE static bool convert(std::string* output, const char input)
         {
             *output = std::string(1, input);
@@ -418,5 +402,5 @@
     struct ConverterExplicit<unsigned char, std::string>
     {
-        static bool convert(std::string* output, const unsigned char input)
+        FORCEINLINE static bool convert(std::string* output, const unsigned char input)
         {
             *output = std::string(1, input);
@@ -427,5 +411,5 @@
     struct ConverterExplicit<std::string, char>
     {
-        static bool convert(char* output, const std::string input)
+        FORCEINLINE static bool convert(char* output, const std::string input)
         {
             if (input != "")
@@ -439,5 +423,5 @@
     struct ConverterExplicit<std::string, unsigned char>
     {
-        static bool convert(unsigned char* output, const std::string input)
+        FORCEINLINE static bool convert(unsigned char* output, const std::string input)
         {
             if (input != "")
@@ -454,5 +438,5 @@
     struct ConverterExplicit<bool, std::string>
     {
-        static bool convert(std::string* output, const bool& input)
+        FORCEINLINE static bool convert(std::string* output, const bool& input)
         {
             if (input)
