summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl/gl_rasterizer.h
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2018-08-29 00:43:08 +0200
committerbunnei <bunneidev@gmail.com>2018-08-31 19:07:27 +0200
commit16d65182f99ed1066c8e88a774d0a3637f97ae01 (patch)
tree3c10dfc449c7ebeaf40b9c249a9b483a714ecf3e /src/video_core/renderer_opengl/gl_rasterizer.h
parentImplement BC6H_UF16 & BC6H_SF16 (#1092) (diff)
downloadyuzu-16d65182f99ed1066c8e88a774d0a3637f97ae01.tar
yuzu-16d65182f99ed1066c8e88a774d0a3637f97ae01.tar.gz
yuzu-16d65182f99ed1066c8e88a774d0a3637f97ae01.tar.bz2
yuzu-16d65182f99ed1066c8e88a774d0a3637f97ae01.tar.lz
yuzu-16d65182f99ed1066c8e88a774d0a3637f97ae01.tar.xz
yuzu-16d65182f99ed1066c8e88a774d0a3637f97ae01.tar.zst
yuzu-16d65182f99ed1066c8e88a774d0a3637f97ae01.zip
Diffstat (limited to 'src/video_core/renderer_opengl/gl_rasterizer.h')
-rw-r--r--src/video_core/renderer_opengl/gl_rasterizer.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/video_core/renderer_opengl/gl_rasterizer.h b/src/video_core/renderer_opengl/gl_rasterizer.h
index 7dd329efe..57837bef6 100644
--- a/src/video_core/renderer_opengl/gl_rasterizer.h
+++ b/src/video_core/renderer_opengl/gl_rasterizer.h
@@ -10,7 +10,11 @@
#include <tuple>
#include <utility>
#include <vector>
+
+#include <boost/icl/interval_map.hpp>
+#include <boost/range/iterator_range.hpp>
#include <glad/glad.h>
+
#include "common/common_types.h"
#include "video_core/engines/maxwell_3d.h"
#include "video_core/memory_manager.h"
@@ -49,6 +53,7 @@ public:
bool AccelerateDisplay(const Tegra::FramebufferConfig& config, VAddr framebuffer_addr,
u32 pixel_stride) override;
bool AccelerateDrawBatch(bool is_indexed) override;
+ void UpdatePagesCachedCount(Tegra::GPUVAddr addr, u64 size, int delta) override;
/// OpenGL shader generated for a given Maxwell register state
struct MaxwellShader {
@@ -187,6 +192,9 @@ private:
enum class AccelDraw { Disabled, Arrays, Indexed };
AccelDraw accelerate_draw = AccelDraw::Disabled;
+
+ using CachedPageMap = boost::icl::interval_map<u64, int>;
+ CachedPageMap cached_pages;
};
} // namespace OpenGL