#ifndef INPUT_H #define INPUT_H #include "tier0/platform.h" enum EKeyEventType { KEY_EVENT_TYPE_DOWN, KEY_EVENT_TYPE_UP, }; enum EInputKey { KEY_NONE = 0, KEY_ESCAPE, KEY_TAB, KEY_TILDE, KEY_CAPSLOCK, KEY_CONTROL, KEY_SHIFT, KEY_WIN, KEY_ALT, KEY_SPACE, KEY_BACKSPACE, KEY_LBRACKET, KEY_RBRACKET, KEY_BACKSLASH, KEY_SEMICOLON, KEY_APOSTROPHE, KEY_SLASH, KEY_ENTER, KEY_F1, KEY_F2, KEY_F3, KEY_F4, KEY_F5, KEY_F6, KEY_F7, KEY_F8, KEY_F9, KEY_F10, KEY_F11, KEY_F12, KEY_1, KEY_2, KEY_3, KEY_4, KEY_5, KEY_6, KEY_7, KEY_8, KEY_9, KEY_0, KEY_A, KEY_B, KEY_C, KEY_D, KEY_E, KEY_F, KEY_G, KEY_H, KEY_I, KEY_J, KEY_K, KEY_L, KEY_M, KEY_N, KEY_O, KEY_P, KEY_Q, KEY_R, KEY_S, KEY_T, KEY_U, KEY_V, KEY_W, KEY_X, KEY_Y, KEY_Z, }; enum EInputAxis { AXIS_MOUSE_X, AXIS_MOUSE_Y, AXIS_MOUSE_SCROLL, }; interface IInput { public: static void Init( void ); static void KeyEvent( EInputKey key, EKeyEventType event ); static void AxisEvent( unsigned char axis, float fX, float fY ); static void Frame( void ); static void Deinit( void ); }; #endif