2014-09-13 01:06:13 +01:00
|
|
|
// Copyright 2014 Citra Emulator Project
|
2014-12-17 05:38:14 +00:00
|
|
|
// Licensed under GPLv2 or any later version
|
2014-09-13 01:06:13 +01:00
|
|
|
// Refer to the license.txt file included.
|
|
|
|
|
2017-12-20 18:44:32 +00:00
|
|
|
#include "audio_core/dsp_interface.h"
|
|
|
|
#include "core/core.h"
|
2016-04-11 13:38:42 +01:00
|
|
|
#include "core/gdbstub/gdbstub.h"
|
2017-01-20 20:46:39 +00:00
|
|
|
#include "core/hle/service/hid/hid.h"
|
2017-03-31 20:27:18 +01:00
|
|
|
#include "core/hle/service/ir/ir.h"
|
2017-05-28 00:31:42 +01:00
|
|
|
#include "core/settings.h"
|
2016-04-11 13:38:42 +01:00
|
|
|
#include "video_core/video_core.h"
|
|
|
|
|
2016-12-23 13:37:40 +00:00
|
|
|
#include "core/frontend/emu_window.h"
|
2016-05-03 07:07:17 +01:00
|
|
|
|
2014-09-13 01:06:13 +01:00
|
|
|
namespace Settings {
|
|
|
|
|
|
|
|
Values values = {};
|
|
|
|
|
2016-04-11 13:38:42 +01:00
|
|
|
void Apply() {
|
|
|
|
|
2017-01-31 17:44:23 +00:00
|
|
|
GDBStub::SetServerPort(values.gdbstub_port);
|
2016-04-11 13:38:42 +01:00
|
|
|
GDBStub::ToggleServer(values.use_gdbstub);
|
|
|
|
|
|
|
|
VideoCore::g_hw_renderer_enabled = values.use_hw_renderer;
|
|
|
|
VideoCore::g_shader_jit_enabled = values.use_shader_jit;
|
2016-04-27 13:53:23 +01:00
|
|
|
|
2016-05-03 07:07:17 +01:00
|
|
|
if (VideoCore::g_emu_window) {
|
|
|
|
auto layout = VideoCore::g_emu_window->GetFramebufferLayout();
|
|
|
|
VideoCore::g_emu_window->UpdateCurrentFramebufferLayout(layout.width, layout.height);
|
|
|
|
}
|
|
|
|
|
2017-12-20 18:44:32 +00:00
|
|
|
if (Core::System::GetInstance().IsPoweredOn()) {
|
|
|
|
Core::DSP().SetSink(values.sink_id);
|
|
|
|
Core::DSP().EnableStretching(values.enable_audio_stretching);
|
|
|
|
}
|
2017-01-20 20:46:39 +00:00
|
|
|
|
|
|
|
Service::HID::ReloadInputDevices();
|
2017-02-25 19:21:52 +00:00
|
|
|
Service::IR::ReloadInputDevices();
|
2014-09-13 01:06:13 +01:00
|
|
|
}
|
2016-04-11 13:38:42 +01:00
|
|
|
|
2017-08-25 22:53:07 +01:00
|
|
|
} // namespace Settings
|