annotate 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
rev   line source
68
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
1 /*
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
2 * ScreenManager
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
3 */
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
4
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
5 #ifndef __SCREENMANAGER_H__
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
6 #define __SCREENMANAGER_H__
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
7
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
8 #include "Core.h"
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
9 #include "Screen.h"
70
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
10 #include "HashMap.h"
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
11 #include "FixedString.h"
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
12 #include "FixedStack.h"
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
13 #include "RenderContext.h"
68
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
14
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
15 /*
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
16 * ScreenManager
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
17 */
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
18 class ScreenManager
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
19 {
70
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
20 /*
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
21 * ScreenMap
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
22 */
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
23 typedef HashMap<FixedString<>, Screen*, FixedString<>::Hash> ScreenMap;
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
24
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
25 /*
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
26 * ScreenStack
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
27 */
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
28 typedef FixedStack<Screen*, 32> ScreenStack;
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
29
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
30 /*
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
31 * kScreens
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
32 */
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
33 ScreenMap kScreens;
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
34
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
35 /*
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
36 * kStack
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
37 */
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
38 ScreenStack kStack;
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
39
68
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
40 public:
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
41
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
42 /*
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
43 * ScreenManager
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
44 */
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
45 ScreenManager();
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
46
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
47 /*
70
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
48 * Register
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
49 */
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
50 ErrorCode Register(const char* pName, Screen* pInstance);
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
51
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
52 /*
68
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
53 * Initialize
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
54 */
70
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
55 ErrorCode Initialize(ServiceProvider* pServiceProvider);
68
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
56
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
57 /*
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
58 * Terminate
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
59 */
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
60 void Terminate();
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
61
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
62 /*
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
63 * Update
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
64 */
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
65 void Update(float fElapsed);
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
66
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
67 /*
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
68 * Render
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
69 */
70
ffaeccdc105e Work on screen manager
koryspansel
parents: 68
diff changeset
70 void Render(RenderContext& kContext);
68
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
71 };
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
72
c4ece16cf995 Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
73 #endif //__SCREENMANAGER_H__