Move Framebuffer clearing from Renderer to the Framebuffer object.
BUG=angle:841
Change-Id: I95c9cbdc2d1c99731e19c48e18117358d22b9e94
Reviewed-on: https://chromium-review.googlesource.com/232690
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
diff --git a/src/libANGLE/renderer/FramebufferImpl.h b/src/libANGLE/renderer/FramebufferImpl.h
index 1681205..c258d7c 100644
--- a/src/libANGLE/renderer/FramebufferImpl.h
+++ b/src/libANGLE/renderer/FramebufferImpl.h
@@ -15,6 +15,7 @@
namespace gl
{
+class State;
class FramebufferAttachment;
struct Rectangle;
}
@@ -50,6 +51,12 @@
virtual gl::Error invalidate(size_t count, const GLenum *attachments) = 0;
virtual gl::Error invalidateSub(size_t count, const GLenum *attachments, const gl::Rectangle &area) = 0;
+ virtual gl::Error clear(const gl::State &state, GLbitfield mask) = 0;
+ virtual gl::Error clearBufferfv(const gl::State &state, GLenum buffer, GLint drawbuffer, const GLfloat *values) = 0;
+ virtual gl::Error clearBufferuiv(const gl::State &state, GLenum buffer, GLint drawbuffer, const GLuint *values) = 0;
+ virtual gl::Error clearBufferiv(const gl::State &state, GLenum buffer, GLint drawbuffer, const GLint *values) = 0;
+ virtual gl::Error clearBufferfi(const gl::State &state, GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil) = 0;
+
virtual GLenum checkStatus() const = 0;
};