X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=laserbrain_demo;a=blobdiff_plain;f=src%2Fapp.h;h=8f4051580722b21ecdd068781c4ef355d819c8b1;hp=2f66bcf9a678859440a8e978a18c57d4a72321f1;hb=9480e20f4de41693ebd1f22e63d3bcecde878f70;hpb=d06c9fde2a545b95322f2566a366944e27f323b0 diff --git a/src/app.h b/src/app.h index 2f66bcf..8f40515 100644 --- a/src/app.h +++ b/src/app.h @@ -1,13 +1,27 @@ #ifndef APP_H_ #define APP_H_ +#include "texture.h" +#include "scene.h" +#include "exhibit.h" + extern long time_msec; extern int win_width, win_height; +extern int vp_width, vp_height; // viewport size differs from win size during VR eye rendering extern float win_aspect; extern bool opt_gear_wireframe; extern bool fb_srgb; -extern unsigned int sdr_ltmap, sdr_ltmap_notex; +extern TextureSet texman; +extern SceneSet sceneman; + +extern ExSelection exsel_active; // active (info/interact) exhibit +extern ExSelection exsel_grab_left, exsel_grab_right; // grabbed on each hand +extern ExSelection exsel_hover; // hover + +extern unsigned int dbg_key_pending; + +extern int fpexcept_enabled; // int so that C modules may fwd-delcare and use it enum { MOD_SHIFT = 1, @@ -15,6 +29,31 @@ enum { MOD_CTRL = 4 }; +/* special keys */ +enum { + KEY_DEL = 127, + KEY_LEFT, + KEY_RIGHT, + KEY_UP, + KEY_DOWN, + KEY_PGUP, + KEY_PGDOWN, + KEY_HOME, + KEY_END, + KEY_F1, + KEY_F2, + KEY_F3, + KEY_F4, + KEY_F5, + KEY_F6, + KEY_F7, + KEY_F8, + KEY_F9, + KEY_F10, + KEY_F11, + KEY_F12 +}; + /* XXX make sure these match with SDL_GameControllerButton */ enum { GPAD_A, @@ -44,6 +83,7 @@ void app_keyboard(int key, bool pressed); void app_mouse_button(int bn, bool pressed, int x, int y); void app_mouse_motion(int x, int y); void app_mouse_delta(int dx, int dy); +void app_mouse_wheel(int dir); void app_gamepad_axis(int axis, float val); void app_gamepad_button(int bn, bool pressed);