summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/ControlReference
diff options
context:
space:
mode:
authorLioncash <mai.iam2048@gmail.com>2023-12-12 13:50:44 -0500
committerLioncash <mai.iam2048@gmail.com>2023-12-12 13:50:46 -0500
commitea71a76ea965d03ccc600ce070a58b9c335fe63f (patch)
tree697729fc221d33868f37a58ecd168acb7f60fbf2 /Source/Core/InputCommon/ControlReference
parent2c6bf2d224f5f3732d53244de53be266bbec2ac3 (diff)
ExpressionParser: Pass control qualifiers by const reference
These aren't necessarily cheap to copy, since a control qualifier will have around 3 std::strings inside of it, so passing by value can churn allocations a little bit.
Diffstat (limited to 'Source/Core/InputCommon/ControlReference')
-rw-r--r--Source/Core/InputCommon/ControlReference/ExpressionParser.cpp6
-rw-r--r--Source/Core/InputCommon/ControlReference/ExpressionParser.h6
2 files changed, 6 insertions, 6 deletions
diff --git a/Source/Core/InputCommon/ControlReference/ExpressionParser.cpp b/Source/Core/InputCommon/ControlReference/ExpressionParser.cpp
index c93dcc5c3d..4463118d39 100644
--- a/Source/Core/InputCommon/ControlReference/ExpressionParser.cpp
+++ b/Source/Core/InputCommon/ControlReference/ExpressionParser.cpp
@@ -600,7 +600,7 @@ private:
std::unique_ptr<Expression> m_rhs;
};
-std::shared_ptr<Device> ControlEnvironment::FindDevice(ControlQualifier qualifier) const
+std::shared_ptr<Device> ControlEnvironment::FindDevice(const ControlQualifier& qualifier) const
{
if (qualifier.has_device)
return container.FindDevice(qualifier.device_qualifier);
@@ -608,7 +608,7 @@ std::shared_ptr<Device> ControlEnvironment::FindDevice(ControlQualifier qualifie
return container.FindDevice(default_device);
}
-Device::Input* ControlEnvironment::FindInput(ControlQualifier qualifier) const
+Device::Input* ControlEnvironment::FindInput(const ControlQualifier& qualifier) const
{
const std::shared_ptr<Device> device = FindDevice(qualifier);
if (!device)
@@ -617,7 +617,7 @@ Device::Input* ControlEnvironment::FindInput(ControlQualifier qualifier) const
return device->FindInput(qualifier.control_name);
}
-Device::Output* ControlEnvironment::FindOutput(ControlQualifier qualifier) const
+Device::Output* ControlEnvironment::FindOutput(const ControlQualifier& qualifier) const
{
const std::shared_ptr<Device> device = FindDevice(qualifier);
if (!device)
diff --git a/Source/Core/InputCommon/ControlReference/ExpressionParser.h b/Source/Core/InputCommon/ControlReference/ExpressionParser.h
index 405445b8a0..bc39762127 100644
--- a/Source/Core/InputCommon/ControlReference/ExpressionParser.h
+++ b/Source/Core/InputCommon/ControlReference/ExpressionParser.h
@@ -150,9 +150,9 @@ public:
{
}
- std::shared_ptr<Core::Device> FindDevice(ControlQualifier qualifier) const;
- Core::Device::Input* FindInput(ControlQualifier qualifier) const;
- Core::Device::Output* FindOutput(ControlQualifier qualifier) const;
+ std::shared_ptr<Core::Device> FindDevice(const ControlQualifier& qualifier) const;
+ Core::Device::Input* FindInput(const ControlQualifier& qualifier) const;
+ Core::Device::Output* FindOutput(const ControlQualifier& qualifier) const;
// Returns an existing variable by the specified name if already existing. Creates it otherwise.
std::shared_ptr<ControlState> GetVariablePtr(const std::string& name);