From 4e83a5df7a851cc33d85f76381f058256906ad4c Mon Sep 17 00:00:00 2001 From: Sven Gothel Date: Thu, 10 Oct 2013 02:15:56 +0200 Subject: Bug 852: Remove CPU sourced data API entry where not allowed (ES3 and GL core >= 3.0) ; GL2 cfg: Ignore GL2ES3 symbols (super) Remove CPU sourced data API entries via new config 'BufferObjectOnly ', listed in 'gl-common-gpubufferonly.cfg' and included in ES3 and all GL core >= 3 interfaces. If BufferObjectOnly is defined for a function, only the 'long offset' variant is being emitted. Due to limitations of GlueGen's 'ExtendedInterfaceSymbolsIgnore A.java', which only identifies the function name and not the signature - all CPU sourced variants are manually added to the compatibility and ES2 GL profiles via '*-common-cpubufferJavaCode.java' files. GLContext: Added 'isCPUSourcedAvail()' to determine whether context allows CPU sourced data, i.e. for GL2ES1 and GLES2 ctx. GLContext/GLProfile/GL: isGLES2() now returns false if having a ES3 context due to 'CPU sourced' incompatibility! +++ GL2 cfg: Added ignore GL2ES3 symbols of it's superclass, removing duplicated symbols. --- .../config/jogl/gl4bc-common-cpubufferJavaCode.java | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 make/config/jogl/gl4bc-common-cpubufferJavaCode.java (limited to 'make/config/jogl/gl4bc-common-cpubufferJavaCode.java') diff --git a/make/config/jogl/gl4bc-common-cpubufferJavaCode.java b/make/config/jogl/gl4bc-common-cpubufferJavaCode.java new file mode 100644 index 000000000..a29f540fa --- /dev/null +++ b/make/config/jogl/gl4bc-common-cpubufferJavaCode.java @@ -0,0 +1,21 @@ + + /** Entry point to C language function: void {@native glDrawArraysIndirect}(GLenum mode, const GLvoid * indirect);
Part of GL_VERSION_4_0, GL_ARB_draw_indirect + @param indirect a direct or array-backed {@link java.nio.Buffer} */ + public void glDrawArraysIndirect(int mode, Buffer indirect); + + /** Entry point to C language function: void {@native glDrawElementsIndirect}(GLenum mode, GLenum type, const GLvoid * indirect);
Part of GL_VERSION_4_0, GL_ARB_draw_indirect + @param indirect a direct or array-backed {@link java.nio.Buffer} */ + public void glDrawElementsIndirect(int mode, int type, Buffer indirect); + + /** Entry point to C language function: void {@native glDrawElementsInstancedBaseInstance}(GLenum mode, GLsizei count, GLenum type, const void * indices, GLsizei instancecount, GLuint baseinstance);
Part of GL_VERSION_4_2, GL_ARB_base_instance + @param indices a direct or array-backed {@link java.nio.Buffer} */ + public void glDrawElementsInstancedBaseInstance(int mode, int count, int type, Buffer indices, int instancecount, int baseinstance); + + /** Entry point to C language function: void {@native glDrawElementsInstancedBaseVertexBaseInstance}(GLenum mode, GLsizei count, GLenum type, const void * indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance);
Part of GL_VERSION_4_2, GL_ARB_base_instance + @param indices a direct or array-backed {@link java.nio.Buffer} */ + public void glDrawElementsInstancedBaseVertexBaseInstance(int mode, int count, int type, Buffer indices, int instancecount, int basevertex, int baseinstance); + + /** Entry point to C language function: void {@native glVertexAttribLPointer}(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer);
Part of GL_VERSION_4_1, GL_ARB_vertex_attrib_64bit + @param pointer a direct only {@link java.nio.Buffer} */ + public void glVertexAttribLPointer(int index, int size, int type, int stride, Buffer pointer); + -- cgit v1.2.3