Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/orxonox/trunk/src/util/object_manager.h @ 4940

Last change on this file since 4940 was 4940, checked in by bensch, 19 years ago

orxonox/trunk: moved the fast_factory to a file of its own.
This is because, the use is quite different from objectManager, and maybe we want to delete the ObjectManager totally from the Project
@patrick: can you please tell me what dou stink??

File size: 884 bytes
RevLine 
[4591]1/*!
[4938]2 * @file object_manager.h
[4940]3 */
[4245]4
5#ifndef _OBJECT_MANAGER_H
6#define _OBJECT_MANAGER_H
7
8#include "base_object.h"
9
[4938]10
11// FORWARD DECLARATION //
12class GarbageCollector;
[4930]13template<class T>
[4940]14    class tList;
[4930]15
[4932]16////////////////////
17// OBJECT MANAGER //
18////////////////////
19
20//! the object manager itself
21class ObjectManager : public BaseObject {
22
23 public:
24  virtual ~ObjectManager();
25  /** @returns a Pointer to the only object of this Class */
26  inline static ObjectManager* getInstance() { if (!singletonRef) singletonRef = new ObjectManager();  return singletonRef; };
27
28  void registerClass(ClassID classID);
29
[4938]30  BaseObject* resurrect();
[4932]31  void kill(BaseObject* object);
32
33
34  void debug() const;
35
36 private:
37  ObjectManager();
38
39 private:
40  static ObjectManager*      singletonRef;          //!< The singleton reference to the only reference of this class
41
42};
43
44
45
[4245]46#endif /* _OBJECT_MANAGER_H */
Note: See TracBrowser for help on using the repository browser.