diff options
| author | Admiral H. Curtiss <pikachu025@gmail.com> | 2023-12-29 20:17:04 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-12-29 20:17:04 +0100 |
| commit | 99fbc4b97ecc21c82a8cde602af1bf3b47a186d2 (patch) | |
| tree | c42b16871bed955e337895a8d3c42ee17cf164c8 /Source/Core/InputCommon/ControllerInterface/InputBackend.h | |
| parent | bf0ac9de0ccf004b86ccadd0a0212fc6804d7600 (diff) | |
| parent | e456bef163c1b667ff5a045a4bda66b30326ae90 (diff) | |
Merge pull request #11885 from Filoppi/devices_deadlock_fix_v2
Input: Improve Controller Interface devices threading
Diffstat (limited to 'Source/Core/InputCommon/ControllerInterface/InputBackend.h')
| -rw-r--r-- | Source/Core/InputCommon/ControllerInterface/InputBackend.h | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/Source/Core/InputCommon/ControllerInterface/InputBackend.h b/Source/Core/InputCommon/ControllerInterface/InputBackend.h index 653bc16df1..80ced7e194 100644 --- a/Source/Core/InputCommon/ControllerInterface/InputBackend.h +++ b/Source/Core/InputCommon/ControllerInterface/InputBackend.h @@ -3,10 +3,19 @@ #pragma once +#include <memory> +#include <vector> + class ControllerInterface; namespace ciface { + +namespace Core +{ +class Device; +} + class InputBackend { public: @@ -15,7 +24,9 @@ public: virtual ~InputBackend(); virtual void PopulateDevices() = 0; - virtual void UpdateInput(); + // Do NOT directly add/remove devices within here, + // just add them to the removal list if necessary. + virtual void UpdateInput(std::vector<std::weak_ptr<ciface::Core::Device>>& devices_to_remove); ControllerInterface& GetControllerInterface(); |
