diff --git a/src/frontend/EmuThread.cpp b/src/frontend/EmuThread.cpp index 4c7d0892..9dc6f3f4 100644 --- a/src/frontend/EmuThread.cpp +++ b/src/frontend/EmuThread.cpp @@ -1,6 +1,5 @@ #include #include -#include EmuThread::EmuThread(const std::shared_ptr &core, RenderWidget &renderWidget, SettingsWindow &settings) noexcept : renderWidget(renderWidget), core(core), settings(settings) {} @@ -36,7 +35,7 @@ void EmuThread::TogglePause() const noexcept { core->cpu->GetMem().mmio.si.pif.movie.GetFilename()); } -void EmuThread::SetRender(bool v) const noexcept { core->render = v; } +void EmuThread::SetRender(const bool v) const noexcept { core->render = v; } void EmuThread::Reset() const noexcept { core->pause = true; diff --git a/src/frontend/InputSettings.cpp b/src/frontend/InputSettings.cpp index 34b88922..a01a1ee5 100644 --- a/src/frontend/InputSettings.cpp +++ b/src/frontend/InputSettings.cpp @@ -1,25 +1,25 @@ #include #include -InputSettings::InputSettings(nlohmann::json &settings) : settings(settings), QWidget(nullptr) { - n64_button_labels[0] = std::make_unique("A"); - n64_button_labels[1] = std::make_unique("B"); - n64_button_labels[2] = std::make_unique("Z"); - n64_button_labels[3] = std::make_unique("Start"); - n64_button_labels[4] = std::make_unique("L"); - n64_button_labels[5] = std::make_unique("R"); - n64_button_labels[6] = std::make_unique("Dpad Up"); - n64_button_labels[7] = std::make_unique("Dpad Down"); - n64_button_labels[8] = std::make_unique("Dpad Left"); - n64_button_labels[9] = std::make_unique("Dpad Right"); - n64_button_labels[10] = std::make_unique("C Up"); - n64_button_labels[11] = std::make_unique("C Down"); - n64_button_labels[12] = std::make_unique("C Left"); - n64_button_labels[13] = std::make_unique("C Right"); - n64_button_labels[14] = std::make_unique("Analog Up"); - n64_button_labels[15] = std::make_unique("Analog Down"); - n64_button_labels[16] = std::make_unique("Analog Left"); - n64_button_labels[17] = std::make_unique("Analog Right"); +InputSettings::InputSettings(nlohmann::json &settings) : QWidget(nullptr), settings(settings) { + buttonLabels[0] = std::make_unique("A"); + buttonLabels[1] = std::make_unique("B"); + buttonLabels[2] = std::make_unique("Z"); + buttonLabels[3] = std::make_unique("Start"); + buttonLabels[4] = std::make_unique("L"); + buttonLabels[5] = std::make_unique("R"); + buttonLabels[6] = std::make_unique("Dpad Up"); + buttonLabels[7] = std::make_unique("Dpad Down"); + buttonLabels[8] = std::make_unique("Dpad Left"); + buttonLabels[9] = std::make_unique("Dpad Right"); + buttonLabels[10] = std::make_unique("C Up"); + buttonLabels[11] = std::make_unique("C Down"); + buttonLabels[12] = std::make_unique("C Left"); + buttonLabels[13] = std::make_unique("C Right"); + buttonLabels[14] = std::make_unique("Analog Up"); + buttonLabels[15] = std::make_unique("Analog Down"); + buttonLabels[16] = std::make_unique("Analog Left"); + buttonLabels[17] = std::make_unique("Analog Right"); auto str = JSONGetField(settings, "input", "A"); kb_buttons[0] = std::make_unique(str.c_str()); @@ -135,7 +135,7 @@ void InputSettings::keyPressEvent(QKeyEvent *e) { } } -std::array InputSettings::GetMappedKeys() { +std::array InputSettings::GetMappedKeys() const { std::array ret{}; for (int i = 0; i < 18; i++) { diff --git a/src/frontend/InputSettings.hpp b/src/frontend/InputSettings.hpp index 9a23e6fe..29b76e88 100644 --- a/src/frontend/InputSettings.hpp +++ b/src/frontend/InputSettings.hpp @@ -27,7 +27,7 @@ public: InputSettings(nlohmann::json &); nlohmann::json &settings; void keyPressEvent(QKeyEvent *) override; - std::array GetMappedKeys(); + std::array GetMappedKeys() const; Q_SIGNALS: void modified(); }; diff --git a/src/frontend/RenderWidget.hpp b/src/frontend/RenderWidget.hpp index 969f28d0..1083099e 100644 --- a/src/frontend/RenderWidget.hpp +++ b/src/frontend/RenderWidget.hpp @@ -14,13 +14,17 @@ struct QtInstanceFactory : Vulkan::InstanceFactory { VkInstance create_instance(const VkInstanceCreateInfo *info) override { handle.setApiVersion({1, 3, 0}); QByteArrayList exts; + exts.resize(info->enabledExtensionCount); for (int i = 0; i < info->enabledExtensionCount; i++) { - exts.push_back(QByteArray::fromStdString(info->ppEnabledExtensionNames[i])); + exts[i] = info->ppEnabledExtensionNames[i]; } + QByteArrayList layers; + layers.resize(info->enabledExtensionCount); for (int i = 0; i < info->enabledLayerCount; i++) { - layers.push_back(QByteArray::fromStdString(info->ppEnabledLayerNames[i])); + layers[i] = info->ppEnabledLayerNames[i]; } + handle.setExtensions(exts); handle.setLayers(layers); handle.setApiVersion({1, 3, 0}); @@ -49,9 +53,11 @@ public: std::vector get_instance_extensions() override { auto vec = std::vector(); + const auto &extensions = window->vulkanInstance()->supportedExtensions(); + vec.reserve(extensions.size()); - for (const auto &ext : window->vulkanInstance()->supportedExtensions()) { - vec.push_back(ext.name); + for (const auto &ext : extensions) { + vec.emplace_back(ext.name); } return vec;