summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/ControllerInterface/InputBackend.h
diff options
context:
space:
mode:
authorAdmiral H. Curtiss <pikachu025@gmail.com>2023-12-29 20:17:04 +0100
committerGitHub <noreply@github.com>2023-12-29 20:17:04 +0100
commit99fbc4b97ecc21c82a8cde602af1bf3b47a186d2 (patch)
treec42b16871bed955e337895a8d3c42ee17cf164c8 /Source/Core/InputCommon/ControllerInterface/InputBackend.h
parentbf0ac9de0ccf004b86ccadd0a0212fc6804d7600 (diff)
parente456bef163c1b667ff5a045a4bda66b30326ae90 (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.h13
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();