diff options
| author | german77 <juangerman-13@hotmail.com> | 2023-09-16 00:21:47 -0600 |
|---|---|---|
| committer | german77 <juangerman-13@hotmail.com> | 2023-09-16 00:31:19 -0600 |
| commit | 8950fe79ad0f1a10880556856eca9f987cdfd886 (patch) | |
| tree | 8fed94e0fdad0043aa70af8ba4ba01793b658d12 /src/core/hid | |
| parent | c8b9467f502a37abf2198df556b03510f104732a (diff) | |
hid: service: Implement Last active Npad
Diffstat (limited to 'src/core/hid')
| -rw-r--r-- | src/core/hid/hid_core.cpp | 8 | ||||
| -rw-r--r-- | src/core/hid/hid_core.h | 7 |
2 files changed, 15 insertions, 0 deletions
diff --git a/src/core/hid/hid_core.cpp b/src/core/hid/hid_core.cpp index 7d6373414..cf53c04d9 100644 --- a/src/core/hid/hid_core.cpp +++ b/src/core/hid/hid_core.cpp @@ -154,6 +154,14 @@ NpadIdType HIDCore::GetFirstDisconnectedNpadId() const { return NpadIdType::Player1; } +void HIDCore::SetLastActiveController(NpadIdType npad_id) { + last_active_controller = npad_id; +} + +NpadIdType HIDCore::GetLastActiveController() const { + return last_active_controller; +} + void HIDCore::EnableAllControllerConfiguration() { player_1->EnableConfiguration(); player_2->EnableConfiguration(); diff --git a/src/core/hid/hid_core.h b/src/core/hid/hid_core.h index 5fe36551e..80abab18b 100644 --- a/src/core/hid/hid_core.h +++ b/src/core/hid/hid_core.h @@ -48,6 +48,12 @@ public: /// Returns the first disconnected npad id NpadIdType GetFirstDisconnectedNpadId() const; + /// Sets the npad id of the last active controller + void SetLastActiveController(NpadIdType npad_id); + + /// Returns the npad id of the last controller that pushed a button + NpadIdType GetLastActiveController() const; + /// Sets all emulated controllers into configuring mode. void EnableAllControllerConfiguration(); @@ -77,6 +83,7 @@ private: std::unique_ptr<EmulatedConsole> console; std::unique_ptr<EmulatedDevices> devices; NpadStyleTag supported_style_tag{NpadStyleSet::All}; + NpadIdType last_active_controller{NpadIdType::Handheld}; }; } // namespace Core::HID |
