Mercurial > LightClone
annotate LightClone/Source/Screen.h @ 71:bc8afcf7e1ec
Refactor world into game screen
author | koryspansel <koryspansel@bendbroadband.com> |
---|---|
date | Tue, 11 Oct 2011 13:20:43 -0700 |
parents | ffaeccdc105e |
children |
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 * Screen |
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 __SCREEN_H__ |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
6 #define __SCREEN_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" |
70 | 9 #include "ServiceProvider.h" |
10 #include "RenderContext.h" | |
11 | |
12 /* | |
68
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
13 * Screen |
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 class Screen |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
16 { |
70 | 17 /* |
71
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
18 * ScreenManager |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
19 */ |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
20 friend class ScreenManager; |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
21 |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
22 protected: |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
23 |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
24 /* |
70 | 25 * pScreenManager |
26 */ | |
27 ScreenManager* pScreenManager; | |
28 | |
68
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
29 public: |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
30 |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
31 /* |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
32 * ~Screen |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
33 */ |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
34 virtual ~Screen(); |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
35 |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
36 /* |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
37 * Initialize |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
38 */ |
70 | 39 virtual ErrorCode Initialize(ServiceProvider* pServiceProvider); |
68
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
40 |
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 * Terminate |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
43 */ |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
44 virtual void Terminate(); |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
45 |
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 * Update |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
48 */ |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
49 virtual void Update(float fElapsed); |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
50 |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
51 /* |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
52 * Render |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
53 */ |
70 | 54 virtual void Render(RenderContext& kContext); |
55 | |
71
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
56 protected: |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
57 |
70 | 58 /* |
71
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
59 * OnEnter |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
60 * Called when this screen is pushed onto the display stack |
70 | 61 */ |
71
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
62 virtual void OnEnter(); |
70 | 63 |
64 /* | |
71
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
65 * OnExit |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
66 * Called when this screen is popped from the display stack |
70 | 67 */ |
71
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
68 virtual void OnExit(); |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
69 |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
70 /* |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
71 * OnPause |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
72 * Called when another screen is pushed on top of this screen |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
73 */ |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
74 virtual void OnPause(); |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
75 |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
76 /* |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
77 * OnResume |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
78 * Called when this screen returns to the top of the stack |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
79 */ |
bc8afcf7e1ec
Refactor world into game screen
koryspansel <koryspansel@bendbroadband.com>
parents:
70
diff
changeset
|
80 virtual void OnResume(); |
68
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
81 }; |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
82 |
c4ece16cf995
Finish cleaning up memory leaks; Starting on screen manager
koryspansel <koryspansel@bendbroadband.com>
parents:
diff
changeset
|
83 #endif //__SCREEN_H__ |