configure_cpu.h 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. // SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project
  2. // SPDX-License-Identifier: GPL-2.0-or-later
  3. #pragma once
  4. #include <memory>
  5. #include <QWidget>
  6. #include "yuzu/configuration/configuration_shared.h"
  7. namespace Core {
  8. class System;
  9. }
  10. namespace Ui {
  11. class ConfigureCpu;
  12. }
  13. class ConfigureCpu : public ConfigurationShared::Tab {
  14. public:
  15. explicit ConfigureCpu(const Core::System& system_,
  16. std::shared_ptr<std::forward_list<ConfigurationShared::Tab*>> group,
  17. QWidget* parent = nullptr);
  18. ~ConfigureCpu() override;
  19. void ApplyConfiguration() override;
  20. void SetConfiguration() override;
  21. private:
  22. void changeEvent(QEvent* event) override;
  23. void RetranslateUI();
  24. void UpdateGroup(int index);
  25. void SetupPerGameUI();
  26. std::unique_ptr<Ui::ConfigureCpu> ui;
  27. ConfigurationShared::CheckState cpuopt_unsafe_unfuse_fma;
  28. ConfigurationShared::CheckState cpuopt_unsafe_reduce_fp_error;
  29. ConfigurationShared::CheckState cpuopt_unsafe_ignore_standard_fpcr;
  30. ConfigurationShared::CheckState cpuopt_unsafe_inaccurate_nan;
  31. ConfigurationShared::CheckState cpuopt_unsafe_fastmem_check;
  32. ConfigurationShared::CheckState cpuopt_unsafe_ignore_global_monitor;
  33. const Core::System& system;
  34. };