diff options
| author | bunnei <bunneidev@gmail.com> | 2018-12-23 14:36:51 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-12-23 14:36:51 -0500 |
| commit | 9a22a94a510e6f537b5156a960f0d49307089668 (patch) | |
| tree | 05d895b5fc1aa0caa51cce9314fd1c81244f69a0 /src/video_core/renderer_base.cpp | |
| parent | 52726342bd7b030b1a79e577a637d8a325d21dc8 (diff) | |
| parent | a2be49305d8c5c66cfa2ec2060688013cf3729b9 (diff) | |
Merge pull request #1886 from FearlessTobi/port-4164
Port citra-emu/citra#4164: "citra_qt, video_core: Screenshot functionality"
Diffstat (limited to 'src/video_core/renderer_base.cpp')
| -rw-r--r-- | src/video_core/renderer_base.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/video_core/renderer_base.cpp b/src/video_core/renderer_base.cpp index 1482cdb40..94223f45f 100644 --- a/src/video_core/renderer_base.cpp +++ b/src/video_core/renderer_base.cpp @@ -27,4 +27,16 @@ void RendererBase::UpdateCurrentFramebufferLayout() { render_window.UpdateCurrentFramebufferLayout(layout.width, layout.height); } +void RendererBase::RequestScreenshot(void* data, std::function<void()> callback, + const Layout::FramebufferLayout& layout) { + if (renderer_settings.screenshot_requested) { + LOG_ERROR(Render, "A screenshot is already requested or in progress, ignoring the request"); + return; + } + renderer_settings.screenshot_bits = data; + renderer_settings.screenshot_complete_callback = std::move(callback); + renderer_settings.screenshot_framebuffer_layout = layout; + renderer_settings.screenshot_requested = true; +} + } // namespace VideoCore |
