0
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
1 /*
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
2 * Mediator
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
3 */
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
4
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
5 #ifndef __MEDIATOR_H__
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
6 #define __MEDIATOR_H__
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
7
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
8 #include "Core.h"
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
9 #include "Clock.h"
|
8
|
10 #include "Window.h"
|
|
11 #include "InputManager.h"
|
|
12 #include "GraphicsDevice.h"
|
|
13 #include "ResourceManager.h"
|
|
14 #include "RenderContext.h"
|
63
|
15 #include "ServiceProvider.h"
|
70
|
16 #include "ScreenManager.h"
|
|
17 #include "MainScreen.h"
|
|
18 #include "HelpScreen.h"
|
|
19 #include "PauseScreen.h"
|
|
20 #include "GameScreen.h"
|
0
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
21
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
22 /*
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
23 * Mediator
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
24 */
|
8
|
25 class Mediator : public WindowCallback
|
0
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
26 {
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
27 /*
|
8
|
28 * kWindow
|
|
29 */
|
|
30 Window kWindow;
|
|
31
|
|
32 /*
|
0
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
33 * kClock
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
34 */
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
35 Clock kClock;
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
36
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
37 /*
|
8
|
38 * pGraphicsDevice
|
|
39 */
|
|
40 GraphicsDevice* pGraphicsDevice;
|
0
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
41
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
42 /*
|
8
|
43 * kResourceManager
|
|
44 */
|
|
45 ResourceManager kResourceManager;
|
|
46
|
|
47 /*
|
|
48 * kContext
|
|
49 */
|
|
50 RenderContext kContext;
|
|
51
|
|
52 /*
|
9
|
53 * kInputManager
|
8
|
54 */
|
9
|
55 InputManager kInputManager;
|
8
|
56
|
|
57 /*
|
63
|
58 * kServiceProvider
|
|
59 */
|
|
60 ServiceProvider kServiceProvider;
|
|
61
|
|
62 /*
|
70
|
63 * kScreenManager
|
|
64 */
|
|
65 ScreenManager kScreenManager;
|
|
66
|
|
67 /*
|
|
68 * kMainScreen
|
|
69 */
|
|
70 MainScreen kMainScreen;
|
|
71
|
|
72 /*
|
|
73 * kHelpScreen
|
8
|
74 */
|
70
|
75 HelpScreen kHelpScreen;
|
|
76
|
|
77 /*
|
|
78 * kGameScreen
|
|
79 */
|
|
80 GameScreen kGameScreen;
|
|
81
|
|
82 /*
|
|
83 * kPauseScreen
|
|
84 */
|
|
85 PauseScreen kPauseScreen;
|
0
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
86
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
87 public:
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
88
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
89 /*
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
90 * Mediator
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
91 */
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
92 Mediator();
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
93
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
94 /*
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
95 * Run
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
96 */
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
97 ErrorCode Run();
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
98
|
8
|
99 /*
|
|
100 * OnMessage
|
|
101 */
|
|
102 virtual int32 OnMessage(Window* pInstance, uint32 nMessage, WPARAM wParam, LPARAM lParam);
|
|
103
|
|
104 private:
|
0
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
105
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
106 /*
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
107 * Initialize
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
108 */
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
109 virtual ErrorCode Initialize();
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
110
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
111 /*
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
112 * Terminate
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
113 */
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
114 virtual void Terminate();
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
115
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
116 /*
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
117 * Update
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
118 */
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
119 void Update(float fElapsed);
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
120
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
121 /*
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
122 * Render
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
123 */
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
124 void Render();
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
125
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
126 /*
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
127 * ProcessMessages
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
128 */
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
129 virtual void ProcessMessages();
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
130 };
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
131
|
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
132 #endif //__MEDIATOR_H__
|