00001 // Copyright 2002 Kenneth Guy, 00002 // 00003 // You are free to take the source and do as you wish with it. 00004 // However it would be nice if you let me know if the code was useful 00005 // to you and give me an acknowledgement if you use a significant portion 00006 // of the code in an application. 00007 // 00008 // CGameState.h 00009 00010 00011 #ifndef _CGAMESTATE_H_ 00012 #define _CGAMESTATE_H_ 00013 00018 #include <e32base.h> 00019 #include <e32std.h> 00020 00021 class CHighScores; 00022 00029 class CGameState { 00030 public: 00032 enum TState { 00033 ENoGame, 00034 EPaused, 00035 ENextLevel 00036 }; 00037 00038 public: 00039 static CGameState* NewL(const TDesC& aFileName); 00040 TState State(); 00041 void SetState(TState aState); 00042 ~CGameState(); 00043 00044 CHighScores& HighScores(); 00045 00046 private: 00047 CGameState(); 00048 void ConstructL(const TDesC& aFileName); 00049 00050 private: 00051 CHighScores* iHighScores; 00052 TState iState; 00053 }; 00054 00055 #endif