src/proto2/Graphics.hh
author terom
Thu, 20 Nov 2008 23:45:33 +0000
branchno-netsession
changeset 41 ca80cd67785d
parent 35 e21cfda0edde
permissions -rw-r--r--
merge r64 through r88 from trunk
25
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
     1
#ifndef GRAPHICS_HH
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
     2
#define GRAPHICS_HH
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
     3
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
     4
// XXX: forward-declare for Engine
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
     5
class Graphics;
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
     6
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
     7
#include "GameState.hh"
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
     8
#include "Engine.hh"
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
     9
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
    10
#include <ClanLib/core.h>
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
    11
#include <ClanLib/gl.h>
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
    12
#include <ClanLib/display.h>
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
    13
35
e21cfda0edde Merge from at r31:36
terom
parents: 25
diff changeset
    14
const std::string GRAPHICS_WINDOW_TITLE = "Kisna Glista";
e21cfda0edde Merge from at r31:36
terom
parents: 25
diff changeset
    15
const uint32_t GRAPHICS_RESOLUTION_WIDTH = 800;
e21cfda0edde Merge from at r31:36
terom
parents: 25
diff changeset
    16
const uint32_t GRAPHICS_RESOLUTION_HEIGHT = 600;
e21cfda0edde Merge from at r31:36
terom
parents: 25
diff changeset
    17
const uint16_t GRAPHICS_UPDATE_INTERVAL_MS = 20;
25
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
    18
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
    19
class Graphics {
41
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    20
private:
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    21
    Engine &engine;
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    22
    GameState &state;
25
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
    23
    
41
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    24
    CL_SlotContainer slots;
25
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
    25
    
41
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    26
    CL_Timer update_timer;
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    27
    
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    28
    CL_DisplayWindow win;
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    29
    CL_InputDevice &keyboard;
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    30
    
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    31
    CL_Surface terrain;
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    32
    
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    33
public:
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    34
    Graphics (Engine &engine, GameState &state);
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    35
    
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    36
private:
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    37
    void check_input (void);
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    38
    void do_redraw (void);
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    39
    
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    40
    void on_update (void);
ca80cd67785d merge r64 through r88 from trunk
terom
parents: 35
diff changeset
    41
    
25
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
    42
};
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
    43
af75a1894a32 simple proto *almost* works
terom
parents:
diff changeset
    44
#endif /* GRAPHICS_HH */