summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/FramebufferManager.h
diff options
context:
space:
mode:
authorStenzek <stenzek@gmail.com>2019-03-02 17:05:38 +1000
committerStenzek <stenzek@gmail.com>2019-03-09 12:24:04 +1000
commita218a794cb365690fe33099be14fbf3b08de5d33 (patch)
tree29916e77ee951dbe9d4bd2220a1ab7edbe0cadc7 /Source/Core/VideoCommon/FramebufferManager.h
parent6bc4bfd26af96de8642e75bbf644722c44baeb7b (diff)
FramebufferManager: Implement deferred EFB cache invalidation
Diffstat (limited to 'Source/Core/VideoCommon/FramebufferManager.h')
-rw-r--r--Source/Core/VideoCommon/FramebufferManager.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/Source/Core/VideoCommon/FramebufferManager.h b/Source/Core/VideoCommon/FramebufferManager.h
index b6fb53f949..b97d45b31e 100644
--- a/Source/Core/VideoCommon/FramebufferManager.h
+++ b/Source/Core/VideoCommon/FramebufferManager.h
@@ -9,10 +9,10 @@
#include <optional>
#include "Common/CommonTypes.h"
-#include "VideoCommon/AbstractTexture.h"
#include "VideoCommon/AbstractFramebuffer.h"
-#include "VideoCommon/AbstractStagingTexture.h"
#include "VideoCommon/AbstractPipeline.h"
+#include "VideoCommon/AbstractStagingTexture.h"
+#include "VideoCommon/AbstractTexture.h"
#include "VideoCommon/RenderState.h"
#include "VideoCommon/TextureConfig.h"
@@ -87,7 +87,8 @@ public:
u32 PeekEFBColor(u32 x, u32 y);
float PeekEFBDepth(u32 x, u32 y);
void SetEFBCacheTileSize(u32 size);
- void InvalidatePeekCache();
+ void InvalidatePeekCache(bool forced = true);
+ void FlagPeekCacheAsOutOfDate();
// Writes a value to the framebuffer. This will never block, and writes will be batched.
void PokeEFBColor(u32 x, u32 y, u32 color);
@@ -111,6 +112,7 @@ protected:
std::unique_ptr<AbstractStagingTexture> readback_texture;
std::unique_ptr<AbstractPipeline> copy_pipeline;
std::vector<bool> tiles;
+ bool out_of_date;
bool valid;
};