src/proto2/Graphics.hh
author saiam
Thu, 20 Nov 2008 22:45:10 +0000
changeset 86 ed31ece6f340
parent 60 26571fd9a8d1
child 138 cc326b64ae20
permissions -rw-r--r--
Segfault <3 (mik? oli odotettavaa)
#ifndef GRAPHICS_HH
#define GRAPHICS_HH

// XXX: forward-declare for Engine
class Graphics;

#include "GameState.hh"
#include "Engine.hh"

#include <ClanLib/core.h>
#include <ClanLib/gl.h>
#include <ClanLib/display.h>

const std::string GRAPHICS_WINDOW_TITLE = "Kisna Glista";
const uint32_t GRAPHICS_RESOLUTION_WIDTH = 800;
const uint32_t GRAPHICS_RESOLUTION_HEIGHT = 600;
const uint16_t GRAPHICS_UPDATE_INTERVAL_MS = 20;

class Graphics {
private:
    Engine &engine;
    GameState &state;
    
    CL_SlotContainer slots;
    
    CL_Timer update_timer;
    
    CL_DisplayWindow win;
    CL_InputDevice &keyboard;
    
    CL_Surface terrain;
    
public:
    Graphics (Engine &engine, GameState &state);
    
private:
    void check_input (void);
    void do_redraw (void);
    
    void on_update (void);
    
};

#endif /* GRAPHICS_HH */