aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLioncash <mathew1800@gmail.com>2020-10-26 19:36:58 -0400
committerLioncash <mathew1800@gmail.com>2020-10-26 21:06:15 -0400
commit6b5f56532451631b63a57ca858dabc111b05711b (patch)
tree020a521bc01f9ace59eaa94df9f13b6ffd0cc465
parent98f4c5e7b80d1fee83df5d166f6b3755449b729e (diff)
controller: Pass ControllerParameters by reference in ReconfigureControllers()
Prevents unnecessary copies and heap reallocations from occurring.
-rw-r--r--src/core/frontend/applets/controller.cpp2
-rw-r--r--src/core/frontend/applets/controller.h4
-rw-r--r--src/yuzu/applets/controller.cpp2
-rw-r--r--src/yuzu/applets/controller.h8
4 files changed, 9 insertions, 7 deletions
diff --git a/src/core/frontend/applets/controller.cpp b/src/core/frontend/applets/controller.cpp
index c5d65f2d08..5582091f4b 100644
--- a/src/core/frontend/applets/controller.cpp
+++ b/src/core/frontend/applets/controller.cpp
@@ -19,7 +19,7 @@ DefaultControllerApplet::DefaultControllerApplet(Service::SM::ServiceManager& se
DefaultControllerApplet::~DefaultControllerApplet() = default;
void DefaultControllerApplet::ReconfigureControllers(std::function<void()> callback,
- ControllerParameters parameters) const {
+ const ControllerParameters& parameters) const {
LOG_INFO(Service_HID, "called, deducing the best configuration based on the given parameters!");
auto& npad =
diff --git a/src/core/frontend/applets/controller.h b/src/core/frontend/applets/controller.h
index 3e49cdbb93..dff71d8d98 100644
--- a/src/core/frontend/applets/controller.h
+++ b/src/core/frontend/applets/controller.h
@@ -38,7 +38,7 @@ public:
virtual ~ControllerApplet();
virtual void ReconfigureControllers(std::function<void()> callback,
- ControllerParameters parameters) const = 0;
+ const ControllerParameters& parameters) const = 0;
};
class DefaultControllerApplet final : public ControllerApplet {
@@ -47,7 +47,7 @@ public:
~DefaultControllerApplet() override;
void ReconfigureControllers(std::function<void()> callback,
- ControllerParameters parameters) const override;
+ const ControllerParameters& parameters) const override;
private:
Service::SM::ServiceManager& service_manager;
diff --git a/src/yuzu/applets/controller.cpp b/src/yuzu/applets/controller.cpp
index 2760487a3a..a3f7a0f622 100644
--- a/src/yuzu/applets/controller.cpp
+++ b/src/yuzu/applets/controller.cpp
@@ -589,7 +589,7 @@ QtControllerSelector::QtControllerSelector(GMainWindow& parent) {
QtControllerSelector::~QtControllerSelector() = default;
void QtControllerSelector::ReconfigureControllers(
- std::function<void()> callback, Core::Frontend::ControllerParameters parameters) const {
+ std::function<void()> callback, const Core::Frontend::ControllerParameters& parameters) const {
this->callback = std::move(callback);
emit MainWindowReconfigureControllers(parameters);
}
diff --git a/src/yuzu/applets/controller.h b/src/yuzu/applets/controller.h
index 2d6d588c62..729ecc831f 100644
--- a/src/yuzu/applets/controller.h
+++ b/src/yuzu/applets/controller.h
@@ -120,11 +120,13 @@ public:
explicit QtControllerSelector(GMainWindow& parent);
~QtControllerSelector() override;
- void ReconfigureControllers(std::function<void()> callback,
- Core::Frontend::ControllerParameters parameters) const override;
+ void ReconfigureControllers(
+ std::function<void()> callback,
+ const Core::Frontend::ControllerParameters& parameters) const override;
signals:
- void MainWindowReconfigureControllers(Core::Frontend::ControllerParameters parameters) const;
+ void MainWindowReconfigureControllers(
+ const Core::Frontend::ControllerParameters& parameters) const;
private:
void MainWindowReconfigureFinished();