configure_cpu.h 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  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. namespace Core {
  7. class System;
  8. }
  9. namespace ConfigurationShared {
  10. enum class CheckState;
  11. }
  12. namespace Ui {
  13. class ConfigureCpu;
  14. }
  15. class ConfigureCpu : public QWidget {
  16. Q_OBJECT
  17. public:
  18. explicit ConfigureCpu(const Core::System& system_, QWidget* parent = nullptr);
  19. ~ConfigureCpu() override;
  20. void ApplyConfiguration();
  21. void SetConfiguration();
  22. private:
  23. void changeEvent(QEvent* event) override;
  24. void RetranslateUI();
  25. void UpdateGroup(int index);
  26. void SetupPerGameUI();
  27. std::unique_ptr<Ui::ConfigureCpu> ui;
  28. ConfigurationShared::CheckState cpuopt_unsafe_unfuse_fma;
  29. ConfigurationShared::CheckState cpuopt_unsafe_reduce_fp_error;
  30. ConfigurationShared::CheckState cpuopt_unsafe_ignore_standard_fpcr;
  31. ConfigurationShared::CheckState cpuopt_unsafe_inaccurate_nan;
  32. ConfigurationShared::CheckState cpuopt_unsafe_fastmem_check;
  33. ConfigurationShared::CheckState cpuopt_unsafe_ignore_global_monitor;
  34. const Core::System& system;
  35. };