Etterna 0.74.4
Loading...
Searching...
No Matches
RageInput.h
1/* RageInput - Starts up InputHandlers, which generate InputEvents. */
2
3#ifndef RAGEINPUT_H
4#define RAGEINPUT_H
5
6#include "Etterna/Models/Misc/Preference.h"
7#include "RageInputDevice.h"
8
9struct lua_State;
10class InputHandler;
11
13{
14 public:
15 RageInput();
16 ~RageInput();
17
18 void LoadDrivers();
19 void Update();
20 bool DevicesChanged();
21 void GetDevicesAndDescriptions(std::vector<InputDeviceInfo>& vOut) const;
22 void WindowReset();
23 void ApplyTemporaryInputSettings();
24 void RemoveTemporaryInputSettings();
25 void AddHandler(InputHandler* pHandler);
26 InputHandler* GetHandlerForDevice(InputDevice id);
27 std::string GetDeviceSpecificInputString(const DeviceInput& di);
28 std::string GetLocalizedInputString(const DeviceInput& di);
29 wchar_t DeviceInputToChar(DeviceInput di, bool bUseCurrentKeyModifiers);
30 InputDeviceState GetInputDeviceState(InputDevice id);
31 std::string GetDisplayDevicesString() const;
32
33 // Lua
34 void PushSelf(lua_State* L);
35};
36
37extern Preference<std::string> g_sInputDrivers;
38
39extern RageInput*
40 INPUTMAN; // global and accessible from anywhere in our program
41
42#endif
A class designed to handle special input devices.
Definition InputHandler.h:23
Definition Preference.h:53
Definition RageInput.h:13
InputHandler * GetHandlerForDevice(InputDevice id)
Return the first InputDriver for the requested InputDevice.
Definition RageInput.cpp:142
Definition RageInputDevice.h:390