Index: anches/new_class_id/src/lib/util/executor/executor.cc
===================================================================
--- /branches/new_class_id/src/lib/util/executor/executor.cc	(revision 9751)
+++ 	(revision )
@@ -1,31 +1,0 @@
-/*
-   orxonox - the future of 3D-vertical-scrollers
-
-   Copyright (C) 2004 orx
-
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2, or (at your option)
-   any later version.
-
-   ### File Specific:
-   main-programmer: Benjamin Grauer
-   co-programmer: ...
-*/
-
-//#define DEBUG_SPECIAL_MODULE DEBUG_MODULE_
-
-#include "executor.h"
-
-/** @returns the Type of an Argument taken by the Executor in this case MT_BOOL */
-template<> MT_Type ExecutorParamType<bool>() { return MT_BOOL; };
-/** @returns the Type of an Argument taken by the Executor in this case MT_INT*/
-template<> MT_Type ExecutorParamType<int>() { return MT_INT; };
-/** @returns the Type of an Argument taken by the Executor in this case MT_UINT*/
-template<> MT_Type ExecutorParamType<unsigned int>() { return MT_UINT; };
-/** @returns the Type of an Argument taken by the Executor in this case MT_FLOAT*/
-template<> MT_Type ExecutorParamType<float>() { return MT_FLOAT; };
-/** @returns the Type of an Argument taken by the Executor in this case MT_CHAR*/
-template<> MT_Type ExecutorParamType<char>() { return MT_CHAR; };
-/** @returns the Type of an Argument taken by the Executor in this case MT_STRING*/
-template<> MT_Type ExecutorParamType<const std::string&>() { return MT_STRING; };
Index: /branches/new_class_id/src/lib/util/executor/executor.h
===================================================================
--- /branches/new_class_id/src/lib/util/executor/executor.h	(revision 9751)
+++ /branches/new_class_id/src/lib/util/executor/executor.h	(revision 9752)
@@ -17,11 +17,17 @@
 
 /** @returns the Type of an Argument taken by the Executor */
-template<typename type> MT_Type ExecutorParamType() { return MT_EXT1; };
-template<> MT_Type ExecutorParamType<bool>();
-template<> MT_Type ExecutorParamType<int>();
-template<> MT_Type ExecutorParamType<unsigned int>();
-template<> MT_Type ExecutorParamType<float>();
-template<> MT_Type ExecutorParamType<char>();
-template<> MT_Type ExecutorParamType<const std::string&>();
+template<typename type> inline MT_Type ExecutorParamType() { return MT_EXT1; };
+/** @returns the Type of an Argument taken by the Executor in this case MT_BOOL */
+template<> inline MT_Type ExecutorParamType<bool>() { return MT_BOOL; };
+/** @returns the Type of an Argument taken by the Executor in this case MT_INT*/
+template<> inline MT_Type ExecutorParamType<int>() { return MT_INT; };
+/** @returns the Type of an Argument taken by the Executor in this case MT_UINT*/
+template<> inline MT_Type ExecutorParamType<unsigned int>() { return MT_UINT; };
+/** @returns the Type of an Argument taken by the Executor in this case MT_FLOAT*/
+template<> inline MT_Type ExecutorParamType<float>() { return MT_FLOAT; };
+/** @returns the Type of an Argument taken by the Executor in this case MT_CHAR*/
+template<> inline MT_Type ExecutorParamType<char>() { return MT_CHAR; };
+/** @returns the Type of an Argument taken by the Executor in this case MT_STRING*/
+template<> inline MT_Type ExecutorParamType<const std::string&>() { return MT_STRING; };
 
 ////////////////
Index: /branches/new_class_id/src/lib/util/executor/executor_lua_state.cc
===================================================================
--- /branches/new_class_id/src/lib/util/executor/executor_lua_state.cc	(revision 9751)
+++ /branches/new_class_id/src/lib/util/executor/executor_lua_state.cc	(revision 9752)
@@ -22,97 +22,8 @@
 std::string temp[7];
 
