D:/simple_rts/include/Game.h

Go to the documentation of this file.
00001 #ifndef __GAME_H__
00002 #define __GAME_H__
00003 
00004 #include "OgreSceneManager.h"
00005 #include "OgreSingleton.h"
00006 #include "OgreString.h"
00007 #include "OgreRenderWindow.h"
00008 using Ogre::SceneManager;
00009 using Ogre::Singleton;
00010 using Ogre::String;
00011 using Ogre::RenderWindow;
00012 
00013 namespace ASR
00014 {
00015         class Level;
00016         class GameListener;
00017         class Updater;
00018 
00019         // ----------------------------------------------------------------------------
00020         class Game : public Singleton<Game>
00021         {
00022         // Data Storage
00023         // ----------------------------------------------------------------------------
00024         private:
00025                 Level*                  mLevel;
00026                 GameListener*   mListener;
00027 
00028                 SceneManager*   mSceneMgr;
00029                 RenderWindow*   mWindow;
00030 
00031         // Construction
00032         // ----------------------------------------------------------------------------
00033         public:
00034                 Game ( SceneManager* sceneMgr, RenderWindow* win );
00035                 ~Game ();
00036 
00052                 static Game& getSingleton(void);
00068                 static Game* getSingletonPtr(void);
00069 
00073                 SceneManager* getSceneManager() const;
00074 
00075 
00076                 // ----------------------------------------------------------------------------
00077                 // LEVEL MANAGEMENT
00078                 // ----------------------------------------------------------------------------
00079 
00083                 Level* createLevel ();
00084 
00088                 Level* getLevel () const;
00089 
00093                 void destroyLevel ();
00094 
00095 
00096                 // ----------------------------------------------------------------------------
00097                 // UPDATE MANAGEMENT
00098                 // ----------------------------------------------------------------------------
00099 
00104                 void addUpdater ( Updater* updater );
00105         };
00106 }
00107 
00108 #endif

Generated on Sun Jun 25 19:23:43 2006 for Valors End by  doxygen 1.4.7