summaryrefslogtreecommitdiff
path: root/src/video/allegro_v.h
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2008-11-25 19:32:12 +0000
committerrubidium <rubidium@openttd.org>2008-11-25 19:32:12 +0000
commit3aacd0a3d5efa9001c97dbaa761c7ad90df789be (patch)
tree014c824da9cb4b28b6633d99bfacc1b94526ddc2 /src/video/allegro_v.h
parent614e724dd4c11fcd28ab4ab84d5202ec9a4dd8a4 (diff)
downloadopenttd-3aacd0a3d5efa9001c97dbaa761c7ad90df789be.tar.xz
(svn r14630) -Add: support Allegro as video backend.
Diffstat (limited to 'src/video/allegro_v.h')
-rw-r--r--src/video/allegro_v.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/video/allegro_v.h b/src/video/allegro_v.h
new file mode 100644
index 000000000..6f420c732
--- /dev/null
+++ b/src/video/allegro_v.h
@@ -0,0 +1,33 @@
+/* $Id$ */
+
+/** @file allegro_v.h Base of the Allegro video driver. */
+
+#ifndef VIDEO_ALLEGRO_H
+#define VIDEO_ALLEGRO_H
+
+#include "video_driver.hpp"
+
+class VideoDriver_Allegro: public VideoDriver {
+public:
+ /* 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 */ bool ToggleFullscreen(bool fullscreen);
+};
+
+class FVideoDriver_Allegro: public VideoDriverFactory<FVideoDriver_Allegro> {
+public:
+ static const int priority = 5;
+ /* virtual */ const char *GetName() { return "allegro"; }
+ /* virtual */ const char *GetDescription() { return "Allegro Video Driver"; }
+ /* virtual */ Driver *CreateInstance() { return new VideoDriver_Allegro(); }
+};
+
+#endif /* VIDEO_ALLEGRO_H */