-/**
- * @brief Converts a lua_State into any type.
- * @param state the State to get the value from.
- * @param index the position inside of the lua_State to get the value from.
- * @returns The value if found.
- */
-template<typename type> type fromLua(lua_State* state, int index) { type *obj = Lunar<type>::check(state, 1); lua_remove(state, 1); return obj;};
-/**
- * @brief Converts a lua_State into any type.
- * @param state the State to get the value from.
- * @param index the position inside of the lua_State to get the value from.
- * @returns The value if found.
- */
-template<> bool fromLua<bool>(lua_State* state, int index) { return lua_toboolean(state, index); };
-/**
- * @brief Converts a lua_State into any type.
- * @param state the State to get the value from.
- * @param index the position inside of the lua_State to get the value from.
- * @returns The value if found.
- */
-template<> int fromLua<int>(lua_State* state, int index) { return (int)lua_tonumber(state, index); };
-/**
- * @brief Converts a lua_State into any type.
- * @param state the State to get the value from.
- * @param index the position inside of the lua_State to get the value from.
- * @returns The value if found.
- */
-template<> unsigned int fromLua<unsigned int>(lua_State* state, int index) { return (unsigned int)lua_tonumber(state, index); };
-/**
- * @brief Converts a lua_State into any type.
- * @param state the State to get the value from.
- * @param index the position inside of the lua_State to get the value from.
- * @returns The value if found.
- */
-template<> float fromLua<float>(lua_State* state, int index) { return (float)lua_tonumber(state, index); };
-/**
- * @brief Converts a lua_State into any type.
- * @param state the State to get the value from.
- * @param index the position inside of the lua_State to get the value from.
- * @returns The value if found.
- */
-template<> char fromLua<char>(lua_State* state, int index) { return (char)lua_tonumber(state, index); };
-/**
- * @brief Converts a lua_State into any type.
- * @param state the State to get the value from.
- * @param index the position inside of the lua_State to get the value from.
- * @returns The value if found.
- */
-template<> const std::string& fromLua<const std::string&>(lua_State* state, int index) { temp[index] = lua_tostring(state, index); return temp[index]; };
 
+template<typename type> inline type fromLua(lua_State* state, int index) { type *obj = Lunar<type>::check(state, 1); lua_remove(state, 1); return obj; };
 
-
-
-/**
- * @brief writes a value into a lua_State.
- * @param state the state to write into.
- * @param value the Value of type to write into the State.
- */
 template<typename type> void toLua(lua_State* state, type value) { Lunar<type>::push(state, value, false); };
-/**
- * @brief writes a value into a lua_State.
- * @param state the state to write into.
- * @param value the Value of type to write into the State.
- */
-template<> void toLua<bool>(lua_State* state, bool value) { lua_pushboolean(state, (int) value); };
-/**
- * @brief writes a value into a lua_State.
- * @param state the state to write into.
- * @param value the Value of type to write into the State.
- */
-template<> void toLua<int>(lua_State* state, int value)  { lua_pushnumber(state, (lua_Number) value); };
-/**
- * @brief writes a value into a lua_State.
- * @param state the state to write into.
- * @param value the Value of type to write into the State.
- */
-template<> void toLua<unsigned int>(lua_State* state, unsigned int value){ lua_pushnumber(state, (lua_Number) value); };
-/**
- * @brief writes a value into a lua_State.
- * @param state the state to write into.
- * @param value the Value of type to write into the State.
- */
-template<> void toLua<float>(lua_State* state, float value) { lua_pushnumber(state, (lua_Number) value); };
-/**
- * @brief writes a value into a lua_State.
- * @param state the state to write into.
- * @param value the Value of type to write into the State.
- */
-template<> void toLua<char>(lua_State* state, char value) { lua_pushnumber(state, (lua_Number) value); };
-/**
- * @brief writes a value into a lua_State.
- * @param state the state to write into.
- * @param value the Value of type to write into the State.
- */
-template<> void toLua<const std::string&>(lua_State* state, const std::string& value) { lua_pushstring (state, value.c_str()); }
+/** @see template<typename type> inline type fromLua(lua_State* state, int index) */
+template<> inline const std::string& fromLua<const std::string&>(lua_State* state, int index) { temp[index] = lua_tostring(state, index); return temp[index]; };
Index: /branches/new_class_id/src/lib/util/executor/executor_lua_state.h
===================================================================
--- /branches/new_class_id/src/lib/util/executor/executor_lua_state.h	(revision 9751)
+++ /branches/new_class_id/src/lib/util/executor/executor_lua_state.h	(revision 9752)
@@ -35,19 +35,43 @@
 #define FUNCTOR_CALL_TYPE lua_State*
 
