summaryrefslogtreecommitdiff
path: root/src/video_core/gpu.h
diff options
context:
space:
mode:
authorGravatar David Marcec2020-07-10 13:36:38 +1000
committerGravatar David Marcec2020-07-17 14:24:57 +1000
commit468bd9c1b0f9e74f7c096b127a94a94e4ed7caec (patch)
tree50a0f28b7c817222247369400bedf5de1ccc4e19 /src/video_core/gpu.h
parentMerge pull request #4347 from lioncash/logging (diff)
downloadyuzu-468bd9c1b0f9e74f7c096b127a94a94e4ed7caec.tar.gz
yuzu-468bd9c1b0f9e74f7c096b127a94a94e4ed7caec.tar.xz
yuzu-468bd9c1b0f9e74f7c096b127a94a94e4ed7caec.zip
async shaders
Diffstat (limited to 'src/video_core/gpu.h')
-rw-r--r--src/video_core/gpu.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/video_core/gpu.h b/src/video_core/gpu.h
index 2c42483bd..8d04d9fd9 100644
--- a/src/video_core/gpu.h
+++ b/src/video_core/gpu.h
@@ -33,6 +33,7 @@ class System;
33 33
34namespace VideoCore { 34namespace VideoCore {
35class RendererBase; 35class RendererBase;
36class ShaderNotify;
36} // namespace VideoCore 37} // namespace VideoCore
37 38
38namespace Tegra { 39namespace Tegra {
@@ -207,6 +208,14 @@ public:
207 return *renderer; 208 return *renderer;
208 } 209 }
209 210
211 VideoCore::ShaderNotify& ShaderNotify() {
212 return *shader_notify;
213 }
214
215 const VideoCore::ShaderNotify& ShaderNotify() const {
216 return *shader_notify;
217 }
218
210 // Waits for the GPU to finish working 219 // Waits for the GPU to finish working
211 virtual void WaitIdle() const = 0; 220 virtual void WaitIdle() const = 0;
212 221
@@ -347,6 +356,8 @@ private:
347 std::unique_ptr<Engines::MaxwellDMA> maxwell_dma; 356 std::unique_ptr<Engines::MaxwellDMA> maxwell_dma;
348 /// Inline memory engine 357 /// Inline memory engine
349 std::unique_ptr<Engines::KeplerMemory> kepler_memory; 358 std::unique_ptr<Engines::KeplerMemory> kepler_memory;
359 /// Shader build notifier
360 std::unique_ptr<VideoCore::ShaderNotify> shader_notify;
350 361
351 std::array<std::atomic<u32>, Service::Nvidia::MaxSyncPoints> syncpoints{}; 362 std::array<std::atomic<u32>, Service::Nvidia::MaxSyncPoints> syncpoints{};
352 363