diff options
author | James Rowe <jroweboy@gmail.com> | 2020-03-25 03:58:49 +0100 |
---|---|---|
committer | James Rowe <jroweboy@gmail.com> | 2020-03-25 04:03:42 +0100 |
commit | 282adfc70b5d7d958d564bfda0227bb3fbd8d110 (patch) | |
tree | 2a98e3bedec2e7fdb33478814a73be664661aecc /src/video_core/gpu_thread.cpp | |
parent | Use the correct directory for Qt Plugins (diff) | |
download | yuzu-282adfc70b5d7d958d564bfda0227bb3fbd8d110.tar yuzu-282adfc70b5d7d958d564bfda0227bb3fbd8d110.tar.gz yuzu-282adfc70b5d7d958d564bfda0227bb3fbd8d110.tar.bz2 yuzu-282adfc70b5d7d958d564bfda0227bb3fbd8d110.tar.lz yuzu-282adfc70b5d7d958d564bfda0227bb3fbd8d110.tar.xz yuzu-282adfc70b5d7d958d564bfda0227bb3fbd8d110.tar.zst yuzu-282adfc70b5d7d958d564bfda0227bb3fbd8d110.zip |
Diffstat (limited to '')
-rw-r--r-- | src/video_core/gpu_thread.cpp | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/video_core/gpu_thread.cpp b/src/video_core/gpu_thread.cpp index b1088af3d..270c7ae0d 100644 --- a/src/video_core/gpu_thread.cpp +++ b/src/video_core/gpu_thread.cpp @@ -5,7 +5,7 @@ #include "common/assert.h" #include "common/microprofile.h" #include "core/core.h" -#include "core/frontend/scope_acquire_context.h" +#include "core/frontend/emu_window.h" #include "video_core/dma_pusher.h" #include "video_core/gpu.h" #include "video_core/gpu_thread.h" @@ -14,8 +14,8 @@ namespace VideoCommon::GPUThread { /// Runs the GPU thread -static void RunThread(VideoCore::RendererBase& renderer, Tegra::DmaPusher& dma_pusher, - SynchState& state) { +static void RunThread(VideoCore::RendererBase& renderer, Core::Frontend::GraphicsContext& context, + Tegra::DmaPusher& dma_pusher, SynchState& state) { MicroProfileOnThreadCreate("GpuThread"); // Wait for first GPU command before acquiring the window context @@ -27,7 +27,7 @@ static void RunThread(VideoCore::RendererBase& renderer, Tegra::DmaPusher& dma_p return; } - Core::Frontend::ScopeAcquireContext acquire_context{renderer.GetRenderWindow()}; + auto current_context = context.Acquire(); CommandDataContainer next; while (state.is_running) { @@ -62,8 +62,11 @@ ThreadManager::~ThreadManager() { thread.join(); } -void ThreadManager::StartThread(VideoCore::RendererBase& renderer, Tegra::DmaPusher& dma_pusher) { - thread = std::thread{RunThread, std::ref(renderer), std::ref(dma_pusher), std::ref(state)}; +void ThreadManager::StartThread(VideoCore::RendererBase& renderer, + Core::Frontend::GraphicsContext& context, + Tegra::DmaPusher& dma_pusher) { + thread = std::thread{RunThread, std::ref(renderer), std::ref(context), std::ref(dma_pusher), + std::ref(state)}; } void ThreadManager::SubmitList(Tegra::CommandList&& entries) { |