aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/renderer_opengl/gl_rasterizer.h
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2019-05-07 10:55:18 -0400
committerReinUsesLisp <reinuseslisp@airmail.cc>2019-06-20 21:36:11 -0300
commit6b0695b3cdd930b0157df8fd8f3c9d2dce328595 (patch)
treedca0a5da667579e5836d019b75e84c87567e80da /src/video_core/renderer_opengl/gl_rasterizer.h
parent6c410104f4f6953ac37095aa5e65804bf115c026 (diff)
Deglobalize Memory Manager on texture cahe and Implement Invalidation and Flushing using GPUVAddr
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 8e5009eeb..971a38ab7 100644
--- a/src/video_core/renderer_opengl/gl_rasterizer.h
+++ b/src/video_core/renderer_opengl/gl_rasterizer.h
@@ -41,6 +41,10 @@ namespace Core::Frontend {
class EmuWindow;
}
+namespace Tegra {
+class MemoryManager;
+}
+
namespace OpenGL {
struct ScreenInfo;
@@ -53,12 +57,16 @@ public:
ScreenInfo& info);
~RasterizerOpenGL() override;
+ void InitMemoryMananger(Tegra::MemoryManager& memory_manager) override;
+
void DrawArrays() override;
void Clear() override;
void FlushAll() override;
void FlushRegion(CacheAddr addr, u64 size) override;
void InvalidateRegion(CacheAddr addr, u64 size) override;
+ void InvalidateRegionEx(GPUVAddr gpu_addr, CacheAddr addr, u64 size);
void FlushAndInvalidateRegion(CacheAddr addr, u64 size) override;
+ void FlushAndInvalidateRegionEx(GPUVAddr gpu_addr, CacheAddr addr, u64 size) override;
bool AccelerateSurfaceCopy(const Tegra::Engines::Fermi2D::Regs::Surface& src,
const Tegra::Engines::Fermi2D::Regs::Surface& dst,
const Common::Rectangle<u32>& src_rect,