Save side-by-side function arguments into attachment's state
Handle glFramebufferTextureMultiviewSideBySideANGLE calls by saving the
arguments into the attachment's state.
BUG=angleproject:2062
TEST=angle_end2end_tests
Change-Id: Idc5441d673b48640f47415b07b2854fbdf566c8d
Reviewed-on: https://chromium-review.googlesource.com/574915
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
Reviewed-by: Olli Etuaho <oetuaho@nvidia.com>
diff --git a/src/libANGLE/Framebuffer.h b/src/libANGLE/Framebuffer.h
index 7b53cda..40f100a 100644
--- a/src/libANGLE/Framebuffer.h
+++ b/src/libANGLE/Framebuffer.h
@@ -148,6 +148,13 @@
GLenum binding,
const ImageIndex &textureIndex,
FramebufferAttachmentObject *resource);
+ void setAttachmentMultiviewSideBySide(const Context *context,
+ GLenum type,
+ GLenum binding,
+ const ImageIndex &textureIndex,
+ FramebufferAttachmentObject *resource,
+ GLsizei numViews,
+ const GLint *viewportOffsets);
void resetAttachment(const Context *context, GLenum binding);
void detachTexture(const Context *context, GLuint texture);
@@ -292,13 +299,29 @@
GLuint matchId,
size_t dirtyBit);
GLenum checkStatusImpl(const Context *context);
- void commitWebGL1DepthStencilIfConsistent(const Context *context);
-
+ void setAttachment(const Context *context,
+ GLenum type,
+ GLenum binding,
+ const ImageIndex &textureIndex,
+ FramebufferAttachmentObject *resource,
+ GLsizei numViews,
+ GLuint baseViewIndex,
+ GLenum multiviewLayout,
+ const GLint *viewportOffsets);
+ void commitWebGL1DepthStencilIfConsistent(const Context *context,
+ GLsizei numViews,
+ GLuint baseViewIndex,
+ GLenum multiviewLayout,
+ const GLint *viewportOffsets);
void setAttachmentImpl(const Context *context,
GLenum type,
GLenum binding,
const ImageIndex &textureIndex,
- FramebufferAttachmentObject *resource);
+ FramebufferAttachmentObject *resource,
+ GLsizei numViews,
+ GLuint baseViewIndex,
+ GLenum multiviewLayout,
+ const GLint *viewportOffsets);
void updateAttachment(const Context *context,
FramebufferAttachment *attachment,
size_t dirtyBit,
@@ -306,7 +329,11 @@
GLenum type,
GLenum binding,
const ImageIndex &textureIndex,
- FramebufferAttachmentObject *resource);
+ FramebufferAttachmentObject *resource,
+ GLsizei numViews,
+ GLuint baseViewIndex,
+ GLenum multiviewLayout,
+ const GLint *viewportOffsets);
FramebufferState mState;
rx::FramebufferImpl *mImpl;