pmc/include/surface.hpp
changeset 65 76514757b0d6
new file mode 100644
--- /dev/null
+++ b/pmc/include/surface.hpp
@@ -0,0 +1,38 @@
+/**
+ * test/demos/pmc/include/surface.h
+ * Copyright (C) 2008 Markus Broeker
+ */
+
+#ifndef SURFACE_H
+#define SURFACE_H
+
+#include <object.hpp>
+#include <SDL/SDL.h>
+
+class Surface:public Object {
+  private:
+    int width;
+    int height;
+    int depth;
+    int bpp;
+
+    Uint32 color, red, green, blue, black;
+    SDL_Surface *screen;
+
+  public:
+    enum foregroundColor { BLACK = 1, RED, GREEN, BLUE };
+
+    Surface (int w, int h, int d);
+    Surface (const Surface &) { /* Copy Constructor disabled */ };
+    virtual ~Surface ();
+
+    int getWidth () { return width; };
+    int getHeight () { return height; };
+
+    void drawPixel (int x, int y);
+    void drawLine (int x1, int y1, int x2, int y2);
+
+    void flip ();
+    void setColor (enum foregroundColor);
+};
+#endif