summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/ControllerInterface/Device.h
diff options
context:
space:
mode:
authorLéo Lam <leo@innovatetechnologi.es>2019-05-30 14:33:53 +0200
committerGitHub <noreply@github.com>2019-05-30 14:33:53 +0200
commit00ecfb3c598ec08e5863db9c697e91ab5a4965bf (patch)
tree94f153e7a4d0e2d3b6a39b1e5c95bd80aa426f24 /Source/Core/InputCommon/ControllerInterface/Device.h
parent4e7a790648770bbe0c12b6bc1278111af524df9c (diff)
parent02634350500bd4e7b85425cae7bb43a050b5aee4 (diff)
Merge pull request #8138 from lioncash/input-string
ControllerInterface/Device: Minor cleanup
Diffstat (limited to 'Source/Core/InputCommon/ControllerInterface/Device.h')
-rw-r--r--Source/Core/InputCommon/ControllerInterface/Device.h21
1 files changed, 11 insertions, 10 deletions
diff --git a/Source/Core/InputCommon/ControllerInterface/Device.h b/Source/Core/InputCommon/ControllerInterface/Device.h
index ac18c18803..a2cf0a329a 100644
--- a/Source/Core/InputCommon/ControllerInterface/Device.h
+++ b/Source/Core/InputCommon/ControllerInterface/Device.h
@@ -8,6 +8,7 @@
#include <mutex>
#include <optional>
#include <string>
+#include <string_view>
#include <vector>
#include "Common/CommonTypes.h"
@@ -42,14 +43,14 @@ public:
class Control // input or output
{
public:
+ virtual ~Control() = default;
virtual std::string GetName() const = 0;
- virtual ~Control() {}
virtual Input* ToInput() { return nullptr; }
virtual Output* ToOutput() { return nullptr; }
// May be overridden to allow multiple valid names.
// Useful for backwards-compatible configurations when names change.
- virtual bool IsMatchingName(const std::string& name) const;
+ virtual bool IsMatchingName(std::string_view name) const;
};
//
@@ -111,8 +112,8 @@ public:
const std::vector<Input*>& Inputs() const { return m_inputs; }
const std::vector<Output*>& Outputs() const { return m_outputs; }
- Input* FindInput(const std::string& name) const;
- Output* FindOutput(const std::string& name) const;
+ Input* FindInput(std::string_view name) const;
+ Output* FindOutput(std::string_view name) const;
protected:
void AddInput(Input* const i);
@@ -124,7 +125,7 @@ protected:
FullAnalogSurface(Input* low, Input* high) : m_low(*low), m_high(*high) {}
ControlState GetState() const override;
std::string GetName() const override;
- bool IsMatchingName(const std::string& name) const override;
+ bool IsMatchingName(std::string_view name) const override;
private:
Input& m_low;
@@ -155,8 +156,8 @@ class DeviceQualifier
{
public:
DeviceQualifier() : cid(-1) {}
- DeviceQualifier(const std::string& _source, const int _id, const std::string& _name)
- : source(_source), cid(_id), name(_name)
+ DeviceQualifier(std::string source_, const int id_, std::string name_)
+ : source(std::move(source_)), cid(id_), name(std::move(name_))
{
}
void FromDevice(const Device* const dev);
@@ -177,8 +178,8 @@ public:
class DeviceContainer
{
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;
+ Device::Input* FindInput(std::string_view name, const Device* def_dev) const;
+ Device::Output* FindOutput(std::string_view name, const Device* def_dev) const;
std::vector<std::string> GetAllDeviceStrings() const;
std::string GetDefaultDeviceString() const;
@@ -187,7 +188,7 @@ public:
bool HasConnectedDevice(const DeviceQualifier& qualifier) const;
std::pair<std::shared_ptr<Device>, Device::Input*>
- DetectInput(u32 wait_ms, std::vector<std::string> device_strings);
+ DetectInput(u32 wait_ms, const std::vector<std::string>& device_strings) const;
protected:
mutable std::mutex m_devices_mutex;