9#include "SDL_joystick.h"
20#define REGISTER_INPUT_BINDING(name) \
21 namespace name##Input \
23 void Register(Input::Manager *input); \
24 bool name##Registered = Input::AddBindingRegistrar(&Register); \
26 void name##Input::Register(Input::Manager *input)
45 std::map<std::string, BindingGroup>
groups;
114 void AddJoystickID(SDL_JoystickID sdl_id, uint32_t internal_id);
153 return std::count(m_inputFrames.begin(), m_inputFrames.end(), frame) > 0;
179 bool IsKeyDown(SDL_Keycode k) {
return keyState[k] & 0x3; }
209 std::copy_n(mouseMotion.data(), mouseMotion.size(), motion);
236 void RebuildInputFrames();
241 SDL_Window *m_window;
243 bool m_enableConfigSaving;
245 std::map<SDL_Keycode, uint8_t> keyState;
247 std::array<char, 6> mouseButton;
248 std::array<int, 2> mouseMotion;
250 bool m_capturingMouse;
252 bool joystickEnabled;
255 std::map<std::string, BindingPage> bindingPages;
256 std::map<std::string, InputBindings::Action> actionBindings;
257 std::map<std::string, InputBindings::Axis> axisBindings;
258 bool m_enableBindings;
260 std::vector<InputFrame *> m_inputFrames;
261 bool m_frameListChanged;
263 std::vector<InputBindings::Action *> m_activeActions;
264 std::vector<InputBindings::Axis *> m_activeAxes;
266 std::map<InputBindings::KeyBinding, bool> m_modifiers;
267 std::vector<InputBindings::KeyChord *> m_chords;
Definition: IniConfig.h:16
BindingGroup * GetBindingGroup(std::string id)
Definition: Input.h:43
std::map< std::string, BindingGroup > groups
Definition: Input.h:45