diff options
author | Fernando Sahmkow <[email protected]> | 2022-02-06 01:16:11 +0100 |
---|---|---|
committer | Fernando Sahmkow <[email protected]> | 2022-10-06 21:00:52 +0200 |
commit | bc8b3d225eda388f0603830cbff8357893abb0f9 (patch) | |
tree | 479b41b73913feceeeb0c9c6f3147d6491c0fa04 /src/video_core/rasterizer_interface.h | |
parent | 4d60410dd979fb688de7735d2b4b25a557bdeac7 (diff) | |
download | yuzu-mainline-bc8b3d225eda388f0603830cbff8357893abb0f9.tar.gz yuzu-mainline-bc8b3d225eda388f0603830cbff8357893abb0f9.zip |
VideoCore: Refactor fencing system.
Diffstat (limited to 'src/video_core/rasterizer_interface.h')
-rw-r--r-- | src/video_core/rasterizer_interface.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/video_core/rasterizer_interface.h b/src/video_core/rasterizer_interface.h index 5362aafb6..cb07f3d38 100644 --- a/src/video_core/rasterizer_interface.h +++ b/src/video_core/rasterizer_interface.h @@ -62,7 +62,10 @@ public: virtual void DisableGraphicsUniformBuffer(size_t stage, u32 index) = 0; /// Signal a GPU based semaphore as a fence - virtual void SignalSemaphore(GPUVAddr addr, u32 value) = 0; + virtual void SignalFence(std::function<void()>&& func) = 0; + + /// Send an operation to be done after a certain amount of flushes. + virtual void SyncOperation(std::function<void()>&& func) = 0; /// Signal a GPU based syncpoint as a fence virtual void SignalSyncPoint(u32 value) = 0; @@ -89,7 +92,7 @@ public: virtual void OnCPUWrite(VAddr addr, u64 size) = 0; /// Sync memory between guest and host. - virtual void SyncGuestHost() = 0; + virtual void InvalidateGPUCache() = 0; /// Unmap memory range virtual void UnmapMemory(VAddr addr, u64 size) = 0; |