fixed crash when passing the -screen argument, due to trying to free the
[vrtris] / src / game.h
1 #ifndef GAME_H_
2 #define GAME_H_
3
4 long time_msec;
5 int win_width, win_height;
6 int vp_width, vp_height;        /* viewport size differs from win size during VR eye rendering */
7 float win_aspect;
8 int fb_srgb;
9
10 float view_matrix[16], proj_matrix[16];
11
12 enum {
13         MOD_SHIFT       = 1,
14         MOD_ALT         = 2,
15         MOD_CTRL        = 4
16 };
17
18 /* special keys */
19 enum {
20         KEY_DEL = 127,
21         KEY_LEFT,
22         KEY_RIGHT,
23         KEY_UP,
24         KEY_DOWN,
25         KEY_PGUP,
26         KEY_PGDOWN,
27         KEY_HOME,
28         KEY_END,
29         KEY_F1,
30         KEY_F2,
31         KEY_F3,
32         KEY_F4,
33         KEY_F5,
34         KEY_F6,
35         KEY_F7,
36         KEY_F8,
37         KEY_F9,
38         KEY_F10,
39         KEY_F11,
40         KEY_F12
41 };
42
43 /* XXX make sure these match with SDL_GameControllerButton */
44 enum {
45         GPAD_A,
46         GPAD_B,
47         GPAD_X,
48         GPAD_Y,
49         GPAD_BACK,
50         GPAD_GUIDE,
51         GPAD_START,
52         GPAD_LSTICK,
53         GPAD_RSTICK,
54         GPAD_L,
55         GPAD_R,
56         GPAD_UP,
57         GPAD_DOWN,
58         GPAD_LEFT,
59         GPAD_RIGHT,
60 };
61
62 int game_init(int argc, char **argv);
63 void game_cleanup(void);
64
65 void game_display(void);
66 void game_reshape(int x, int y);
67
68 void game_keyboard(int key, int pressed);
69 void game_mouse_button(int bn, int pressed, int x, int y);
70 void game_mouse_motion(int x, int y);
71 void game_mouse_wheel(int dir);
72
73 void game_gamepad_axis(int axis, float val);
74 void game_gamepad_button(int bn, int pressed);
75
76 /* the following functions are implemented by the backend (main.c) */
77 void game_quit(void);
78 void game_swap_buffers(void);
79 unsigned int game_get_modifiers(void);
80
81 void game_resize(int x, int y);
82 void game_fullscreen(int fs);
83 void game_toggle_fullscreen(void);
84 int game_is_fullscreen(void);
85
86 #endif  // GAME_H_