diff options
| author | 2023-09-25 09:18:29 -0400 | |
|---|---|---|
| committer | 2023-09-25 09:18:29 -0400 | |
| commit | 854457a392b6d38168f7f9d19d1fa8c43fad653c (patch) | |
| tree | 3bc1007b5776f1ce82c057875609105de0a1ca44 /src/video_core/query_cache.h | |
| parent | Merge pull request #11569 from german77/lle_applet (diff) | |
| parent | Query Cache: Fix Prefix Sums (diff) | |
| download | yuzu-854457a392b6d38168f7f9d19d1fa8c43fad653c.tar.gz yuzu-854457a392b6d38168f7f9d19d1fa8c43fad653c.tar.xz yuzu-854457a392b6d38168f7f9d19d1fa8c43fad653c.zip | |
Merge pull request #11225 from FernandoS27/no-laxatives-in-santas-cookies
Y.F.C: Rework the Query Cache.
Diffstat (limited to 'src/video_core/query_cache.h')
| -rw-r--r-- | src/video_core/query_cache.h | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/video_core/query_cache.h b/src/video_core/query_cache.h index 7047e2e63..9fcaeeac7 100644 --- a/src/video_core/query_cache.h +++ b/src/video_core/query_cache.h | |||
| @@ -25,6 +25,13 @@ | |||
| 25 | #include "video_core/rasterizer_interface.h" | 25 | #include "video_core/rasterizer_interface.h" |
| 26 | #include "video_core/texture_cache/slot_vector.h" | 26 | #include "video_core/texture_cache/slot_vector.h" |
| 27 | 27 | ||
| 28 | namespace VideoCore { | ||
| 29 | enum class QueryType { | ||
| 30 | SamplesPassed, | ||
| 31 | }; | ||
| 32 | constexpr std::size_t NumQueryTypes = 1; | ||
| 33 | } // namespace VideoCore | ||
| 34 | |||
| 28 | namespace VideoCommon { | 35 | namespace VideoCommon { |
| 29 | 36 | ||
| 30 | using AsyncJobId = SlotId; | 37 | using AsyncJobId = SlotId; |
| @@ -98,10 +105,10 @@ private: | |||
| 98 | }; | 105 | }; |
| 99 | 106 | ||
| 100 | template <class QueryCache, class CachedQuery, class CounterStream, class HostCounter> | 107 | template <class QueryCache, class CachedQuery, class CounterStream, class HostCounter> |
| 101 | class QueryCacheBase : public VideoCommon::ChannelSetupCaches<VideoCommon::ChannelInfo> { | 108 | class QueryCacheLegacy : public VideoCommon::ChannelSetupCaches<VideoCommon::ChannelInfo> { |
| 102 | public: | 109 | public: |
| 103 | explicit QueryCacheBase(VideoCore::RasterizerInterface& rasterizer_, | 110 | explicit QueryCacheLegacy(VideoCore::RasterizerInterface& rasterizer_, |
| 104 | Core::Memory::Memory& cpu_memory_) | 111 | Core::Memory::Memory& cpu_memory_) |
| 105 | : rasterizer{rasterizer_}, | 112 | : rasterizer{rasterizer_}, |
| 106 | // Use reinterpret_cast instead of static_cast as workaround for | 113 | // Use reinterpret_cast instead of static_cast as workaround for |
| 107 | // UBSan bug (https://github.com/llvm/llvm-project/issues/59060) | 114 | // UBSan bug (https://github.com/llvm/llvm-project/issues/59060) |