00001 #ifndef HEADER_VIDEOAGENT_H
00002 #define HEADER_VIDEOAGENT_H
00003
00004 class Path;
00005
00006 #include "BaseAgent.h"
00007 #include "MultiDrawer.h"
00008 #include "Name.h"
00009
00010 #include "SDL.h"
00011
00012 #include <vector>
00013
00014
00015
00016
00017
00018 class VideoAgent : public BaseAgent, public MultiDrawer {
00019 AGENT(VideoAgent, Name::VIDEO_NAME);
00020 private:
00021 SDL_Surface *m_screen;
00022 bool m_fullscreen;
00023
00024 private:
00025 void setIcon(const Path &file);
00026 void changeVideoMode(int screen_width, int screen_height);
00027 int getVideoFlags();
00028 void toggleFullScreen();
00029 protected:
00030 virtual void own_init();
00031 virtual void own_update();
00032 virtual void own_shutdown();
00033 public:
00034 virtual void receiveSimple(const SimpleMsg *msg);
00035 virtual void receiveString(const StringMsg *msg);
00036
00037 void initVideoMode();
00038 };
00039
00040 #endif