diff options
| author | Léo Lam <leo@innovatetechnologi.es> | 2016-06-25 21:46:39 +0200 |
|---|---|---|
| committer | Léo Lam <leo@innovatetechnologi.es> | 2016-06-25 21:46:39 +0200 |
| commit | 8678133e8746fdc20f7d012005ebf2db370ddccc (patch) | |
| tree | ccca4a186be0e8ee93c733c8d2315e5dd0c20db2 /Source/Core/InputCommon/ControllerInterface/Device.h | |
| parent | afa202738e54652e98e8388a5c6a1541d750e3e6 (diff) | |
ControllerInterface: Switch to std::shared_ptr
Small cleanup by using std::shared_ptr and getting rid of
ciface.Devices() which just returned the m_devices (which defeats the
point of making m_devices protected).
Incidentally, this should make the code safer when we have
different threads accessing devices in the future (for hotplug?).
A lot of code use Device references directly so there is
no easy way to remove FindDevice() and make those unique_ptrs.
Diffstat (limited to 'Source/Core/InputCommon/ControllerInterface/Device.h')
| -rw-r--r-- | Source/Core/InputCommon/ControllerInterface/Device.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/Source/Core/InputCommon/ControllerInterface/Device.h b/Source/Core/InputCommon/ControllerInterface/Device.h index c3cddb3a79..23c499ec9d 100644 --- a/Source/Core/InputCommon/ControllerInterface/Device.h +++ b/Source/Core/InputCommon/ControllerInterface/Device.h @@ -164,12 +164,13 @@ public: Device::Input* FindInput(const std::string& name, const Device* def_dev) const; Device::Output* FindOutput(const std::string& name, const Device* def_dev) const; - const std::vector<Device*>& Devices() const { return m_devices; } - Device* FindDevice(const DeviceQualifier& devq) const; + std::vector<std::string> GetAllDeviceStrings() const; + std::string GetDefaultDeviceString() const; + std::shared_ptr<Device> FindDevice(const DeviceQualifier& devq) const; protected: - std::mutex m_devices_mutex; - std::vector<Device*> m_devices; + mutable std::mutex m_devices_mutex; + std::vector<std::shared_ptr<Device>> m_devices; }; } } |
