ARB_fbo: Add missing GLX render opcode for glFramebufferTextureLayerEXT

Also regenerate the GLX protocol files from this change.
This commit is contained in:
Ian Romanick 2009-11-12 13:22:12 -08:00
parent 5fbfd88338
commit 4e7476f601
4 changed files with 26 additions and 0 deletions

View file

@ -10643,6 +10643,26 @@ __indirect_glBlitFramebufferEXT(GLint srcX0, GLint srcY0, GLint srcX1,
}
}
#define X_GLrop_FramebufferTextureLayerEXT 237
void
__indirect_glFramebufferTextureLayerEXT(GLenum target, GLenum attachment,
GLuint texture, GLint level,
GLint layer)
{
__GLXcontext *const gc = __glXGetCurrentContext();
const GLuint cmdlen = 24;
emit_header(gc->pc, X_GLrop_FramebufferTextureLayerEXT, cmdlen);
(void) memcpy((void *) (gc->pc + 4), (void *) (&target), 4);
(void) memcpy((void *) (gc->pc + 8), (void *) (&attachment), 4);
(void) memcpy((void *) (gc->pc + 12), (void *) (&texture), 4);
(void) memcpy((void *) (gc->pc + 16), (void *) (&level), 4);
(void) memcpy((void *) (gc->pc + 20), (void *) (&layer), 4);
gc->pc += cmdlen;
if (__builtin_expect(gc->pc > gc->limit, 0)) {
(void) __glXFlushRenderBuffer(gc, gc->pc);
}
}
# undef FASTCALL
# undef NOINLINE

View file

@ -712,6 +712,7 @@ extern HIDDEN GLboolean __indirect_glIsFramebufferEXT(GLuint framebuffer);
extern HIDDEN GLboolean __indirect_glIsRenderbufferEXT(GLuint renderbuffer);
extern HIDDEN void __indirect_glRenderbufferStorageEXT(GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
extern HIDDEN void __indirect_glBlitFramebufferEXT(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
extern HIDDEN void __indirect_glFramebufferTextureLayerEXT(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
# undef HIDDEN
# undef FASTCALL

View file

@ -776,6 +776,10 @@ __GLapi * __glXNewIndirectAPI( void )
glAPI->BlitFramebufferEXT = __indirect_glBlitFramebufferEXT;
/* 329. GL_EXT_texture_array */
glAPI->FramebufferTextureLayerEXT = __indirect_glFramebufferTextureLayerEXT;
return glAPI;
}

View file

@ -35,6 +35,7 @@
<param name="texture" type="GLuint"/>
<param name="level" type="GLint"/>
<param name="layer" type="GLint"/>
<glx rop="237"/>
</function>
</category>