Mesa (master): st/mesa: added st_is_depth_stencil_combined() function
Brian Paul
brianp at kemper.freedesktop.org
Mon Aug 23 01:40:36 UTC 2010
Module: Mesa
Branch: master
Commit: 24bd9780bcf400a00f6fc5a89b1648c7e3b7df07
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=24bd9780bcf400a00f6fc5a89b1648c7e3b7df07
Author: Brian Paul <brianp at vmware.com>
Date: Sun Aug 22 19:34:53 2010 -0600
st/mesa: added st_is_depth_stencil_combined() function
This code is part of a patch by Marek Olšák.
---
src/mesa/state_tracker/st_cb_fbo.c | 24 ++++++++++++++++++++++++
src/mesa/state_tracker/st_cb_fbo.h | 5 +++++
2 files changed, 29 insertions(+), 0 deletions(-)
diff --git a/src/mesa/state_tracker/st_cb_fbo.c b/src/mesa/state_tracker/st_cb_fbo.c
index 48d83de..71bd472 100644
--- a/src/mesa/state_tracker/st_cb_fbo.c
+++ b/src/mesa/state_tracker/st_cb_fbo.c
@@ -448,6 +448,30 @@ st_validate_attachment(struct pipe_screen *screen,
/**
+ * Check if two renderbuffer attachments name a combined depth/stencil
+ * renderbuffer.
+ */
+GLboolean
+st_is_depth_stencil_combined(const struct gl_renderbuffer_attachment *depth,
+ const struct gl_renderbuffer_attachment *stencil)
+{
+ assert(depth && stencil);
+
+ if (depth->Type == stencil->Type) {
+ if (depth->Type == GL_RENDERBUFFER_EXT &&
+ depth->Renderbuffer == stencil->Renderbuffer)
+ return GL_TRUE;
+
+ if (depth->Type == GL_TEXTURE &&
+ depth->Texture == stencil->Texture)
+ return GL_TRUE;
+ }
+
+ return GL_FALSE;
+}
+
+
+/**
* Check that the framebuffer configuration is valid in terms of what
* the driver can support.
*
diff --git a/src/mesa/state_tracker/st_cb_fbo.h b/src/mesa/state_tracker/st_cb_fbo.h
index 62a9bbc..3e9815c 100644
--- a/src/mesa/state_tracker/st_cb_fbo.h
+++ b/src/mesa/state_tracker/st_cb_fbo.h
@@ -88,4 +88,9 @@ st_get_renderbuffer_sampler_view(struct st_renderbuffer *rb,
struct pipe_context *pipe);
+extern GLboolean
+st_is_depth_stencil_combined(const struct gl_renderbuffer_attachment *depth,
+ const struct gl_renderbuffer_attachment *stencil);
+
+
#endif /* ST_CB_FBO_H */
More information about the mesa-commit
mailing list