summaryrefslogtreecommitdiff
path: root/src/common
diff options
context:
space:
mode:
authorNarr the Reg <juangerman-13@hotmail.com>2021-12-14 19:10:39 -0600
committerGitHub <noreply@github.com>2021-12-14 19:10:39 -0600
commit5e732e7aecc38e863674120ee28842a719f35896 (patch)
tree917f7c75447bc11f36778d1af4fced7e8fcef80c /src/common
parentac0c5be7c04527bd12058ea6b8b7c6e594571a0c (diff)
parente05d2a70b24e550d67fcdd24aae7094ad41745f8 (diff)
Merge pull request #7581 from lioncash/input-iface
common/input: Avoid numerous large copies of CallbackStatus
Diffstat (limited to 'src/common')
-rw-r--r--src/common/input.h12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/common/input.h b/src/common/input.h
index 0b92449bc..f775a4c01 100644
--- a/src/common/input.h
+++ b/src/common/input.h
@@ -227,7 +227,7 @@ struct CallbackStatus {
// Triggered once every input change
struct InputCallback {
- std::function<void(CallbackStatus)> on_change;
+ std::function<void(const CallbackStatus&)> on_change;
};
/// An abstract class template for an input device (a button, an analog input, etc.).
@@ -236,14 +236,10 @@ public:
virtual ~InputDevice() = default;
// Request input device to update if necessary
- virtual void SoftUpdate() {
- return;
- }
+ virtual void SoftUpdate() {}
// Force input device to update data regardless of the current state
- virtual void ForceUpdate() {
- return;
- }
+ virtual void ForceUpdate() {}
// Sets the function to be triggered when input changes
void SetCallback(InputCallback callback_) {
@@ -251,7 +247,7 @@ public:
}
// Triggers the function set in the callback
- void TriggerOnChange(CallbackStatus status) {
+ void TriggerOnChange(const CallbackStatus& status) {
if (callback.on_change) {
callback.on_change(status);
}