| 123456789101112131415161718192021222324 |
- // mode_sinput.h -- SInput personality (MODE_SINPUT): the open SDL-native gamepad protocol.
- //
- // SInput (Hand Held Legend, docs.handheldlegend.com/s/sinput) is a HID protocol SDL3 and Steam Input bind
- // natively via a dedicated driver, so a device can expose analog sticks, analog triggers, gyro/accel, TWO
- // touchpads and battery at once without pretending to be somebody else's controller -- which is exactly the
- // SC2's shape. Enumerates as the generic SInput device 2E8A:10C6 (the ID SDL's driver matches on).
- #pragma once
- #include "controllers.h"
- class SInputController : public IController {
- public:
- void begin() override;
- void task() override;
- bool dynamicMount() const override
- {
- return true;
- }
- uint8_t maxSlots() const override;
- void usbIdentity() override;
- void beginPool() override;
- void mountSlots(uint8_t k) override;
- };
- extern SInputController g_sinputCtl;
|