settings.cpp 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. // Copyright 2014 Citra Emulator Project
  2. // Licensed under GPLv2 or any later version
  3. // Refer to the license.txt file included.
  4. #include "audio_core/audio_core.h"
  5. #include "core/gdbstub/gdbstub.h"
  6. #include "core/hle/service/hid/hid.h"
  7. #include "core/hle/service/ir/ir.h"
  8. #include "core/settings.h"
  9. #include "video_core/video_core.h"
  10. #include "core/frontend/emu_window.h"
  11. namespace Settings {
  12. Values values = {};
  13. void Apply() {
  14. GDBStub::SetServerPort(values.gdbstub_port);
  15. GDBStub::ToggleServer(values.use_gdbstub);
  16. VideoCore::g_hw_renderer_enabled = values.use_hw_renderer;
  17. VideoCore::g_shader_jit_enabled = values.use_shader_jit;
  18. VideoCore::g_toggle_framelimit_enabled = values.toggle_framelimit;
  19. if (VideoCore::g_emu_window) {
  20. auto layout = VideoCore::g_emu_window->GetFramebufferLayout();
  21. VideoCore::g_emu_window->UpdateCurrentFramebufferLayout(layout.width, layout.height);
  22. }
  23. AudioCore::SelectSink(values.sink_id);
  24. AudioCore::EnableStretching(values.enable_audio_stretching);
  25. Service::HID::ReloadInputDevices();
  26. Service::IR::ReloadInputDevices();
  27. }
  28. } // namespace