Game.h

00001 #ifndef _Game_H_
00002 #define _Game_H_
00003 
00004 #include <windows.h>
00005 #include <iostream>
00006 #include <sstream>
00007 #include "Defines.h"
00008 #include "renderer.h"
00009 #include "FPSMeter.h"
00010 #include "Window.h"             // solo para conocer el hWnd que necesita
00011 #include "Input.h"
00012 #include "TextureManager.h"
00013 #include "Messages.h"
00014 #include "CPUInfo.h"
00015 #include "SoundMgr.h"
00016 #include "Console.h"
00017 #include "GameConfig.h"
00018 #include "Sprite.h"
00019 #include "Shape.h"
00020 #include "Entity2D.h"
00021 #include "Font.h"
00022 #include "Map.h"
00023 
00024 using namespace std;
00025 
00026 namespace zak {
00027 
00149 class ZAKENGINE_API Game {
00150         private:
00151                 MSG _msg;
00152                 CPUInfo         _CPUInfo;
00153 
00154                 int             _width;
00155                 int             _height;
00156                 int             _bits;
00157                 bool    _fullScreen;
00158                 int             _refreshRate;
00159                 bool    _vsync;
00160 
00161         protected:
00162                 STCPUInfo       _stCPUInfo;
00163                 FPSMeter        _fpsMeter;
00164                 bool            _clearScreen;
00165                 GameConfig      *_config;
00166 
00167         public:
00168 
00173                 virtual bool OnInit()=0;
00174 
00179                 virtual bool OnShutdown()=0;
00180 
00185                 virtual void OnFrame()=0;
00186 
00191                 virtual void OnDraw(){}
00192 
00196                 virtual void OnLostDevice(){}
00197 
00201                 virtual void OnResetDevice(){}
00202 
00203 
00208                 bool StartUp (GameConfig *config = NULL);
00209 
00214                 void Loop();
00215 
00220                 bool Shutdown();
00221 
00222                 bool ChangeResolution(int width, int height, int bits, bool fullScreen, int refreshRate, bool vsync);
00223                 bool ChangeResolution(GameConfig *config);
00224 
00228         Game(){}
00229 };
00230 
00231 }
00232 
00233 #endif

Generado el Tue May 29 14:46:14 2007 para Zak Engine v1.1.0 por  doxygen 1.5.1-p1