audio responds to mouse motion
[maximus:soft-rock-revisited.git] / gpu / revisited.h
1 /* =====================================================================
2 soft-rock-revisited
3 Copyright (C) 2008-2012  Claude Heiland-Allen <claude@mathr.co.uk>
4
5 This program is free software: you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation, either version 3 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program.  If not, see <http://www.gnu.org/licenses/>.
17 ------------------------------------------------------------------------
18 Main Module
19 ===================================================================== */
20
21 #ifndef REVISITED_H
22 #define REVISITED_H 1
23
24 #include <time.h>
25 #include <GL/glew.h>
26 #include <GL/glut.h>
27
28 #include "config.h"
29 #include "audio.h"
30 #include "map.h"
31 #include "colour.h"
32 #include "output.h"
33 #if config_record
34 #  include "screenshot.h"
35 #endif
36
37 //======================================================================
38 // main module data
39 struct revisited {
40   struct audio audio;
41   struct map map;
42   struct colour colour;
43   struct output output;
44 #if config_record
45   struct screenshot screenshot;
46 #endif
47   GLuint fbo;
48   time_t starttime;
49   unsigned int frame;
50   int fullscreen;
51 };
52
53 //======================================================================
54 // prototypes
55 int revisited_init(void);
56 void revisited_reshape(int w, int h);
57 void revisited_display(void);
58 void revisited_atexit(void);
59 void revisited_idle(void);
60 void revisited_keynormal(unsigned char key, int x, int y);
61 void revisited_keyspecial(int key, int x, int y);
62 void revisited_mouse(int button, int state, int x, int y);
63 void revisited_motion(int x, int y);
64
65 #endif