diff options
author | ReinUsesLisp <reinuseslisp@airmail.cc> | 2019-07-27 19:40:10 -0300 |
---|---|---|
committer | ReinUsesLisp <reinuseslisp@airmail.cc> | 2020-02-14 17:27:17 -0300 |
commit | 2b58652f0897053d4da04deb586490220ab5a774 (patch) | |
tree | cb49e0b4da2297e25da1aa196bbb38d6e996d399 /src/video_core/rasterizer_interface.h | |
parent | 3217400dd1c42cf04c4bf5b25bfc07e67e20773a (diff) |
maxwell_3d: Slow implementation of passed samples (query 21)
Implements GL_SAMPLES_PASSED by waiting immediately for queries.
Diffstat (limited to 'src/video_core/rasterizer_interface.h')
-rw-r--r-- | src/video_core/rasterizer_interface.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/video_core/rasterizer_interface.h b/src/video_core/rasterizer_interface.h index c586cd6fec..2fc6275398 100644 --- a/src/video_core/rasterizer_interface.h +++ b/src/video_core/rasterizer_interface.h @@ -17,6 +17,10 @@ class MemoryManager; namespace VideoCore { +enum class QueryType { + SamplesPassed, +}; + enum class LoadCallbackStage { Prepare, Decompile, @@ -41,6 +45,12 @@ public: /// Dispatches a compute shader invocation virtual void DispatchCompute(GPUVAddr code_addr) = 0; + /// Resets the counter of a query + virtual void ResetCounter(QueryType type) = 0; + + /// Returns the value of a GPU query + virtual u64 Query(QueryType type) = 0; + /// Notify rasterizer that all caches should be flushed to Switch memory virtual void FlushAll() = 0; |