New sound effects
[supertux.git] / src / video / renderer.hpp
index 5d45807..b9d4ec3 100644 (file)
 #include <SDL_video.h>
 #include <assert.h>
 #include <stdint.h>
+#include <obstack.h>
 
-#include "math/rect.hpp"
+#include "math/rectf.hpp"
 #include "math/vector.hpp"
-#include "obstack/obstack.h"
 #include "video/color.hpp"
 #include "video/font.hpp"
 #include "video/glutil.hpp"
@@ -43,6 +43,8 @@ public:
   Renderer();
   virtual ~Renderer();
 
+  virtual void start_draw() = 0;
+  virtual void end_draw() = 0;
   virtual void draw_surface(const DrawingRequest& request) = 0;
   virtual void draw_surface_part(const DrawingRequest& request) = 0;
   virtual void draw_gradient(const DrawingRequest& request) = 0;
@@ -52,11 +54,9 @@ public:
   virtual void flip() = 0;
   virtual void resize(int w, int h) = 0;
   virtual void apply_config() = 0;
-
-  static Renderer* instance() { assert(instance_); return instance_; }
-  
-protected:
-  static Renderer* instance_;
+  virtual Vector to_logical(int physical_x, int physical_y) = 0;
+  virtual void set_gamma(float gamma) = 0;
+  virtual SDL_Window* get_window() const = 0;
 };
 
 #endif