Index: branches/objectmanager/src/util/Makefile.am
===================================================================
--- branches/objectmanager/src/util/Makefile.am	(revision 6126)
+++ branches/objectmanager/src/util/Makefile.am	(revision 6134)
@@ -7,5 +7,4 @@
 			object_manager.cc \
                         loading/factory.cc \
-			garbage_collector.cc \
 			state.cc \
 			user_control.cc \
@@ -19,9 +18,8 @@
 			track/pilot_node.cc \
 			track/track_manager.cc \
-			track/track_node.cc 
+			track/track_node.cc
 
 noinst_HEADERS =        fast_factory.h \
 			object_manager.h \
-			garbage_collector.h \
 			state.h \
 			user_control.h \
Index: branches/objectmanager/src/util/garbage_collector.cc
===================================================================
--- branches/objectmanager/src/util/garbage_collector.cc	(revision 6126)
+++ 	(revision )
@@ -1,185 +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: Patrick Boenzli
-   co-programmer: ...
-*/
-
-#define DEBUG_SPECIAL_MODULE DEBUG_MODULE_GARBAGE_COLLECTOR
-
-#include "garbage_collector.h"
-
-#include "state.h"
-#include "world_entity.h"
-#include "fast_factory.h"
-
-#include "list.h"
-
-using namespace std;
-
-GarbageCollector* GarbageCollector::singletonRef = 0;
-
-/**
- *  standard constructor
-*/
-GarbageCollector::GarbageCollector ()
-{
-   this->setClassID(CL_GARBAGE_COLLECTOR, "GarbageCollector");
-   this->setName("GarbageCollector");
-
-   this->collectedObjects = NULL;
-   this->unusedContainers = NULL;
-
-   this->time = 0;
-   this->delay = 5.0f; /* clean up all 5.0 seconds */
-}
-
-
-/**
- *  standard deconstructor
-*/
-GarbageCollector::~GarbageCollector ()
-{
-  // delete what has to be deleted here
-}
-
-/**
- *  this sets the collection delay
- * @param delay: the delay
-
-   after this delay, the garbage collector starts its work and begins to collect unused object
-   to delete them afterwards. only objects in the worldentity list from the world object are lookded
-   at.
-*/
-void GarbageCollector::setCollectionDelay(float delay)
-{
-  this->delay = delay;
-}
-
-
-/**
- *  this foreces a garbage collection
-
-   if this function is called, the gc tries to initiate the garbage collection routines. actually
-   this should always work.
-*/
-void GarbageCollector::forceCollection()
-{
-  /* just make the time slitely bigger than the delay */
-  this->time = this->delay + 1;
-  /* and update, to get rid of the unused objects */
-  this->update();
-}
-
-
-/**
- * collect an Object, that should be scheduled for clearing.
- * @param object the Object to schedule.
- */
-void GarbageCollector::collect(BaseObject* object)
-{
-  State::getWorldEntityList()->remove(dynamic_cast<WorldEntity*>(object));
-  FastObjectMember* tmpC;
-  if (unlikely(this->unusedContainers == NULL))
-  {
-    tmpC = new FastObjectMember;
-  }
-  else
-  {
-    tmpC = this->unusedContainers;
-    this->unusedContainers = this->unusedContainers->next;
-  }
-
-  tmpC->next = this->collectedObjects;
-  tmpC->objectPointer = object;
-  this->collectedObjects = tmpC;
-}
-
-/**
- *  this ticks the GarbageCollector to give it the time pulse
- * @param time: the time passed since last tick
-
-   like every other tick function eg. worldentity
-*/
-void GarbageCollector::tick(float time)
-{
-  this->time += time;
-}
-
-
-void GarbageCollector::update()
-{
-  if (this->time < this->delay || this->collectedObjects == NULL)
-    return;
-  else
-  {
-    FastObjectMember* tmpC = this->collectedObjects;
-    FastObjectMember* moveC;
-    while (tmpC != NULL)
-    {
-      //WorldEntity* entity = dynamic_cast<WorldEntity*>(tmpC->objectPointer);
-      //State::getWorldEntityList()->remove(entity);
-      //entity->remove();
-      FastFactory::kill(tmpC->objectPointer, true);
-
-      moveC = tmpC->next;
-      tmpC->next = this->unusedContainers;
-      this->unusedContainers = tmpC;
-      tmpC = moveC;
-    }
-    this->collectedObjects = NULL;
-  }
-}
-
-/**
- *  this updated the gargabe collection, if the time is ready
-*/
-// void GarbageCollector::update()
-// {
-//   if( this->time < this->delay)
-//     return;
-//   /* garbage collect */
-//   PRINTF(3)("=============================\n");
-//   PRINTF(3)("Processing Garbage Collection\n");
-//   PRINTF(3)("=============================\n");
-//   int counter = 0;
-//
-//   tList<WorldEntity>* list = State::getWorldEntityList();
-//
-//   tIterator<WorldEntity>* iterator = list->getIterator();
-//   WorldEntity* entity = iterator->firstElement();
-//   while( entity != NULL)
-//     {
-//       if( entity->isFinalized())
-//         {
-//           PRINTF(4)("= finalizing object\n");
-//           ++counter;
-//
-//           /* first remove out of entity list */
-//           list->remove(entity);
-//           /* second remove out of pnode tree */
-//           entity->remove();
-//           /* then finaly delete reference */
-//           //delete entity;
-//           //FastFactory::kill();
-//           //ObjectManager::getInstance()->addToDeadList(entity->getClassID() & CL_MASK_LOWLEVEL_CLASS, entity);
-//         }
-//       entity = iterator->nextElement();
-//     }
-//
-//   PRINTF(3)("= collected %i unused objects\n", counter);
-//   PRINTF(3)("=============================\n");
-//
-//   //ObjectManager::getInstance()->debug();
-//
-//   /* reset time to count again up to this->delay */
-//   this->time = 0;
-// }
Index: branches/objectmanager/src/util/garbage_collector.h
===================================================================
--- branches/objectmanager/src/util/garbage_collector.h	(revision 6126)
+++ 	(revision )
@@ -1,48 +1,0 @@
-/*!
- * @file garbage_collector.h
- */
-
-#ifndef _GARBAGE_COLLECTOR_H
-#define _GARBAGE_COLLECTOR_H
-
-#include "base_object.h"
-
-// FORWARD DECLARATION
-class FastObjectMember;
-
-//! this class maintains the garbage collection.
-/**
- * you can pass everything to this class that you want to be collected
- * just use GarbageCollector->collect(POINTER); to pass a collectable to the GarbageCollector
- * it will then be handled acording to the class
-*/
-class GarbageCollector : public BaseObject {
-
- public:
-  virtual ~GarbageCollector();
-  /** @returns a Pointer to the only object of this Class */
-  inline static GarbageCollector* getInstance() { if (!singletonRef) singletonRef = new GarbageCollector();  return singletonRef; };
-
-  void setCollectionDelay(float delay);
-
-  void forceCollection();
-
-  void collect(BaseObject* object);
-
-  void tick(float time);
-  void update();
-
- private:
-  GarbageCollector();
-
- private:
-  static GarbageCollector*    singletonRef;           //!< The reference to this class (singleton)
-
-  FastObjectMember*           collectedObjects;       //!< A list of recently collected Objects, that want to be deleted.
-  FastObjectMember*           unusedContainers;       //!< A list of unused containers.
-  float                       delay;                  //!< this is the delay to wait until collection.
-  float                       time;                   //!< the current time
-
-};
-
-#endif /* _GARBAGE_COLLECTOR_H */
Index: branches/objectmanager/src/util/state.cc
===================================================================
--- branches/objectmanager/src/util/state.cc	(revision 6126)
+++ branches/objectmanager/src/util/state.cc	(revision 6134)
@@ -30,5 +30,4 @@
 
 ObjectManager* State::objectManager = NULL;
-tList<WorldEntity>* State::worldEntityList = NULL;
 
 /**
Index: branches/objectmanager/src/util/state.h
===================================================================
--- branches/objectmanager/src/util/state.h	(revision 6126)
+++ branches/objectmanager/src/util/state.h	(revision 6134)
@@ -10,5 +10,4 @@
 class PNode;
 class WorldEntity;
-template<class T> class tList;
 class ObjectManager;
 
@@ -43,8 +42,4 @@
   /// WORLD_ENTITY_LIST ///
   /////////////////////////
-  /** @param worldEntityList The World's List of WorldEntities */
-  static inline void setWorldEntityList(tList<WorldEntity>* worldEntityList) { State::worldEntityList = worldEntityList; };
-  /** @returns the List of WorldEntities */
-  static inline tList<WorldEntity>* getWorldEntityList() { return State::worldEntityList; };
 
  private:
@@ -56,7 +51,4 @@
   static ObjectManager*         objectManager;      //!< A referenct to the current ObjectManager
 
-  static tList<WorldEntity>*    worldEntityList;    //!< The List of the worldEntities
-
-  //tStack<
 };
 
