annotate LightClone/Source/Mediator.h @ 73:0574e2cf8bac

Additional screen types
author koryspansel
date Tue, 11 Oct 2011 17:44:10 -0700
parents 9a9be3d8632e
children 40c0b5305de8
rev   line source
0
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
1 /*
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
2 * Mediator
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
3 */
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
4
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
5 #ifndef __MEDIATOR_H__
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
6 #define __MEDIATOR_H__
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
7
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
8 #include "Core.h"
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
9 #include "Clock.h"
8
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
10 #include "Window.h"
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
11 #include "InputManager.h"
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
12 #include "GraphicsDevice.h"
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
13 #include "ResourceManager.h"
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
14 #include "RenderContext.h"
63
44dcff5abf12 Work on ServiceProvider
koryspansel
parents: 43
diff changeset
15 #include "ServiceProvider.h"
70
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
16 #include "ScreenManager.h"
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
17 #include "MainScreen.h"
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
18 #include "HelpScreen.h"
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
19 #include "PauseScreen.h"
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
20 #include "GameScreen.h"
73
0574e2cf8bac Additional screen types
koryspansel
parents: 72
diff changeset
21 #include "LevelOverScreen.h"
0574e2cf8bac Additional screen types
koryspansel
parents: 72
diff changeset
22 #include "GameOverScreen.h"
0574e2cf8bac Additional screen types
koryspansel
parents: 72
diff changeset
23 #include "ConfirmScreen.h"
0
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
24
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
25 /*
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
26 * Mediator
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
27 */
8
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
28 class Mediator : public WindowCallback
0
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
29 {
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
30 /*
8
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
31 * kWindow
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
32 */
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
33 Window kWindow;
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
34
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
35 /*
0
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
36 * kClock
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
37 */
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
38 Clock kClock;
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
39
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
40 /*
8
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
41 * pGraphicsDevice
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
42 */
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
43 GraphicsDevice* pGraphicsDevice;
0
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
44
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
45 /*
8
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
46 * kResourceManager
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
47 */
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
48 ResourceManager kResourceManager;
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
49
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
50 /*
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
51 * kContext
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
52 */
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
53 RenderContext kContext;
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
54
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
55 /*
9
e494c4295dba Conversion to World architecture
koryspansel
parents: 8
diff changeset
56 * kInputManager
8
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
57 */
9
e494c4295dba Conversion to World architecture
koryspansel
parents: 8
diff changeset
58 InputManager kInputManager;
8
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
59
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
60 /*
63
44dcff5abf12 Work on ServiceProvider
koryspansel
parents: 43
diff changeset
61 * kServiceProvider
44dcff5abf12 Work on ServiceProvider
koryspansel
parents: 43
diff changeset
62 */
44dcff5abf12 Work on ServiceProvider
koryspansel
parents: 43
diff changeset
63 ServiceProvider kServiceProvider;
44dcff5abf12 Work on ServiceProvider
koryspansel
parents: 43
diff changeset
64
44dcff5abf12 Work on ServiceProvider
koryspansel
parents: 43
diff changeset
65 /*
70
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
66 * kScreenManager
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
67 */
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
68 ScreenManager kScreenManager;
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
69
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
70 /*
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
71 * kMainScreen
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
72 */
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
73 MainScreen kMainScreen;
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
74
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
75 /*
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
76 * kHelpScreen
8
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
77 */
70
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
78 HelpScreen kHelpScreen;
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
79
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
80 /*
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
81 * kGameScreen
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
82 */
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
83 GameScreen kGameScreen;
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
84
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
85 /*
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
86 * kPauseScreen
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
87 */
ffaeccdc105e Work on screen manager
koryspansel
parents: 63
diff changeset
88 PauseScreen kPauseScreen;
0
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
89
73
0574e2cf8bac Additional screen types
koryspansel
parents: 72
diff changeset
90 /*
0574e2cf8bac Additional screen types
koryspansel
parents: 72
diff changeset
91 * kLevelOverScreen
0574e2cf8bac Additional screen types
koryspansel
parents: 72
diff changeset
92 */
0574e2cf8bac Additional screen types
koryspansel
parents: 72
diff changeset
93 LevelOverScreen kLevelOverScreen;
0574e2cf8bac Additional screen types
koryspansel
parents: 72
diff changeset
94
0574e2cf8bac Additional screen types
koryspansel
parents: 72
diff changeset
95 /*
0574e2cf8bac Additional screen types
koryspansel
parents: 72
diff changeset
96 * kGameOverScreen
0574e2cf8bac Additional screen types
koryspansel
parents: 72
diff changeset
97 */
0574e2cf8bac Additional screen types
koryspansel
parents: 72
diff changeset
98 GameOverScreen kGameOverScreen;
0574e2cf8bac Additional screen types
koryspansel
parents: 72
diff changeset
99
0574e2cf8bac Additional screen types
koryspansel
parents: 72
diff changeset
100 /*
0574e2cf8bac Additional screen types
koryspansel
parents: 72
diff changeset
101 * kConfirmScreen
0574e2cf8bac Additional screen types
koryspansel
parents: 72
diff changeset
102 */
0574e2cf8bac Additional screen types
koryspansel
parents: 72
diff changeset
103 ConfirmScreen kConfirmScreen;
0574e2cf8bac Additional screen types
koryspansel
parents: 72
diff changeset
104
0
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
105 public:
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
106
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
107 /*
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
108 * Mediator
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
109 */
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
110 Mediator();
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
111
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
112 /*
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
113 * Run
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
114 */
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
115 ErrorCode Run();
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
116
8
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
117 /*
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
118 * OnMessage
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
119 */
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
120 virtual int32 OnMessage(Window* pInstance, uint32 nMessage, WPARAM wParam, LPARAM lParam);
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
121
968341ab1fb2 First pass world re-structuring
koryspansel
parents: 0
diff changeset
122 private:
0
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
123
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
124 /*
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
125 * Initialize
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
126 */
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
127 virtual ErrorCode Initialize();
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
128
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
129 /*
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
130 * Terminate
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
131 */
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
132 virtual void Terminate();
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
133
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
134 /*
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
135 * Update
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
136 */
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
137 void Update(float fElapsed);
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
138
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
139 /*
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
140 * Render
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
141 */
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
142 void Render();
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
143
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
144 /*
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
145 * ProcessMessages
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
146 */
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
147 virtual void ProcessMessages();
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
148 };
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
149
7e3a0ae9c016 Initial commit
koryspansel <koryspansel@bendbroadband.com>
parents:
diff changeset
150 #endif //__MEDIATOR_H__