Procházet zdrojové kódy

configure_input_player: Avoid unnecessary ParamPackage copies

Avoids churning allocations.
Lioncash před 4 roky
rodič
revize
9ba6bab920
1 změnil soubory, kde provedl 6 přidání a 6 odebrání
  1. 6 6
      src/yuzu/configuration/configure_input_player.cpp

+ 6 - 6
src/yuzu/configuration/configure_input_player.cpp

@@ -326,7 +326,7 @@ ConfigureInputPlayer::ConfigureInputPlayer(QWidget* parent, std::size_t player_i
         connect(button, &QPushButton::clicked, [=, this] {
         connect(button, &QPushButton::clicked, [=, this] {
             HandleClick(
             HandleClick(
                 button, button_id,
                 button, button_id,
-                [=, this](Common::ParamPackage params) {
+                [=, this](const Common::ParamPackage& params) {
                     emulated_controller->SetButtonParam(button_id, params);
                     emulated_controller->SetButtonParam(button_id, params);
                 },
                 },
                 InputCommon::Polling::InputType::Button);
                 InputCommon::Polling::InputType::Button);
@@ -392,7 +392,7 @@ ConfigureInputPlayer::ConfigureInputPlayer(QWidget* parent, std::size_t player_i
         connect(button, &QPushButton::clicked, [=, this] {
         connect(button, &QPushButton::clicked, [=, this] {
             HandleClick(
             HandleClick(
                 button, motion_id,
                 button, motion_id,
-                [=, this](Common::ParamPackage params) {
+                [=, this](const Common::ParamPackage& params) {
                     emulated_controller->SetMotionParam(motion_id, params);
                     emulated_controller->SetMotionParam(motion_id, params);
                 },
                 },
                 InputCommon::Polling::InputType::Motion);
                 InputCommon::Polling::InputType::Motion);
@@ -783,7 +783,7 @@ void ConfigureInputPlayer::UpdateInputDeviceCombobox() {
     if (devices.size() == 1) {
     if (devices.size() == 1) {
         const auto devices_it = std::find_if(
         const auto devices_it = std::find_if(
             input_devices.begin(), input_devices.end(),
             input_devices.begin(), input_devices.end(),
-            [first_engine, first_guid, first_port, first_pad](const Common::ParamPackage param) {
+            [first_engine, first_guid, first_port, first_pad](const Common::ParamPackage& param) {
                 return param.Get("engine", "") == first_engine &&
                 return param.Get("engine", "") == first_engine &&
                        param.Get("guid", "") == first_guid && param.Get("port", 0) == first_port &&
                        param.Get("guid", "") == first_guid && param.Get("port", 0) == first_port &&
                        param.Get("pad", 0) == first_pad;
                        param.Get("pad", 0) == first_pad;
@@ -814,7 +814,7 @@ void ConfigureInputPlayer::UpdateInputDeviceCombobox() {
     if (is_engine_equal && is_port_equal) {
     if (is_engine_equal && is_port_equal) {
         const auto devices_it = std::find_if(
         const auto devices_it = std::find_if(
             input_devices.begin(), input_devices.end(),
             input_devices.begin(), input_devices.end(),
-            [first_engine, first_guid, second_guid, first_port](const Common::ParamPackage param) {
+            [first_engine, first_guid, second_guid, first_port](const Common::ParamPackage& param) {
                 const bool is_guid_valid =
                 const bool is_guid_valid =
                     (param.Get("guid", "") == first_guid &&
                     (param.Get("guid", "") == first_guid &&
                      param.Get("guid2", "") == second_guid) ||
                      param.Get("guid2", "") == second_guid) ||
@@ -1026,7 +1026,7 @@ int ConfigureInputPlayer::GetIndexFromControllerType(Core::HID::NpadStyleIndex t
 void ConfigureInputPlayer::UpdateInputDevices() {
 void ConfigureInputPlayer::UpdateInputDevices() {
     input_devices = input_subsystem->GetInputDevices();
     input_devices = input_subsystem->GetInputDevices();
     ui->comboDevices->clear();
     ui->comboDevices->clear();
-    for (auto device : input_devices) {
+    for (const auto& device : input_devices) {
         ui->comboDevices->addItem(QString::fromStdString(device.Get("display", "Unknown")), {});
         ui->comboDevices->addItem(QString::fromStdString(device.Get("display", "Unknown")), {});
     }
     }
 }
 }
@@ -1358,7 +1358,7 @@ bool ConfigureInputPlayer::IsInputAcceptable(const Common::ParamPackage& params)
         return params.Get("engine", "") == "keyboard" || params.Get("engine", "") == "mouse";
         return params.Get("engine", "") == "keyboard" || params.Get("engine", "") == "mouse";
     }
     }
 
 
-    const auto current_input_device = input_devices[ui->comboDevices->currentIndex()];
+    const auto& current_input_device = input_devices[ui->comboDevices->currentIndex()];
     return params.Get("engine", "") == current_input_device.Get("engine", "") &&
     return params.Get("engine", "") == current_input_device.Get("engine", "") &&
            (params.Get("guid", "") == current_input_device.Get("guid", "") ||
            (params.Get("guid", "") == current_input_device.Get("guid", "") ||
             params.Get("guid", "") == current_input_device.Get("guid2", "")) &&
             params.Get("guid", "") == current_input_device.Get("guid2", "")) &&