11 #include "input/joysticks/interfaces/IDriverHandler.h" 12 #include "input/joysticks/interfaces/IInputReceiver.h" 13 #include "input/keyboard/interfaces/IKeyboardDriverHandler.h" 14 #include "input/mouse/interfaces/IMouseDriverHandler.h" 23 class IDriverReceiver;
29 class IKeyboardInputHandler;
34 class IMouseInputHandler;
41 class CPeripheralAddon;
53 std::shared_ptr<CPeripheralAddon> addon,
58 std::shared_ptr<CPeripheralAddon> addon,
62 std::shared_ptr<CPeripheralAddon> addon,
70 bool OnButtonMotion(
unsigned int buttonIndex,
bool bPressed)
override;
71 bool OnHatMotion(
unsigned int hatIndex, KODI::JOYSTICK::HAT_STATE state)
override;
72 bool OnAxisMotion(
unsigned int axisIndex,
75 unsigned int range)
override;
76 void OnInputFrame(
void)
override;
79 bool OnKeyPress(
const CKey& key)
override;
80 void OnKeyRelease(
const CKey& key)
override;
83 bool OnPosition(
int x,
int y)
override;
88 bool SetRumbleState(
const KODI::JOYSTICK::FeatureName& feature,
float magnitude)
override;
93 const std::shared_ptr<CPeripheralAddon> m_addon;
100 std::unique_ptr<KODI::JOYSTICK::IDriverHandler> m_joystickDriverHandler;
101 std::unique_ptr<KODI::JOYSTICK::IInputReceiver> m_joystickInputReceiver;
102 std::unique_ptr<KODI::KEYBOARD::IKeyboardDriverHandler> m_keyboardDriverHandler;
103 std::unique_ptr<KODI::MOUSE::IMouseDriverHandler> m_mouseDriverHandler;
104 std::unique_ptr<KODI::JOYSTICK::IButtonMap> m_buttonMap;
BUTTON_ID
Buttons on a mouse.
Definition: MouseTypes.h:26
Definition: RetroPlayerInput.h:15
Interface defining methods to handle joystick events for raw driver elements (buttons, hats, axes)
Definition: IDriverHandler.h:23
Definition: AudioDecoder.h:18
Interface for handling mouse driver events.
Definition: IMouseDriverHandler.h:22
Interface for handling keyboard events.
Definition: IKeyboardDriverHandler.h:22
Definition: Peripheral.h:71
Interface for sending input events to joystick drivers.
Definition: IDriverReceiver.h:20