diff options
| author | liamwhite <liamwhite@users.noreply.github.com> | 2023-05-07 19:05:56 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-05-07 19:05:56 -0400 |
| commit | 2688fb1aa2d80fc4edac87ff93365f3570cd3af8 (patch) | |
| tree | b874061d30aa6a03fd3c92116df92ed6d3b91a19 /src/video_core/buffer_cache/buffer_base.h | |
| parent | e58090c9c731701662d0824c2fd081467f21f5c3 (diff) | |
| parent | 8014dd82594dbb40e13749203e67b21e8447733c (diff) | |
Merge pull request #10155 from FernandoS27/reactive-flushing-new
Y.F.C. bring back Reactive Flushing
Diffstat (limited to 'src/video_core/buffer_cache/buffer_base.h')
| -rw-r--r-- | src/video_core/buffer_cache/buffer_base.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/video_core/buffer_cache/buffer_base.h b/src/video_core/buffer_cache/buffer_base.h index 9cbd95c4b..0bb3bf8ae 100644 --- a/src/video_core/buffer_cache/buffer_base.h +++ b/src/video_core/buffer_cache/buffer_base.h @@ -18,6 +18,7 @@ namespace VideoCommon { enum class BufferFlagBits { Picked = 1 << 0, CachedWrites = 1 << 1, + PreemtiveDownload = 1 << 2, }; DECLARE_ENUM_FLAG_OPERATORS(BufferFlagBits) @@ -54,6 +55,10 @@ public: flags |= BufferFlagBits::Picked; } + void MarkPreemtiveDownload() noexcept { + flags |= BufferFlagBits::PreemtiveDownload; + } + /// Unmark buffer as picked void Unpick() noexcept { flags &= ~BufferFlagBits::Picked; @@ -84,6 +89,10 @@ public: return True(flags & BufferFlagBits::CachedWrites); } + bool IsPreemtiveDownload() const noexcept { + return True(flags & BufferFlagBits::PreemtiveDownload); + } + /// Returns the base CPU address of the buffer [[nodiscard]] VAddr CpuAddr() const noexcept { return cpu_addr; |
