summaryrefslogtreecommitdiffstats
path: root/src/mesa/main/framebuffer.c
diff options
context:
space:
mode:
authorIan Romanick <ian.d.romanick@intel.com>2015-09-17 10:26:45 -0400
committerIan Romanick <ian.d.romanick@intel.com>2015-10-06 11:36:37 -0700
commitea8b77e892cdf6aa4cdd8a9ff312c422b3509ae7 (patch)
treed476e36db757f6deb485fc560d63dceb689472da /src/mesa/main/framebuffer.c
parent5c4ef9f1d2ae6a1824119aa246eaea727e294e3a (diff)
downloadexternal_mesa3d-ea8b77e892cdf6aa4cdd8a9ff312c422b3509ae7.zip
external_mesa3d-ea8b77e892cdf6aa4cdd8a9ff312c422b3509ae7.tar.gz
external_mesa3d-ea8b77e892cdf6aa4cdd8a9ff312c422b3509ae7.tar.bz2
mesa/i965: Refactor brw_is_front_buffer_{drawing,reading} to common code
There are multiple similar implementations of these functions, and a later patch was going to add another. v2: Move removing intel_framebuffer to a different patch. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Diffstat (limited to 'src/mesa/main/framebuffer.c')
-rw-r--r--src/mesa/main/framebuffer.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/mesa/main/framebuffer.c b/src/mesa/main/framebuffer.c
index 5b6b3f6..d18166d 100644
--- a/src/mesa/main/framebuffer.c
+++ b/src/mesa/main/framebuffer.c
@@ -964,3 +964,22 @@ _mesa_print_framebuffer(const struct gl_framebuffer *fb)
}
}
}
+
+bool
+_mesa_is_front_buffer_reading(const struct gl_framebuffer *fb)
+{
+ if (!fb || _mesa_is_user_fbo(fb))
+ return false;
+
+ return fb->_ColorReadBufferIndex == BUFFER_FRONT_LEFT;
+}
+
+bool
+_mesa_is_front_buffer_drawing(const struct gl_framebuffer *fb)
+{
+ if (!fb || _mesa_is_user_fbo(fb))
+ return false;
+
+ return (fb->_NumColorDrawBuffers >= 1 &&
+ fb->_ColorDrawBufferIndexes[0] == BUFFER_FRONT_LEFT);
+}