Mercurial > LightClone
view LightClone/Source/ScreenManager.h @ 70:ffaeccdc105e
Work on screen manager
author | koryspansel |
---|---|
date | Tue, 11 Oct 2011 12:09:04 -0700 |
parents | c4ece16cf995 |
children | bc8afcf7e1ec |
line wrap: on
line source
/* * ScreenManager */ #ifndef __SCREENMANAGER_H__ #define __SCREENMANAGER_H__ #include "Core.h" #include "Screen.h" #include "HashMap.h" #include "FixedString.h" #include "FixedStack.h" #include "RenderContext.h" /* * ScreenManager */ class ScreenManager { /* * ScreenMap */ typedef HashMap<FixedString<>, Screen*, FixedString<>::Hash> ScreenMap; /* * ScreenStack */ typedef FixedStack<Screen*, 32> ScreenStack; /* * kScreens */ ScreenMap kScreens; /* * kStack */ ScreenStack kStack; public: /* * ScreenManager */ ScreenManager(); /* * Register */ ErrorCode Register(const char* pName, Screen* pInstance); /* * Initialize */ ErrorCode Initialize(ServiceProvider* pServiceProvider); /* * Terminate */ void Terminate(); /* * Update */ void Update(float fElapsed); /* * Render */ void Render(RenderContext& kContext); }; #endif //__SCREENMANAGER_H__