mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-23 06:09:50 -06:00
Input: Improve Controller Interface devices threading
This specific issue was already addressed by https://github.com/dolphin-emu/dolphin/pull/11635 though I felt like there was something more we could do, and wasn't too happy with the likelihood of devices update calls being skipped (due to `m_devices_population_mutex` being locked).
This commit is contained in:
@ -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();
|
||||
|
||||
|
Reference in New Issue
Block a user