aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/include
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2014-12-21 12:48:59 -0800
committerEric Anholt <[email protected]>2015-01-06 15:40:41 -0800
commit239db93888a75a03cf52910f596c1184746eaebd (patch)
tree38c0185b3d4b3fdb7f44dbdb84483cb080af682a /src/gallium/include
parent70e8ccc459d9bf579ad7efeae453cb8641266c94 (diff)
gallium: Plumb the swap INVALIDATE_ANCILLARY flag through more layers.
v2: Instead of telling the driver that the window system ancillaries have been invalidated (when the driver doesn't know which of its buffers are the window system's!), introduce a method for invalidating specific surfaces. Reviewed-by: Jose Fonseca <[email protected]>
Diffstat (limited to 'src/gallium/include')
-rw-r--r--src/gallium/include/pipe/p_context.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/gallium/include/pipe/p_context.h b/src/gallium/include/pipe/p_context.h
index af5674ff753..a4cae8eaf63 100644
--- a/src/gallium/include/pipe/p_context.h
+++ b/src/gallium/include/pipe/p_context.h
@@ -551,6 +551,17 @@ struct pipe_context {
*/
void (*flush_resource)(struct pipe_context *ctx,
struct pipe_resource *resource);
+
+ /**
+ * Invalidate the contents of the resource.
+ *
+ * This is used to implement EGL's semantic of undefined depth/stencil
+ * contenst after a swapbuffers. This allows a tiled renderer (for
+ * example) to not store the depth buffer.
+ */
+ void (*invalidate_resource)(struct pipe_context *ctx,
+ struct pipe_resource *resource);
+
};