diff options
author | peter1138 <peter1138@openttd.org> | 2007-07-05 12:23:54 +0000 |
---|---|---|
committer | peter1138 <peter1138@openttd.org> | 2007-07-05 12:23:54 +0000 |
commit | 68c6add8ccd9aa32eb799a433aa8a3b05ec84a57 (patch) | |
tree | 52e0cc5b1e4eb6cf9aed8556873ee6833662e11f /src/video/sdl_v.h | |
parent | b5079071762021ebfbb66a14eaa598e48d6a3234 (diff) | |
download | openttd-68c6add8ccd9aa32eb799a433aa8a3b05ec84a57.tar.xz |
(svn r10444) -Codechange: switch to c++ classes and inheritance for sound/music/video drivers, using self-registration based on the blitter-model.
Diffstat (limited to 'src/video/sdl_v.h')
-rw-r--r-- | src/video/sdl_v.h | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/src/video/sdl_v.h b/src/video/sdl_v.h index 2868b1c5c..ff494919d 100644 --- a/src/video/sdl_v.h +++ b/src/video/sdl_v.h @@ -3,8 +3,30 @@ #ifndef VIDEO_SDL_H #define VIDEO_SDL_H -#include "../hal.h" +#include "video_driver.hpp" -extern const HalVideoDriver _sdl_video_driver; +class VideoDriver_SDL: public VideoDriver { +public: + /* virtual */ bool CanProbe() { return true; } + + /* virtual */ const char *Start(const char * const *param); + + /* virtual */ void Stop(); + + /* virtual */ void MakeDirty(int left, int top, int width, int height); + + /* virtual */ void MainLoop(); + + /* virtual */ bool ChangeResolution(int w, int h); + + /* virtual */ void ToggleFullscreen(bool fullscreen); +}; + +class FVideoDriver_SDL: public VideoDriverFactory<FVideoDriver_SDL> { +public: + /* virtual */ const char *GetName() { return "sdl"; } + /* virtual */ const char *GetDescription() { return "SDL Video Driver"; } + /* virtual */ Driver *CreateInstance() { return new VideoDriver_SDL(); } +}; #endif /* VIDEO_SDL_H */ |