+/**
+ * @brief Converts a lua_State into any type.
+ * @param state the State to get the value from.
+ * @param index the position inside of the lua_State to get the value from.
+ * @returns The value if found.
+ */
 template<typename type> type fromLua(lua_State* state, int index);
-template<> bool fromLua<bool>(lua_State* state, int index);
-template<> int fromLua<int>(lua_State* state, int index);
-template<> unsigned int fromLua<unsigned int>(lua_State* state, int index);
-template<> float fromLua<float>(lua_State* state, int index);
-template<> char fromLua<char>(lua_State* state, int index);
-template<> const std::string& fromLua<const std::string&>(lua_State* state, int index);
+/** @see template<typename type> inline type fromLua(lua_State* state, int index) */
+template<> inline bool fromLua<bool>(lua_State* state, int index) { return lua_toboolean(state, index); };
+/** @see template<typename type> inline type fromLua(lua_State* state, int index) */
+template<> inline int fromLua<int>(lua_State* state, int index) { return (int)lua_tonumber(state, index); };
+/** @see template<typename type> inline type fromLua(lua_State* state, int index) */
+template<> inline unsigned int fromLua<unsigned int>(lua_State* state, int index) { return (unsigned int)lua_tonumber(state, index); };
+/** @see template<typename type> inline type fromLua(lua_State* state, int index) */
+template<> inline float fromLua<float>(lua_State* state, int index) { return (float)lua_tonumber(state, index); };
+/** @see template<typename type> inline type fromLua(lua_State* state, int index) */
+template<> inline char fromLua<char>(lua_State* state, int index) { return (char)lua_tonumber(state, index); };
 
+
+/**
+ * @brief writes a value into a lua_State.
+ * @param state the state to write into.
+ * @param value the Value of type to write into the State.
+ */
 template<typename type> void toLua(lua_State* state, type value);
-template<> void toLua<bool>(lua_State* state, bool value);
-template<> void toLua<int>(lua_State* state, int value);
-template<> void toLua<unsigned int>(lua_State* state, unsigned int value);
-template<> void toLua<float>(lua_State* state, float value);
-template<> void toLua<char>(lua_State* state, char value);
-template<> void toLua<const std::string&>(lua_State* state, const std::string& value);
+/** @see template<typename type> void toLua(lua_State* state, type value) */
+template<> inline void toLua<bool>(lua_State* state, bool value) { lua_pushboolean(state, (int) value); };
+/** @see template<typename type> void toLua(lua_State* state, type value) */
+template<> inline void toLua<int>(lua_State* state, int value)  { lua_pushnumber(state, (lua_Number) value); };
+/** @see template<typename type> void toLua(lua_State* state, type value) */
+template<> inline void toLua<unsigned int>(lua_State* state, unsigned int value){ lua_pushnumber(state, (lua_Number) value); };
+/** @see template<typename type> void toLua(lua_State* state, type value) */
+template<> inline void toLua<float>(lua_State* state, float value) { lua_pushnumber(state, (lua_Number) value); };
+/** @see template<typename type> void toLua(lua_State* state, type value) */
+template<> inline void toLua<char>(lua_State* state, char value) { lua_pushnumber(state, (lua_Number) value); };
+/** @see template<typename type> void toLua(lua_State* state, type value) */
+template<> inline void toLua<const std::string&>(lua_State* state, const std::string& value) { lua_pushstring (state, value.c_str()); }
+
+
 
 //! A Class, that evaluates a lua_State and converts indices into different Types.
