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