00001 00026 #ifndef _CGAMESTATEMANAGER_ 00027 #define _CGAMESTATEMANAGER_ 00028 00029 // hlavicky souboru projektu 00030 #include "GameState.h" 00031 #include "Collection.h" 00032 #include "Updateable.h" 00033 #include "Renderable.h" 00034 00035 class CGameStateManager: public CCollection<CGameState> , 00036 public CUpdateable, 00037 public CRenderable { 00038 00039 public: 00040 00041 CGameStateManager(void); 00042 ~CGameStateManager(void); 00043 00044 void update(); 00045 void render(); 00046 00047 void switchStateTo(int state); 00048 CGameState* getCurrentState() { 00049 return m_currentGameState; 00050 } 00051 ; 00052 00053 private: 00054 CGameState* m_currentGameState; 00055 00056 }; 00057 00058 #endif 00059