Index: code/branches/FICN/src/orxonox/OrxonoxPrereq.h
===================================================================
--- code/branches/FICN/src/orxonox/OrxonoxPrereq.h	(revision 610)
+++ 	(revision )
@@ -1,156 +1,0 @@
-/*
- *   ORXONOX - the hottest 3D action shooter ever to exist
- *
- *
- *   License notice:
- *
- *   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
- *   of the License, 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., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
- *
- *   Author:
- *      Reto Grieder, (C) 2007
- *   Co-authors:
- *      ...
- *
- */
-
-/**
- @file  OrxonoxPrereq.cc
- @brief Contains all the necessary forward declarations for all classes, structs and enums.
- */
-
-#ifndef ORXONOX_PREREQ_H
-#define ORXONOX_PREREQ_H
-
-// hack for the usleep/Sleep problem
-#ifdef WIN32
-#include <windows.h>
-#define usleep(x) Sleep((x)/1000)
-#else
-#include <unistd.h>
-#endif
-
-// classes that have not yet been put into a namespace
-class InputManager;
-class SignalHandler;
-class SpaceShipSteering;
-template <class T>
-class String2Number;
-
-namespace orxonox {
-  class Ambient;
-  class BaseEntity;
-  class BaseObject;
-  class Camera;
-  template <class T>
-  class ClassFactory;
-  class Entity;
-  class GraphicsEngine;
-  class Mesh;
-  class Model;
-  class NPC;
-  class OrxListener;
-  class Orxonox;
-  class SceneNode;
-  class Skybox;
-  class SpaceShip;
-  class SpaceshipSteeringObject;
-  class Tickable;
-  class TickFrameListener;
-  template <class T>
-  class Timer;
-  class TimerBase;
-  class TimerFrameListener;
-  class WorldEntity;
-  enum gameMode;
-
-  // from core library
-  class ArgReader;
-  class BaseFactory;
-  class BaseMetaObjectListElement;
-  template <class T>
-  class ClassFactory;
-  template <class T>
-  class ClassIdentifier;
-  class ConfigValueContainer;
-  class DebugLevel;
-  class Error;
-  class Factory;
-  class Identifier;
-  class IdentifierList;
-  class IdentifierListElement;
-  template <class T>
-  class Iterator;
-  class MetaObjectList;
-  template <class T>
-  class MetaObjectListElement;
-  template <class T>
-  class ObjectList;
-  template <class T>
-  class ObjectListElement;
-  class OrxonoxClass;
-  template <class T>
-  class SubclassIdentifier;
-}
-
-namespace audio {
-  class AudioBuffer;
-  class AudioManager;
-  class AudioSource;
-  class AudioStream;
-}
-
-namespace hud {
-  class HUD;
-}
-
-namespace loader {
-  class LevelLoader;
-}
-
-namespace network {
-  class Client;
-  class ClientConnection;
-  class ClientFrameListener;
-  class ClientInformation;
-  class ConnectionManager;
-  class GameStateClient;
-  class GameStateManager;
-  class PacketBuffer;
-  class PacketDecoder;
-  class PacketGenerator;
-  class Server;
-  class ServerFrameListener;
-  class Synchronisable;
-  struct ack;
-  struct chat;
-  struct classid;
-  struct ClientList;
-  struct GameState;
-  struct GameStateCompressed;
-  struct keyboard;
-  struct mouse;
-  struct PacketEnvelope;
-  struct QueueItem;
-  struct synchData;
-  struct synchronisableVariable;
-  enum packet_id;
-  enum variableType;
-}
-
-namespace particle {
-  class ParticleInterface;
-}
-
-#endif /* ORXONOX_PREREQ_H */
Index: code/branches/FICN/src/orxonox/graphicsEngine.cc
===================================================================
--- code/branches/FICN/src/orxonox/graphicsEngine.cc	(revision 610)
+++ 	(revision )
@@ -1,127 +1,0 @@
-/*
- *   ORXONOX - the hottest 3D action shooter ever to exist
- *
- *
- *   License notice:
- *
- *   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
- *   of the License, 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., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
- *
- *   Author:
- *      Benjamin Knecht <beni_at_orxonox.net>, (C) 2007
- *   Co-authors:
- *      ...
- *
- */
- /**
-    @file orxonox.cc
-    @brief Orxonox class
-  */
-
-#include "graphicsEngine.h"
-
-#include <OgreRoot.h>
-#include <OgreConfigFile.h>
-#include <OgreTextureManager.h>
-#include "core/Debug.h"
-
-
-namespace orxonox {
-
-  using namespace Ogre;
-
-  GraphicsEngine::GraphicsEngine()
-  {
-    // set to standard values
-    this->configPath_ = "";
-    this->dataPath_ = "";
-    scene_ = NULL;
-  }
-
-
-  GraphicsEngine::~GraphicsEngine()
-  {
-  }
-
-  void GraphicsEngine::setup()
-  {
-    //TODO: Check if file exists (maybe not here)
-/*#ifndef OGRE_STATIC_LIB
-    root_ = new Root(configPath_ + "plugins.cfg", configPath_ + "ogre.cfg",
-                     configPath_ + "Ogre.log");
-#else
-    root_ = new Root(NULL, configPath_ + "ogre.cfg", configPath_ + "Ogre.log");
-#endif*/
-    root_ = new Root();
-  }
-
-  /**
-   * @return scene manager
-   */
-  SceneManager* GraphicsEngine::getSceneManager()
-  {
-    if(!scene_)
-    {
-      scene_ = root_->createSceneManager(ST_GENERIC, "Default SceneManager");
-      COUT(3) << "Info: Created SceneMan: " << scene_ << std::endl;
-    }
-    return scene_;
-  }
-
-  bool GraphicsEngine::load()
-  {
-    loadRessourceLocations(this->dataPath_);
-    if (!root_->restoreConfig() && !root_->showConfigDialog())
-      return false;
-    return true;
-  }
-
-  void GraphicsEngine::startRender()
-  {
-    root_->initialise(true, "OrxonoxV2");
-    TextureManager::getSingleton().setDefaultNumMipmaps(5);
-    ResourceGroupManager::getSingleton().initialiseAllResourceGroups();
-  }
-
-  void GraphicsEngine::loadRessourceLocations(std::string dataPath)
-  {
-    //TODO: Specify layout of data file and maybe use xml-loader
-    //TODO: Work with ressource groups (should be generated by a special loader)
-    // Load resource paths from data file using configfile ressource type
-    ConfigFile cf;
-    cf.load(dataPath + "resources.cfg");
-
-    // Go through all sections & settings in the file
-    ConfigFile::SectionIterator seci = cf.getSectionIterator();
-
-    String secName, typeName, archName;
-    while (seci.hasMoreElements())
-    {
-      secName = seci.peekNextKey();
-      ConfigFile::SettingsMultiMap *settings = seci.getNext();
-      ConfigFile::SettingsMultiMap::iterator i;
-      for (i = settings->begin(); i != settings->end(); ++i)
-      {
-        typeName = i->first; // for instance "FileSystem" or "Zip"
-        archName = i->second; // name (and location) of archive
-
-        ResourceGroupManager::getSingleton().addResourceLocation(
-                                           String(dataPath + archName),
-                                           typeName, secName);
-      }
-    }
-  }
-
-
-}
Index: code/branches/FICN/src/orxonox/graphicsEngine.h
===================================================================
--- code/branches/FICN/src/orxonox/graphicsEngine.h	(revision 610)
+++ 	(revision )
@@ -1,43 +1,0 @@
-/**
-  @file graphicsEngine.h
-  @brief Graphics Engine
-  @author Benjamin Knecht <beni_at_orxonox.net>
- */
-
-#ifndef GRAPHICS_ENGINE_H
-#define GRAPHICS_ENGINE_H
-
-#include <OgreRoot.h>
-#include <OgreSceneManager.h>
-
-
-namespace orxonox {
-
-/**
-   * graphics engine manager class
- */
-  class GraphicsEngine {
-    public:
-      GraphicsEngine();
-      inline void setConfigPath(std::string path) { this->configPath_ = path; };
-      // find a better way for this
-      inline Ogre::Root* getRoot() { return root_; };
-      void setup();
-      bool load();
-      void loadRessourceLocations(std::string path);
-      Ogre::SceneManager* getSceneManager();
-      void startRender();
-
-      virtual ~GraphicsEngine();
-    private:
-      Ogre::Root*         root_;        //!< Ogre's root
-      std::string         configPath_;  //!< path to config file
-      std::string         dataPath_;    //!< path to data file
-      Ogre::SceneManager* scene_;       //!< scene manager of the game
-
-  };
-
-}
-
-#endif
-
Index: code/branches/FICN/src/orxonox/main.cc
===================================================================
--- code/branches/FICN/src/orxonox/main.cc	(revision 610)
+++ 	(revision )
@@ -1,164 +1,0 @@
-/*
- *   ORXONOX - the hottest 3D action shooter ever to exist
- *
- *
- *   License notice:
- *
- *   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
- *   of the License, 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., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
- *
- *   Author:
- *      Benjamin Knecht <beni_at_orxonox.net>, (C) 2007
- *   Co-authors:
- *      ...
- *
- */
-
- /**
- @file  main.cc
- @brief main file handling most of the machine specific code
-  */
-
-#include <OgrePlatform.h>
-#include <OgreException.h>
-
-
-#include "core/SignalHandler.h"
-#include "orxonox.h"
-
-using namespace orxonox;
-using namespace Ogre;
-#if OGRE_PLATFORM == OGRE_PLATFORM_APPLE
-#include <CoreFoundation/CoreFoundation.h>
-
-// This function will locate the path to our application on OS X,
-// unlike windows you can not rely on the curent working directory
-// for locating your configuration files and resources.
-             std::string macBundlePath()
-{
-  char path[1024];
-  CFBundleRef mainBundle = CFBundleGetMainBundle();
-  assert(mainBundle);
-
-  CFURLRef mainBundleURL = CFBundleCopyBundleURL(mainBundle);
-  assert(mainBundleURL);
-
-  CFStringRef cfStringRef = CFURLCopyFileSystemPath( mainBundleURL, kCFURLPOSIXPathStyle);
-  assert(cfStringRef);
-
-  CFStringGetCString(cfStringRef, path, 1024, kCFStringEncodingASCII);
-
-  CFRelease(mainBundleURL);
-  CFRelease(cfStringRef);
-
-  return std::string(path);
-}
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
-#define WIN32_LEAN_AND_MEAN
-#include "windows.h"
-  INT WINAPI WinMain(HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT)
-  {
-    // something like this would be less hacky
-    // maybe one can work with trailing '\0'
-    // or maybe use string based functions
-    // I was unable to test it without working windows version
-    /*char* cmd = strCmdLine;
-    int argc = 1;
-    for(int i = 0; cmd[i] != NULL; i++)
-    {
-      if(cmd[i] == ' ') argc++;
-    }
-    char* argv[argc];
-    int j = 0;
-    int k = 0;
-    for(int i = 0; cmd[i] != NULL; i++)
-    {
-      if(cmd[i] != ' ') {
-        argv[j][k];
-        k++;
-      }
-      else {
-        k = 0;
-        j++;
-      }
-    }*/
-    char *argv[2];
-    argv[0] = "asdfProgram";
-    argv[1] =  strCmdLine;
-    int argc = 2;
-#else
-  int main(int argc, char **argv)
-  {
-#endif
-    try {
-      SignalHandler::getInstance()->doCatch(argv[0], "orxonox.log");
-      Orxonox* orx = Orxonox::getSingleton();
-#if OGRE_PLATFORM == OGRE_PLATFORM_APPLE
-      orx->init(argc, argv, macBundlePath());
-      orx->start();
-#else
-      orx->init(argc, argv, "");
-      orx->start();
-#endif
-    }
-    catch (Ogre::Exception& e) {
-#if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
-      MessageBoxA(NULL, e.getFullDescription().c_str(),
-            "An exception has occured!", MB_OK | MB_ICONERROR | MB_TASKMODAL);
-#else
-      std::cerr << "Exception:\n";
-      std::cerr << e.getFullDescription().c_str() << "\n";
-#endif
-      return 1;
-    }
-    return 0;
-  }
-
-#ifdef __cplusplus
-}
-#endif
-
-
-/*int main(int argc, char **argv)
-{
-  try
-  {
-    SignalHandler::getInstance()->doCatch(argv[0], "orxonox.log");
-    Orxonox* orx = Orxonox::getSingleton();
-#if OGRE_PLATFORM == OGRE_PLATFORM_APPLE
-    orx->init(argc, argv, macBundlePath());
-    orx->start();
-#else
-    orx->init(argc, argv, "");
-    orx->start();
-#endif
-
-  }
-  catch(Ogre::Exception& e)
-  {
-    fprintf(stderr, "An exception has occurred: %s\n",
-            e.getFullDescription().c_str());
-    return 1;
-  }
-
-  return 0;
-}
-
-*/
Index: code/branches/FICN/src/orxonox/orxonox.cc
===================================================================
--- code/branches/FICN/src/orxonox/orxonox.cc	(revision 610)
+++ 	(revision )
@@ -1,460 +1,0 @@
-/*
- *   ORXONOX - the hottest 3D action shooter ever to exist
- *
- *
- *   License notice:
- *
- *   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
- *   of the License, 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., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
- *
- *   Author:
- *      Benjamin Knecht <beni_at_orxonox.net>, (C) 2007
- *   Co-authors:
- *      ...
- *
- */
-
-/**
- @file  orxonox.cc
- @brief Orxonox Main Class
- */
-
-//****** OGRE ******
-#include <OgreString.h>
-#include <OgreException.h>
-#include <OgreRoot.h>
-#include <OgreFrameListener.h>
-#include <OgreRenderWindow.h>
-#include <OgreTextureManager.h>
-#include <OgreResourceGroupManager.h>
-#include <OgreConfigFile.h>
-#include <OgreOverlay.h>
-#include <OgreOverlayManager.h>
-
-//****** OIS *******
-#include <OIS/OIS.h>
-
-//****** STD *******
-#include <string>
-#include <iostream>
-
-//***** ORXONOX ****
-// loader and audio
-#include "loader/LevelLoader.h"
-#include "audio/AudioManager.h"
-
-// network
-#include "../network/Server.h"
-#include "../network/Client.h"
-#include "../network/NetworkFrameListener.h"
-
-// objects
-#include "objects/Tickable.h"
-#include "objects/Timer.h"
-#include "core/ArgReader.h"
-#include "core/Factory.h"
-#include "core/Debug.h"
-#include "hud/HUD.h"
-
-#include "graphicsEngine.h"
-#include "orxonox.h"
-
-
-namespace orxonox
-{
-  using namespace Ogre;
-
-   // put this in a seperate Class or solve the problem in another fashion
-  class OrxListener : public FrameListener
-  {
-    public:
-      OrxListener(OIS::Keyboard *keyboard, audio::AudioManager*  auMan, gameMode mode)
-      {
-        mKeyboard = keyboard;
-        mode_=mode;
-        auMan_ = auMan;
-      }
-
-      bool frameStarted(const FrameEvent& evt)
-      {
-        auMan_->update();
-
-        if(mode_==PRESENTATION)
-          server_g->tick(evt.timeSinceLastFrame);
-        else if(mode_==CLIENT)
-          client_g->tick(evt.timeSinceLastFrame);
-
-        usleep(10);
-
-        mKeyboard->capture();
-        return !mKeyboard->isKeyDown(OIS::KC_ESCAPE);
-      }
-
-    private:
-      gameMode mode_;
-      OIS::Keyboard *mKeyboard;
-      audio::AudioManager*  auMan_;
-  };
-
-  // init static singleton reference of Orxonox
-  Orxonox* Orxonox::singletonRef_ = NULL;
-
-  /**
-   * create a new instance of Orxonox
-   */
-  Orxonox::Orxonox()
-  {
-    this->ogre_ = new GraphicsEngine();
-    this->dataPath_ = "";
-    this->loader_ = 0;
-    this->auMan_ = 0;
-    this->singletonRef_ = 0;
-    this->keyboard_ = 0;
-    this->mouse_ = 0;
-    this->inputManager_ = 0;
-    this->frameListener_ = 0;
-    this->root_ = 0;
-  }
-
-  /**
-   * destruct Orxonox
-   */
-  Orxonox::~Orxonox()
-  {
-    // nothing to delete as for now
-  }
-
-  /**
-   * initialization of Orxonox object
-   * @param argc argument counter
-   * @param argv list of arguments
-   * @param path path to config (in home dir or something)
-   */
-  void Orxonox::init(int argc, char **argv, std::string path)
-  {
-    //TODO: find config file (assuming executable directory)
-    //TODO: read config file
-    //TODO: give config file to Ogre
-    std::string mode;
-//     if(argc>=2)
-//       mode = std::string(argv[1]);
-//     else
-//       mode = "";
-    ArgReader ar = ArgReader(argc, argv);
-    ar.checkArgument("mode", mode, false);
-    ar.checkArgument("data", this->dataPath_, false);
-    ar.checkArgument("ip", serverIp_, false);
-    if(ar.errorHandling()) die();
-    if(mode == std::string("server"))
-    {
-      serverInit(path);
-      mode_ = SERVER;
-    }
-    else if(mode == std::string("client"))
-    {
-      clientInit(path);
-      mode_ = CLIENT;
-    }
-    else if(mode == std::string("presentation"))
-    {
-      serverInit(path);
-      mode_ = PRESENTATION;
-    }
-    else{
-      standaloneInit(path);
-      mode_ = STANDALONE;
-    }
-  }
-
-  /**
-   * start modules
-   */
-  void Orxonox::start()
-  {
-    //TODO: start modules
-    ogre_->startRender();
-    //TODO: run engine
-    createScene();
-    setupScene();
-    setupInputSystem();
-    if(mode_!=CLIENT){ // remove this in future ---- presentation hack
-    }
-    else
-      std::cout << "client here" << std::endl;
-    createFrameListener();
-    Factory::createClassHierarchy();
-    switch(mode_){
-    case PRESENTATION:
-      //ogre_->getRoot()->addFrameListener(new network::ServerFrameListener());
-      //std::cout << "could not add framelistener" << std::endl;
-      server_g->open();
-      break;
-    case CLIENT:
-      client_g->establishConnection();
-      break;
-    case SERVER:
-    case STANDALONE:
-    default:
-      break;
-    }
-    startRenderLoop();
-  }
-
-  /**
-   * @return singleton object
-   */
-  Orxonox* Orxonox::getSingleton()
-  {
-    if (!singletonRef_)
-      singletonRef_ = new Orxonox();
-    return singletonRef_;
-  }
-
-  /**
-   * error kills orxonox
-   */
-  void Orxonox::die(/* some error code */)
-  {
-    //TODO: destroy and destruct everything and print nice error msg
-    delete this;
-  }
-
-  void Orxonox::standaloneInit(std::string path)
-  {
-    ogre_->setConfigPath(path);
-    ogre_->setup();
-    root_ = ogre_->getRoot();
-    if(!ogre_->load()) die(/* unable to load */);
-
-    //defineResources();
-    //setupRenderSystem();
-    //createRenderWindow();
-    //initializeResourceGroups();
-    /*createScene();
-    setupScene();
-    setupInputSystem();
-    createFrameListener();
-    Factory::createClassHierarchy();
-    startRenderLoop();*/
-  }
-
-  void Orxonox::playableServer(std::string path)
-  {
-    ogre_->setConfigPath(path);
-    ogre_->setup();
-    root_ = ogre_->getRoot();
-    defineResources();
-    setupRenderSystem();
-    createRenderWindow();
-    initializeResourceGroups();
-    setupInputSystem();
-    Factory::createClassHierarchy();
-    createScene();
-    setupScene();
-    createFrameListener();
-    try{
-      server_g = new network::Server(); // add port and bindadress
-      server_g->open(); // open server and create listener thread
-      if(ogre_ && ogre_->getRoot())
-        ogre_->getRoot()->addFrameListener(new network::ServerFrameListener()); // adds a framelistener for the server
-      COUT(3) << "Info: network framelistener added" << std::endl;
-    }
-    catch(exception &e)
-    {
-      COUT(1) << "Error: There was a problem initialising the server :(" << std::endl;
-    }
-    startRenderLoop();
-  }
-
-  void Orxonox::standalone(){
-
-
-
-  }
-
-  void Orxonox::serverInit(std::string path)
-  {
-    COUT(2) << "initialising server" << std::endl;
-    ogre_->setConfigPath(path);
-    ogre_->setup();
-    server_g = new network::Server(); // add some settings if wanted
-    if(!ogre_->load()) die(/* unable to load */);
-    // add network framelistener
-  }
-
-  void Orxonox::clientInit(std::string path)
-  {
-    COUT(2) << "initialising client" << std::endl;
-    ogre_->setConfigPath(path);
-    ogre_->setup();
-    if(serverIp_.compare("")==0)
-      client_g = new network::Client();
-    else
-      client_g = new network::Client(serverIp_, 55556);
-    if(!ogre_->load()) die(/* unable to load */);
-    ogre_->getRoot()->addFrameListener(new network::ClientFrameListener());
-  }
-
-  void Orxonox::defineResources()
-  {
-    Ogre::String secName, typeName, archName;
-    Ogre::ConfigFile cf;
-#if OGRE_PLATFORM == OGRE_PLATFORM_APPLE
-    cf.load(macBundlePath() + "/Contents/Resources/resources.cfg");
-#else
-    cf.load(dataPath_ + "resources.cfg");
-#endif
-
-    Ogre::ConfigFile::SectionIterator seci = cf.getSectionIterator();
-    while (seci.hasMoreElements())
-    {
-      secName = seci.peekNextKey();
-      Ogre::ConfigFile::SettingsMultiMap *settings = seci.getNext();
-      Ogre::ConfigFile::SettingsMultiMap::iterator i;
-      for (i = settings->begin(); i != settings->end(); ++i)
-      {
-        typeName = i->first;
-        archName = i->second;
-#if OGRE_PLATFORM == OGRE_PLATFORM_APPLE
-        ResourceGroupManager::getSingleton().addResourceLocation( String(macBundlePath() + "/" + archName), typeName, secName);
-#else
-        ResourceGroupManager::getSingleton().addResourceLocation( archName, typeName, secName);
-#endif
-      }
-    }
-  }
-
-  void Orxonox::setupRenderSystem()
-  {
-    if (!root_->restoreConfig() && !root_->showConfigDialog())
-      throw Exception(52, "User canceled the config dialog!", "OrxApplication::setupRenderSystem()");
-  }
-
-  void Orxonox::createRenderWindow()
-  {
-    root_->initialise(true, "OrxonoxV2");
-  }
-
-  void Orxonox::initializeResourceGroups()
-  {
-    TextureManager::getSingleton().setDefaultNumMipmaps(5);
-    ResourceGroupManager::getSingleton().initialiseAllResourceGroups();
-  }
-
-  /**
-   *
-   * @param
-   */
-  void Orxonox::createScene(void)
-  {
-	// Init audio
-    auMan_ = new audio::AudioManager();
-
-    // load this file from config
-    loader_ = new loader::LevelLoader("sample.oxw");
-    loader_->loadLevel();
-
-    Overlay* hudOverlay = OverlayManager::getSingleton().getByName("Orxonox/HUD1.2");
-    hud::HUD* orxonoxHud;
-    orxonoxHud = new hud::HUD();
-    orxonoxHud->setEnergyValue(20);
-    orxonoxHud->setEnergyDistr(20,20,60);
-    hudOverlay->show();
-
-
-	/*
-    auMan_->ambientAdd("a1");
-    auMan_->ambientAdd("a2");
-    auMan_->ambientAdd("a3");
-                                //auMan->ambientAdd("ambient1");
-    auMan_->ambientStart();*/
-  }
-
-
-  /**
-   *
-   */
-  void Orxonox::setupScene()
-  {
-//    SceneManager *mgr = ogre_->getSceneManager();
-
-
-//    SceneNode* node = (SceneNode*)mgr->getRootSceneNode()->getChild("OgreHeadNode");
-//     SceneNode *node = mgr->getRootSceneNode()->createChildSceneNode("OgreHeadNode", Vector3(0,0,0));
-
-
-/*
-    particle::ParticleInterface *e = new particle::ParticleInterface(mgr,"engine","Orxonox/strahl");
-    e->particleSystem_->setParameter("local_space","true");
-    e->setPositionOfEmitter(0, Vector3(0,-10,0));
-    e->setDirection(Vector3(0,0,-1));
-    e->addToSceneNode(node);
-*/
-  }
-
-
-  void Orxonox::setupInputSystem()
-  {
-    size_t windowHnd = 0;
-    std::ostringstream windowHndStr;
-    OIS::ParamList pl;
-    RenderWindow *win = ogre_->getRoot()->getAutoCreatedWindow();
-
-    win->getCustomAttribute("WINDOW", &windowHnd);
-    windowHndStr << windowHnd;
-    pl.insert(std::make_pair(std::string("WINDOW"), windowHndStr.str()));
-    inputManager_ = OIS::InputManager::createInputSystem(pl);
-
-    try
-    {
-      keyboard_ = static_cast<OIS::Keyboard*>(inputManager_->createInputObject(OIS::OISKeyboard, false));
-      mouse_ = static_cast<OIS::Mouse*>(inputManager_->createInputObject(OIS::OISMouse, true));
-    }
-    catch (const OIS::Exception &e)
-    {
-      throw new Ogre::Exception(42, e.eText, "OrxApplication::setupInputSystem");
-    }
-  }
-
-  // we actually want to do this differently...
-  void Orxonox::createFrameListener()
-  {
-    TickFrameListener* TickFL = new TickFrameListener();
-    ogre_->getRoot()->addFrameListener(TickFL);
-
-    TimerFrameListener* TimerFL = new TimerFrameListener();
-    ogre_->getRoot()->addFrameListener(TimerFL);
-
-    //if(mode_!=CLIENT) // just a hack ------- remove this in future
-      frameListener_ = new OrxListener(keyboard_, auMan_, mode_);
-    ogre_->getRoot()->addFrameListener(frameListener_);
-  }
-
-  void Orxonox::startRenderLoop()
-  {
-    // this is a hack!!!
-    // the call to reset the mouse clipping size should probably be somewhere
-    // else, however this works for the moment.
-    unsigned int width, height, depth;
-    int left, top;
-    ogre_->getRoot()->getAutoCreatedWindow()->getMetrics(width, height, depth, left, top);
-
-    if(mode_!=CLIENT){
-      const OIS::MouseState &ms = mouse_->getMouseState();
-      ms.width = width;
-      ms.height = height;
-    }
-    ogre_->getRoot()->startRendering();
-  }
-}
Index: code/branches/FICN/src/orxonox/orxonox.h
===================================================================
--- code/branches/FICN/src/orxonox/orxonox.h	(revision 610)
+++ 	(revision )
@@ -1,80 +1,0 @@
-/**
- @file  orxonox.h
- @brief Main Orxonox Class File
- @author Benjamin Knecht <beni_at_orxonox.net>
- */
-
-#ifndef ORXONOX_H
-#define ORXONOX_H
-
-#include <OgrePrerequisites.h>
-#include <OIS/OISPrereqs.h>
-
-#include "OrxonoxPrereq.h"
-
-
-// TODO: Orxonox should maybe derive from BaseObject
-//! Orxonox singleton class
-namespace orxonox {
-
-  enum gameMode{
-    STANDALONE,
-    SERVER,
-    CLIENT,
-    PRESENTATION
-  };
-
-  class OrxListener;
-
-  class Orxonox
-  {
-    public:
-      void init(int argc, char **argv, std::string path);
-      void start();
-      // not sure if this should be private
-      void die(/* some error code */);
-      static Orxonox* getSingleton();
-      inline Ogre::SceneManager* getSceneManager() { return ogre_->getSceneManager(); };
-      inline GraphicsEngine* getOgrePointer() { return ogre_; };
-      inline audio::AudioManager* getAudioManagerPointer() { return auMan_; };
-      inline OIS::Keyboard* getKeyboard() { return this->keyboard_; }
-      inline OIS::Mouse* getMouse() { return this->mouse_; }
-
-    private:
-      Orxonox();
-      virtual ~Orxonox();
-      // init functions
-      void serverInit(std::string path);
-      void clientInit(std::string path);
-      void standaloneInit(std::string path);
-      // run functions
-      void playableServer(std::string path);
-      void standalone();
-      void defineResources();
-      void setupRenderSystem();
-      void createRenderWindow();
-      void initializeResourceGroups();
-      void createScene(void);
-      void setupScene();
-      void setupInputSystem();
-      void createFrameListener();
-      void startRenderLoop();
-
-    private:
-      GraphicsEngine*       ogre_;      //!< our dearest graphics engine <3
-      std::string           dataPath_;  //!< path to data
-      loader::LevelLoader*  loader_;    //!< level loader builds the scene
-      audio::AudioManager*  auMan_;     //!< audio manager
-      static Orxonox*       singletonRef_;
-      OIS::Keyboard*        keyboard_;
-      OIS::Mouse*           mouse_;
-      OIS::InputManager*    inputManager_;
-      OrxListener*          frameListener_;
-      Ogre::Root*           root_;
-
-      // this is used to identify the mode (server/client/...) we're in
-      gameMode              mode_;
-      std::string           serverIp_;
-  };
-}
-#endif /* ORXONOX_H */
Index: code/branches/FICN/src/orxonox/spaceship_steering.cc
===================================================================
--- code/branches/FICN/src/orxonox/spaceship_steering.cc	(revision 610)
+++ 	(revision )
@@ -1,224 +1,0 @@
-/*
- *   ORXONOX - the hottest 3D action shooter ever to exist
- *
- *
- *   License notice:
- *
- *   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
- *   of the License, 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., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
- *
- *   Author:
- *      ...
- *   Co-authors:
- *      ...
- *
- */
-
-#include "Ogre.h"
-#include "spaceship_steering.h"
-#include <iostream>
-#include "core/Debug.h"
-
-using namespace Ogre;
-
-SpaceshipSteering::SpaceshipSteering(float maxSpeedForward, float
-maxSpeedRotateUpDown, float maxSpeedRotateRightLeft, float
-maxSpeedLoopRightLeft) {
-
-  COUT(3) << "Info: Steering was loaded" << std::endl;
-  moveForward_ = 0;
-  rotateUp_ = 0;
-  rotateDown_ = 0;
-  rotateRight_ = 0;
-  rotateLeft_ = 0;
-  loopRight_ = 0;
-  loopLeft_ = 0;
-  brakeForward_ = 0;
-  brakeRotate_ = 0;
-  brakeLoop_ = 0;
-  speedForward_ = 0;
-  speedRotateUpDown_ = 0;
-  speedRotateRightLeft_ = 0;
-  speedLoopRightLeft_ = 0;
-  maxSpeedForward_ = maxSpeedForward;
-  maxSpeedRotateUpDown_ = maxSpeedRotateUpDown;
-  maxSpeedRotateRightLeft_ = maxSpeedRotateRightLeft;
-  maxSpeedLoopRightLeft_ = maxSpeedLoopRightLeft;
-  accelerationForward_ = 0;
-  accelerationRotateUpDown_ = 0;
-  accelerationRotateRightLeft_ = 0;
-  accelerationLoopRightLeft_ = 0;
-}
-
-void SpaceshipSteering::tick(float time) {
-
-  if(moveForward_ > 0) {
-    accelerationForward_ = moveForward_;
-    if(speedForward_ < maxSpeedForward_)
-      speedForward_ += accelerationForward_*time;
-    if(speedForward_ > maxSpeedForward_)
-      speedForward_ = maxSpeedForward_;
-  }
-  if(moveForward_ <= 0) {
-    accelerationForward_ = brakeForward_;
-    if(speedForward_ > 0)
-      speedForward_ -= accelerationForward_*time;
-    if(speedForward_ < 0)
-      speedForward_ = 0;
-  }
-
-  if(rotateUp_ > 0) {
-    accelerationRotateUpDown_ = rotateUp_;
-    if(speedRotateUpDown_ < maxSpeedRotateUpDown_)
-      speedRotateUpDown_ += accelerationRotateUpDown_*time;
-    if(speedRotateUpDown_ > maxSpeedRotateUpDown_)
-      speedRotateUpDown_ = maxSpeedRotateUpDown_;
-  }
-  if(rotateDown_ > 0) {
-    accelerationRotateUpDown_ = rotateDown_;
-    if(speedRotateUpDown_ > -maxSpeedRotateUpDown_)
-      speedRotateUpDown_ -= accelerationRotateUpDown_*time;
-    if(speedRotateUpDown_ < -maxSpeedRotateUpDown_)
-      speedRotateUpDown_ = -maxSpeedRotateUpDown_;
-  }
-  if(rotateUp_ == 0 && rotateDown_ == 0) {
-    accelerationRotateUpDown_ = brakeRotate_;
-    if(speedRotateUpDown_ > 0)
-      speedRotateUpDown_ -= accelerationRotateUpDown_*time;
-    if(speedRotateUpDown_ < 0)
-      speedRotateUpDown_ += accelerationRotateUpDown_*time;
-    if(abs(speedRotateUpDown_)<accelerationRotateUpDown_*time)
-      speedRotateUpDown_ = 0;
-  }
-
-  if(rotateRight_ > 0) {
-    accelerationRotateRightLeft_ = rotateRight_;
-    if(speedRotateRightLeft_ > -maxSpeedRotateRightLeft_)
-      speedRotateRightLeft_ -= accelerationRotateRightLeft_*time;
-    if(speedRotateRightLeft_ < -maxSpeedRotateRightLeft_)
-      speedRotateRightLeft_ = -maxSpeedRotateRightLeft_;
-  }
-  if(rotateLeft_ > 0) {
-    accelerationRotateRightLeft_ = rotateLeft_;
-    if(speedRotateRightLeft_ < maxSpeedRotateRightLeft_)
-      speedRotateRightLeft_ += accelerationRotateRightLeft_*time;
-    if(speedRotateRightLeft_ > maxSpeedRotateRightLeft_)
-      speedRotateRightLeft_ = maxSpeedRotateRightLeft_;
-  }
-  if(rotateRight_ == 0 && rotateLeft_ == 0) {
-    accelerationRotateRightLeft_ = brakeRotate_;
-    if(speedRotateRightLeft_ > 0)
-      speedRotateRightLeft_ -= accelerationRotateRightLeft_*time;
-    if(speedRotateRightLeft_ < 0)
-      speedRotateRightLeft_ += accelerationRotateRightLeft_*time;
-    if(abs(speedRotateRightLeft_)<accelerationRotateRightLeft_*time)
-      speedRotateRightLeft_ = 0;
-  }
-
-  if(loopRight_ > 0) {
-    accelerationLoopRightLeft_ = loopRight_;
-    if(speedLoopRightLeft_ < maxSpeedLoopRightLeft_)
-      speedLoopRightLeft_ += accelerationLoopRightLeft_*time;
-    if(speedLoopRightLeft_ > maxSpeedLoopRightLeft_)
-      speedLoopRightLeft_ = maxSpeedLoopRightLeft_;
-  }
-  if(loopLeft_ > 0) {
-    accelerationLoopRightLeft_ = loopLeft_;
-    if(speedLoopRightLeft_ > -maxSpeedLoopRightLeft_)
-      speedLoopRightLeft_ -= accelerationLoopRightLeft_*time;
-    if(speedLoopRightLeft_ < -maxSpeedLoopRightLeft_)
-      speedLoopRightLeft_ = -maxSpeedLoopRightLeft_;
-  }
-  if(loopLeft_ == 0 && loopRight_ == 0) {
-    accelerationLoopRightLeft_ = brakeLoop_;
-    if(speedLoopRightLeft_ > 0)
-      speedLoopRightLeft_ -= accelerationLoopRightLeft_*time;
-    if(speedLoopRightLeft_ < 0)
-      speedLoopRightLeft_ += accelerationLoopRightLeft_*time;
-    if(abs(speedLoopRightLeft_)<accelerationLoopRightLeft_*time)
-      speedLoopRightLeft_ = 0;
-  }
-
-  Vector3 transVector = Vector3::ZERO;
-  transVector.z = 1;
-  steeringNode_->translate(transVector*speedForward_*time,
-  Node::TS_LOCAL);
-  steeringNode_->pitch(Degree(speedRotateUpDown_*time),
-  Node::TS_LOCAL);
-  steeringNode_->yaw(Degree(speedRotateRightLeft_*time),
-  Node::TS_LOCAL);
-  steeringNode_->roll(Degree(speedLoopRightLeft_*time),
-  Node::TS_LOCAL);
-
-}
-
-void SpaceshipSteering::moveForward(float moveForward) {
-  moveForward_ = moveForward;
-}
-
-void SpaceshipSteering::rotateUp(float rotateUp) {
-  rotateUp_ = rotateUp;
-}
-
-void SpaceshipSteering::rotateDown(float rotateDown) {
-  rotateDown_ = rotateDown;
-}
-
-void SpaceshipSteering::rotateLeft(float rotateLeft) {
-  rotateLeft_ = rotateLeft;
-}
-
-void SpaceshipSteering::rotateRight(float rotateRight) {
-  rotateRight_ = rotateRight;
-}
-
-void SpaceshipSteering::loopLeft(float loopLeft) {
-  loopLeft_ = loopLeft;
-}
-
-void SpaceshipSteering::loopRight(float loopRight) {
-  loopRight_ = loopRight;
-}
-
-void SpaceshipSteering::brakeForward(float brakeForward) {
-  brakeForward_ = brakeForward;
-}
-
-void SpaceshipSteering::brakeRotate(float brakeRotate) {
-  brakeRotate_ = brakeRotate;
-}
-
-void SpaceshipSteering::brakeLoop(float brakeLoop) {
-  brakeLoop_ = brakeLoop;
-}
-
-void SpaceshipSteering::maxSpeedForward(float maxSpeedForward) {
-  maxSpeedForward_ = maxSpeedForward;
-}
-
-void SpaceshipSteering::maxSpeedRotateUpDown(float maxSpeedRotateUpDown) {
-  maxSpeedRotateUpDown_ = maxSpeedRotateUpDown;
-}
-
-void SpaceshipSteering::maxSpeedRotateRightLeft(float maxSpeedRotateRightLeft) {
-  maxSpeedRotateRightLeft_ = maxSpeedRotateRightLeft;
-}
-
-void SpaceshipSteering::maxSpeedLoopRightLeft(float maxSpeedLoopRightLeft) {
-  maxSpeedLoopRightLeft_ = maxSpeedLoopRightLeft;
-}
-
-void SpaceshipSteering::addNode(Ogre::SceneNode *steeringNode) {
-  steeringNode_ = steeringNode;
-}
Index: code/branches/FICN/src/orxonox/spaceship_steering.h
===================================================================
--- code/branches/FICN/src/orxonox/spaceship_steering.h	(revision 610)
+++ 	(revision )
@@ -1,62 +1,0 @@
-#ifndef SPACESHIP_STEERING_H
-#define SPACESHIP_STEERING_H
-
-#include "OgrePrerequisites.h"
-
-
-class SpaceshipSteering
-{
-  public:
-    SpaceshipSteering(float maxSpeedForward, float maxSpeedRotateUpDown,
-    float maxSpeedRotateRightLeft, float maxSpeedLoopRightLeft);
-    void tick(float time);
-    void moveForward(float moveForward);
-    void rotateUp(float rotateUp);
-    void rotateDown(float rotateDown);
-    void rotateRight(float rotateRight);
-    void rotateLeft(float rotateLeft);
-    void loopRight(float loopRight);
-    void loopLeft(float loopLeft);
-    void brakeForward(float brakeForward);
-    void brakeRotate(float brakeRotate);
-    void brakeLoop(float brakeLoop);
-    void maxSpeedForward(float maxSpeedForward);
-    void maxSpeedRotateUpDown(float maxSpeedRotateUpDown);
-    void maxSpeedRotateRightLeft(float maxSpeedRotateRightLeft);
-    void maxSpeedLoopRightLeft(float maxSpeedLoopRightLeft);
-    void addNode(Ogre::SceneNode *steeringNode);
-
-  protected:
-    Ogre::SceneNode *steeringNode_;
-
-  private:
-    float moveForward_;
-    float rotateUp_;
-    float rotateDown_;
-    float rotateRight_;
-    float rotateLeft_;
-    float loopRight_;
-    float loopLeft_;
-    float brakeForward_;
-    float brakeRotate_;
-    float brakeLoop_;
-
-    float speedForward_;
-    float speedRotateUpDown_;
-    float speedRotateRightLeft_;
-    float speedLoopRightLeft_;
-
-    float maxSpeedForward_;
-    float maxSpeedRotateUpDown_;
-    float maxSpeedRotateRightLeft_;
-    float maxSpeedLoopRightLeft_;
-
-    float accelerationForward_;
-    float accelerationRotateUpDown_;
-    float accelerationRotateRightLeft_;
-    float accelerationLoopRightLeft_;
-
-};
-
-
-#endif
