Index: orxonox/branches/buerli/aclocal.m4
===================================================================
--- orxonox/branches/buerli/aclocal.m4	(revision 2615)
+++ orxonox/branches/buerli/aclocal.m4	(revision 2617)
@@ -1,3 +1,3 @@
-# generated automatically by aclocal 1.7.9 -*- Autoconf -*-
+# generated automatically by aclocal 1.7.1 -*- Autoconf -*-
 
 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002
@@ -17,5 +17,5 @@
 # your package does certain things.  But this isn't really a big deal.
 
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+# Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002
 # Free Software Foundation, Inc.
 
@@ -35,5 +35,12 @@
 # 02111-1307, USA.
 
-# serial 10
+# serial 8
+
+# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
+# written in clear, in which case automake, when reading aclocal.m4,
+# will think it sees a *use*, and therefore will trigger all it's
+# C support machinery.  Also note that it means that autoscan, seeing
+# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
+
 
 AC_PREREQ([2.54])
@@ -80,6 +87,6 @@
  AC_SUBST([VERSION], [$2])],
 [_AM_SET_OPTIONS([$1])dnl
- AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
- AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
+ AC_SUBST([PACKAGE], [AC_PACKAGE_TARNAME])dnl
+ AC_SUBST([VERSION], [AC_PACKAGE_VERSION])])dnl
 
 _AM_IF_OPTION([no-define],,
@@ -102,5 +109,4 @@
 AC_REQUIRE([AC_PROG_AWK])dnl
 AC_REQUIRE([AC_PROG_MAKE_SET])dnl
-AC_REQUIRE([AM_SET_LEADING_DOT])dnl
 
 _AM_IF_OPTION([no-dependencies],,
@@ -125,14 +131,5 @@
 # our stamp files there.
 AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
-[# Compute $1's index in $config_headers.
-_am_stamp_count=1
-for _am_header in $config_headers :; do
-  case $_am_header in
-    $1 | $1:* )
-      break ;;
-    * )
-      _am_stamp_count=`expr $_am_stamp_count + 1` ;;
-  esac
-done
+[_am_stamp_count=`expr ${_am_stamp_count-0} + 1`
 echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
 
@@ -164,5 +161,5 @@
 # This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-	 [AM_AUTOMAKE_VERSION([1.7.9])])
+	 [AM_AUTOMAKE_VERSION([1.7.1])])
 
 # Helper functions for option handling.                    -*- Autoconf -*-
@@ -450,40 +447,7 @@
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-#                                                          -*- Autoconf -*-
-# Copyright (C) 2003  Free Software Foundation, Inc.
-
-# 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.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# serial 1
-
-# Check whether the underlying file-system supports filenames
-# with a leading dot.  For instance MS-DOS doesn't.
-AC_DEFUN([AM_SET_LEADING_DOT],
-[rm -rf .tst 2>/dev/null
-mkdir .tst 2>/dev/null
-if test -d .tst; then
-  am__leading_dot=.
-else
-  am__leading_dot=_
-fi
-rmdir .tst 2>/dev/null
-AC_SUBST([am__leading_dot])])
-
-# serial 5						-*- Autoconf -*-
-
-# Copyright (C) 1999, 2000, 2001, 2002, 2003  Free Software Foundation, Inc.
+# serial 4						-*- Autoconf -*-
+
+# Copyright 1999, 2000, 2001 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
@@ -546,11 +510,4 @@
   cp "$am_depcomp" conftest.dir
   cd conftest.dir
-  # We will build objects and dependencies in a subdirectory because
-  # it helps to detect inapplicable dependency modes.  For instance
-  # both Tru64's cc and ICC support -MD to output dependencies as a
-  # side effect of compilation, but ICC will put the dependencies in
-  # the current directory while Tru64 will put them in the object
-  # directory.
-  mkdir sub
 
   am_cv_$1_dependencies_compiler_type=none
@@ -559,17 +516,10 @@
   fi
   for depmode in $am_compiler_list; do
-    # Setup a source with many dependencies, because some compilers
-    # like to wrap large dependency lists on column 80 (with \), and
-    # we should not choose a depcomp mode which is confused by this.
-    #
     # We need to recreate these files for each test, as the compiler may
     # overwrite some of them when testing with obscure command lines.
     # This happens at least with the AIX C compiler.
-    : > sub/conftest.c
-    for i in 1 2 3 4 5 6; do
-      echo '#include "conftst'$i'.h"' >> sub/conftest.c
-      : > sub/conftst$i.h
-    done
-    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+    echo '#include "conftest.h"' > conftest.c
+    echo 'int i;' > conftest.h
+    echo "${am__include} ${am__quote}conftest.Po${am__quote}" > confmf
 
     case $depmode in
@@ -589,18 +539,11 @@
     # handle `-M -o', and we need to detect this.
     if depmode=$depmode \
-       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
-       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
-       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
-         >/dev/null 2>conftest.err &&
-       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
-       grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+       source=conftest.c object=conftest.o \
+       depfile=conftest.Po tmpdepfile=conftest.TPo \
+       $SHELL ./depcomp $depcc -c -o conftest.o conftest.c >/dev/null 2>&1 &&
+       grep conftest.h conftest.Po > /dev/null 2>&1 &&
        ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
-      # icc doesn't choke on unknown options, it will just issue warnings
-      # (even with -Werror).  So we grep stderr for any message
-      # that says an option was ignored.
-      if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else
-        am_cv_$1_dependencies_compiler_type=$depmode
-        break
-      fi
+      am_cv_$1_dependencies_compiler_type=$depmode
+      break
     fi
   done
@@ -624,6 +567,14 @@
 # This macro is AC_REQUIREd in _AM_DEPENDENCIES
 AC_DEFUN([AM_SET_DEPDIR],
-[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
+[rm -f .deps 2>/dev/null
+mkdir .deps 2>/dev/null
+if test -d .deps; then
+  DEPDIR=.deps
+else
+  # MS-DOS does not allow filenames that begin with a dot.
+  DEPDIR=_deps
+fi
+rmdir .deps 2>/dev/null
+AC_SUBST([DEPDIR])
 ])
 
@@ -729,5 +680,5 @@
 # Check to see how 'make' treats includes.	-*- Autoconf -*-
 
-# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2002 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
@@ -754,7 +705,6 @@
 [am_make=${MAKE-make}
 cat > confinc << 'END'
-am__doit:
+doit:
 	@echo done
-.PHONY: am__doit
 END
 # If we don't find an include directive, just comment out the code.
@@ -784,7 +734,7 @@
    fi
 fi
-AC_SUBST([am__include])
-AC_SUBST([am__quote])
-AC_MSG_RESULT([$_am_result])
+AC_SUBST(am__include)
+AC_SUBST(am__quote)
+AC_MSG_RESULT($_am_result)
 rm -f confinc confmf
 ])
Index: orxonox/branches/buerli/configure.ac
===================================================================
--- orxonox/branches/buerli/configure.ac	(revision 2615)
+++ orxonox/branches/buerli/configure.ac	(revision 2617)
@@ -2,5 +2,5 @@
 # Process this file with autoconf to produce a configure script.
 
-AC_PREREQ(2.59)
+AC_PREREQ(2.56)
 AC_INIT(orxonox, 0.1-pre-alpha, orxonox-dev@mail.datacore.ch)
 AM_INIT_AUTOMAKE
Index: orxonox/branches/buerli/console/Makefile.in
===================================================================
--- orxonox/branches/buerli/console/Makefile.in	(revision 2615)
+++ orxonox/branches/buerli/console/Makefile.in	(revision 2617)
@@ -1,6 +1,6 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.7.1 from Makefile.am.
 # @configure_input@
 
-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
 # Free Software Foundation, Inc.
 # This Makefile.in is free software; the Free Software Foundation
@@ -90,5 +90,4 @@
 am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
 am__include = @am__include@
-am__leading_dot = @am__leading_dot@
 am__quote = @am__quote@
 bindir = @bindir@
@@ -118,5 +117,4 @@
 noinst_HEADERS = orxonox_console.h orxonox_console_entry.h orxonox_console_log.h
 subdir = console
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
 CONFIG_HEADER = $(top_builddir)/config.h
@@ -146,5 +144,5 @@
 HEADERS = $(noinst_HEADERS)
 
-DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.in Makefile.am
+DIST_COMMON = $(noinst_HEADERS) Makefile.am Makefile.in
 SOURCES = $(console_SOURCES)
 
@@ -196,8 +194,11 @@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/orxonox_console_log.Po@am__quote@
 
+distclean-depend:
+	-rm -rf ./$(DEPDIR)
+
 .cc.o:
 @am__fastdepCXX_TRUE@	if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
 @am__fastdepCXX_TRUE@	  -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
-@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+@am__fastdepCXX_TRUE@	then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
 @am__fastdepCXX_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
 @am__fastdepCXX_TRUE@	fi
@@ -209,6 +210,6 @@
 .cc.obj:
 @am__fastdepCXX_TRUE@	if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
-@am__fastdepCXX_TRUE@	  -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
-@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+@am__fastdepCXX_TRUE@	  -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'`; \
+@am__fastdepCXX_TRUE@	then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
 @am__fastdepCXX_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
 @am__fastdepCXX_TRUE@	fi
@@ -216,5 +217,5 @@
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@	depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@	$(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCXX_FALSE@	$(CXXCOMPILE) -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`
+@am__fastdepCXX_FALSE@	$(CXXCOMPILE) -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'`
 uninstall-info-am:
 
@@ -310,4 +311,5 @@
 installdirs:
 	$(mkinstalldirs) $(DESTDIR)$(bindir)
+
 install: install-am
 install-exec: install-exec-am
@@ -321,5 +323,5 @@
 install-strip:
 	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	  INSTALL_STRIP_FLAG=-s \
 	  `test -z '$(STRIP)' || \
 	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
@@ -329,5 +331,5 @@
 
 distclean-generic:
-	-rm -f $(CONFIG_CLEAN_FILES)
+	-rm -f Makefile $(CONFIG_CLEAN_FILES)
 
 maintainer-clean-generic:
@@ -339,8 +341,7 @@
 
 distclean: distclean-am
-	-rm -rf ./$(DEPDIR)
-	-rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
-	distclean-tags
+
+distclean-am: clean-am distclean-compile distclean-depend \
+	distclean-generic distclean-tags
 
 dvi: dvi-am
@@ -363,6 +364,5 @@
 
 maintainer-clean: maintainer-clean-am
-	-rm -rf ./$(DEPDIR)
-	-rm -f Makefile
+
 maintainer-clean-am: distclean-am maintainer-clean-generic
 
@@ -383,9 +383,9 @@
 .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
 	clean-generic ctags distclean distclean-compile \
-	distclean-generic distclean-tags distdir dvi dvi-am info \
-	info-am install install-am install-binPROGRAMS install-data \
-	install-data-am install-exec install-exec-am install-info \
-	install-info-am install-man install-strip installcheck \
-	installcheck-am installdirs maintainer-clean \
+	distclean-depend distclean-generic distclean-tags distdir dvi \
+	dvi-am info info-am install install-am install-binPROGRAMS \
+	install-data install-data-am install-exec install-exec-am \
+	install-info install-info-am install-man install-strip \
+	installcheck installcheck-am installdirs maintainer-clean \
 	maintainer-clean-generic mostlyclean mostlyclean-compile \
 	mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
Index: orxonox/branches/buerli/gui/Makefile.in
===================================================================
--- orxonox/branches/buerli/gui/Makefile.in	(revision 2615)
+++ orxonox/branches/buerli/gui/Makefile.in	(revision 2617)
@@ -1,6 +1,6 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.7.1 from Makefile.am.
 # @configure_input@
 
-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
 # Free Software Foundation, Inc.
 # This Makefile.in is free software; the Free Software Foundation
@@ -90,5 +90,4 @@
 am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
 am__include = @am__include@
-am__leading_dot = @am__leading_dot@
 am__quote = @am__quote@
 bindir = @bindir@
@@ -129,5 +128,4 @@
 EXTRA_DIST = rc banner.xpm
 subdir = gui
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
 CONFIG_HEADER = $(top_builddir)/config.h
@@ -161,5 +159,5 @@
 HEADERS = $(noinst_HEADERS)
 
-DIST_COMMON = $(noinst_HEADERS) $(srcdir)/Makefile.in Makefile.am
+DIST_COMMON = $(noinst_HEADERS) Makefile.am Makefile.in
 SOURCES = $(gui_SOURCES)
 
@@ -214,8 +212,11 @@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/orxonox_gui_video.Po@am__quote@
 
+distclean-depend:
+	-rm -rf ./$(DEPDIR)
+
 .cc.o:
 @am__fastdepCXX_TRUE@	if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
 @am__fastdepCXX_TRUE@	  -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
-@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+@am__fastdepCXX_TRUE@	then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
 @am__fastdepCXX_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
 @am__fastdepCXX_TRUE@	fi
@@ -227,6 +228,6 @@
 .cc.obj:
 @am__fastdepCXX_TRUE@	if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
-@am__fastdepCXX_TRUE@	  -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
-@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+@am__fastdepCXX_TRUE@	  -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'`; \
+@am__fastdepCXX_TRUE@	then mv "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
 @am__fastdepCXX_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
 @am__fastdepCXX_TRUE@	fi
@@ -234,5 +235,5 @@
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@	depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@	$(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCXX_FALSE@	$(CXXCOMPILE) -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`
+@am__fastdepCXX_FALSE@	$(CXXCOMPILE) -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'`
 uninstall-info-am:
 
@@ -328,4 +329,5 @@
 installdirs:
 	$(mkinstalldirs) $(DESTDIR)$(bindir)
+
 install: install-am
 install-exec: install-exec-am
@@ -339,5 +341,5 @@
 install-strip:
 	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	  INSTALL_STRIP_FLAG=-s \
 	  `test -z '$(STRIP)' || \
 	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
@@ -347,5 +349,5 @@
 
 distclean-generic:
-	-rm -f $(CONFIG_CLEAN_FILES)
+	-rm -f Makefile $(CONFIG_CLEAN_FILES)
 
 maintainer-clean-generic:
@@ -357,8 +359,7 @@
 
 distclean: distclean-am
-	-rm -rf ./$(DEPDIR)
-	-rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
-	distclean-tags
+
+distclean-am: clean-am distclean-compile distclean-depend \
+	distclean-generic distclean-tags
 
 dvi: dvi-am
@@ -381,6 +382,5 @@
 
 maintainer-clean: maintainer-clean-am
-	-rm -rf ./$(DEPDIR)
-	-rm -f Makefile
+
 maintainer-clean-am: distclean-am maintainer-clean-generic
 
@@ -401,9 +401,9 @@
 .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
 	clean-generic ctags distclean distclean-compile \
-	distclean-generic distclean-tags distdir dvi dvi-am info \
-	info-am install install-am install-binPROGRAMS install-data \
-	install-data-am install-exec install-exec-am install-info \
-	install-info-am install-man install-strip installcheck \
-	installcheck-am installdirs maintainer-clean \
+	distclean-depend distclean-generic distclean-tags distdir dvi \
+	dvi-am info info-am install install-am install-binPROGRAMS \
+	install-data install-data-am install-exec install-exec-am \
+	install-info install-info-am install-man install-strip \
+	installcheck installcheck-am installdirs maintainer-clean \
 	maintainer-clean-generic mostlyclean mostlyclean-compile \
 	mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
Index: orxonox/branches/buerli/src/IPhys.cc
===================================================================
--- orxonox/branches/buerli/src/IPhys.cc	(revision 2617)
+++ orxonox/branches/buerli/src/IPhys.cc	(revision 2617)
@@ -0,0 +1,115 @@
+/* 
+   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: Adrian Buerli
+*/
+
+#include <iostream>
+
+#include "IPhys.h"
+#include "stdincl.h"
+
+using namespace std;
+
+IPhys::IPhys ()
+{
+}
+
+IPhys::~IPhys ()
+{
+}
+
+// Simulation
+void IPhys::simIterate(Uint32 deltaT){
+	switch (behav) {
+	case B_MASS_POINT:
+	break;
+ 	case B_RIGID_BODY:
+	break;
+ 	case B_ELAST_BODY:
+	break;
+ 	case I_SPRING_LINEAR:
+	break;
+ 	case I_DMPSPR_LINEAR:
+	break;
+ 	case I_SPRING_MOMENTUM:
+	break;
+ 	case I_DMPSPR_MOMENTUM:
+	break;
+ 	case F_GRAVITY:
+	break;
+ 	case F_HOVER:
+	break;
+ 	case F_SHOCKWAVE:
+	break;
+ 	case F_BEAM:
+	break;
+ 	default:;
+ 	}
+};
+
+	
+// Exertion of external forces
+void IPhys::exertForce( Vector force ){
+	resForce = resForce + force;
+};
+
+void IPhys::exertMomentum( Vector Momentum ){
+	resMomentum = resMomentum + Momentum;
+};
+
+// set attributes	
+void IPhys::setBehaviour( IPHYS_BEHAVIOUR desiredBehaviour ){
+	behav = desiredBehaviour;
+};
+
+void IPhys::setBody( float mass ){
+	m = mass;
+};
+
+void IPhys::setBody( float mass, float inertMoment[] ){
+	m = mass;
+ 	//inertM = inertMoment;
+};
+
+void IPhys::setBody( float mass, float inertMoment[], float YoungsModulus ){
+	m = mass;
+ 	//inertM = inertMoment;
+ 	YE = YoungsModulus;
+};
+	
+void IPhys::setMounts( WorldEntity *point1, WorldEntity *point2 ){
+	mounts[0] = point1;
+	mounts[1] = point2;
+};
+
+void IPhys::setSpring( float neutralLength, float springConst ){
+	spNeutralL = neutralLength;
+	spConst = springConst;
+};
+
+void IPhys::setSpring( float neutralLength, float springConst, float damping ){
+	spNeutralL = neutralLength;
+	spConst = springConst;
+	dmp = damping;
+};
+
+void IPhys::setSpring( Quaternion neutralOrientation, float springConst ){
+	mspNeutralOri = neutralOrientation;
+	spConst = springConst;
+};
+void IPhys::setSpring( Quaternion neutralOrientation, float springConst, float damping ){
+	mspNeutralOri = neutralOrientation;
+	spConst = springConst;
+	dmp = damping;
+};
+
+   
Index: orxonox/branches/buerli/src/IPhys.h
===================================================================
--- orxonox/branches/buerli/src/IPhys.h	(revision 2617)
+++ orxonox/branches/buerli/src/IPhys.h	(revision 2617)
@@ -0,0 +1,90 @@
+/*! 
+    \file IPhys.h
+    \brief Interface to physics engine
+*/
+
+#ifndef IPHYS_H
+#define IPHYS_H
+
+#include "stdincl.h"
+
+//! Avaiable types of behaviour for a physical object. Mainly determines which
+//! attributes are used and what calculations are done.
+enum IPHYS_BEHAVIOUR {
+	//	Bodies
+ 	B_MASS_POINT,			//!< Body: No orientation, just a inf. small mass
+ 	B_RIGID_BODY,			//!< Body: Rigid Body, lossless bumping
+ 	B_ELAST_BODY,			//!< Body: Rigid, lossy bumping
+ 	//	Interactions
+  	I_SPRING_LINEAR,		//!< Interaction: Linear, ideal spring
+  	I_DMPSPR_LINEAR,		//!< Interaction: Linear, damped spring
+	I_SPRING_MOMENTUM, 		//!< Interaction: Momentum spring, ideal
+	I_DMPSPR_MOMENTUM,		//!< Interaction: Momentum spring, damped
+	//  Fields
+	F_GRAVITY,				//!< Field: Gravity field in some direction
+	F_HOVER,				//!< Field: Something like antigravity (hover drive)
+	F_SHOCKWAVE,			//!< Field: Cylindrical Shockwave
+	F_BEAM					//!< Field: Electromagnetic beam (exerts pressure on intersecting objects)
+};
+
+class IPhys
+{
+  public:
+	IPhys ();
+	~IPhys ();
+		
+	// Simulation
+	void simIterate(Uint32 deltaT);
+	
+	// Exertion of external forces
+	void exertForce( Vector force );
+	void exertMomentum( Vector Momentum );
+
+	// set attributes	
+	void setBehaviour( IPHYS_BEHAVIOUR desiredBehaviour );
+	void setBody( float mass );
+	void setBody( float mass, float inertMoment[] );
+	void setBody( float mass, float inertMoment[], float YoungsModulus );
+	
+	void setMounts( WorldEntity *point1, WorldEntity *point2 );
+	void setSpring( float neutralLength, float springConst );
+	void setSpring( float neutralLength, float springConst, float damping );
+	void setSpring( Quaternion neutralOrientation, float springConst );
+	void setSpring( Quaternion neutralOrientation, float springConst, float damping );
+
+	//void setInfluence
+	//void setGravity
+	
+	// get attributes	
+	Placement getPlacement() ;
+	float getMass();
+	float* getInertMoment();
+
+		
+  private:
+	IPHYS_BEHAVIOUR behav;		//!< Behaviour
+	Vector pos;					//!< Position
+	Quaternion ori;				//!< Orientation
+	
+	Vector vel;					//!< Velocity
+	Quaternion rot;				//!< Rotation
+	
+	Vector resForce;			//!< Resulting force
+	Vector resMomentum;			//!< Resulting Momentum
+	
+	// Attributes for bodies
+    float m;					//!< Mass
+    float inertM[3,3];			//!< Inertial Moment Matrix
+    float YE;					//!< Youngs Modulus E (Elasticity)
+    
+    // Attributes for interactions
+    WorldEntity* mounts[2];		//!< Mounts; meaning depends on obj. behaviour
+    float spNeutralL;			//!< Spring neutral length
+    float spConst;				//!< Spring constant k
+    float dmp;					//!< Damping  	
+    Quaternion mspNeutralOri;	//!< Momentum spring neutral orientation
+    
+	
+};
+
+#endif
Index: orxonox/branches/buerli/src/Makefile.am
===================================================================
--- orxonox/branches/buerli/src/Makefile.am	(revision 2615)
+++ orxonox/branches/buerli/src/Makefile.am	(revision 2617)
@@ -6,7 +6,7 @@
 
 bin_PROGRAMS=orxonox
-orxonox_SOURCES=orxonox.cc world.cc player.cc data_tank.cc world_entity.cc vector.cc camera.cc collision.cc command_node.cc ini_parser.cc keynames.cc track.cc base_entity.cc 
+orxonox_SOURCES=orxonox.cc world.cc player.cc data_tank.cc world_entity.cc vector.cc camera.cc collision.cc command_node.cc ini_parser.cc keynames.cc track.cc base_entity.cc IPhys.cc 
 
-noinst_HEADERS=ability.h data_tank.h npc.h stdincl.h ai.h environment.h orxonox.h synchronisable.h base_entity.h error.h player.h track.h camera.h ini_parser.h power_up.h vector.h collision.h keynames.h proto_class.h world.h command_node.h list.h shoot_laser.h world_entity.h coordinates.h message_structures.h shoot_rocket.h
+noinst_HEADERS=ability.h data_tank.h npc.h stdincl.h ai.h environment.h orxonox.h synchronisable.h base_entity.h error.h player.h track.h camera.h ini_parser.h power_up.h vector.h collision.h keynames.h proto_class.h world.h command_node.h list.h shoot_laser.h world_entity.h coordinates.h message_structures.h shoot_rocket.h IPhys.h
 
 
