pmc/include/surface.hpp
author Markus Bröker<broeker.markus@googlemail.com>
Sat, 21 Oct 2017 13:45:05 +0200
changeset 171 c6e0af68825a
parent 65 76514757b0d6
permissions -rw-r--r--
Entrypoint and RET fixed

/**
 * 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