# This .cfg file is used to generate the GL interface and implementing class. JavaOutputDir gensrc/classes NativeOutputDir gensrc/native/jogl/gl4 # Inform the glue code generator of the association between #defines # and functions and the extensions in which they are defined # _for_ code generation. This shall match the parsed header files! GLSemHeader GL/gl.h GLSemHeader GL/glext-supplement.h GLSemHeader GL/glext-20130207.h GLSemHeader GL/glext.h GLSemHeader GL/glcorearb.h GLSemHeader GL/glcorearbext.h ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/opengl/GL.java ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/opengl/GL2ES1.java ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/opengl/GL2ES2.java ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/opengl/GL2ES3.java ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/opengl/GL3ES3.java ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/opengl/GL4ES3.java ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/opengl/GL2GL3.java ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/opengl/GL2.java ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/opengl/GL3.java ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/opengl/GL4.java ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/opengl/GL3bc.java ExtendedInterfaceSymbolsIgnore ../src/jogl/classes/com/jogamp/opengl/GLBase.java ExtendedInterfaceSymbolsIgnore ../src/jogl/classes/com/jogamp/opengl/fixedfunc/GLMatrixFunc.java ExtendedInterfaceSymbolsIgnore ../src/jogl/classes/com/jogamp/opengl/fixedfunc/GLPointerFunc.java ExtendedInterfaceSymbolsIgnore ../src/jogl/classes/com/jogamp/opengl/fixedfunc/GLLightingFunc.java Package com.jogamp.opengl Style InterfaceAndImpl JavaClass GL4bc #Extends GL4bc GLBase #Extends GL4bc GL #Extends GL4bc GL2ES1 #Extends GL4bc GL2ES2 #Extends GL4bc GL2ES3 #Extends GL4bc GL3ES3 #Extends GL4bc GL4ES3 #Extends GL4bc GL2GL3 #Extends GL4bc GL2 #Extends GL4bc GL3 Extends GL4bc GL3bc Extends GL4bc GL4 ImplPackage jogamp.opengl.gl4 ImplJavaClass GL4bcImpl Implements GL4bcImpl GLBase Implements GL4bcImpl GL Implements GL4bcImpl GL2ES1 Implements GL4bcImpl GL2ES2 Implements GL4bcImpl GL2ES3 Implements GL4bcImpl GL3ES3 Implements GL4bcImpl GL4ES3 Implements GL4bcImpl GL2GL3 Implements GL4bcImpl GL2 Implements GL4bcImpl GL3 Implements GL4bcImpl GL3bc Implements GL4bcImpl GL4 Include gl-common.cfg Include gl-common-extensions.cfg Include gl-desktop.cfg Include gl-embedded-ignores.cfg Include gl3-desktop.cfg Include gl3-common.cfg Include gl2_es2-CustomJavaCode.cfg # # Manually implement following GL 4 functions to be redirected # to GLBufferObjectTracker. # # We cannot subsume/rename even parts of GL_EXT_direct_state_access, # since it is explcit stated in the spec that no assumption # shall be made in regards compatibility and interaction. # Hence we add both, GL 4.5 DSA and GL_EXT_direct_state_access. # DelegateImplementation glNamedBufferData glNamedBufferDataDelegate MethodJavadoc glNamedBufferData *
MethodJavadoc glNamedBufferData * Throws a {@link GLException} if GL-function constraints are not met or the native GL-function fails. MethodJavadoc glNamedBufferData *
MethodJavadoc glNamedBufferData *MethodJavadoc glNamedBufferData * @throws GLException if size is less-than zero MethodJavadoc glNamedBufferData * @throws GLException if a native GL-Error occurs MethodJavadoc glNamedBufferData *
DelegateImplementation glNamedBufferDataEXT glNamedBufferDataEXTDelegate MethodJavadoc glNamedBufferDataEXT *MethodJavadoc glNamedBufferDataEXT * Throws a {@link GLException} if GL-function constraints are not met or the native GL-function fails. MethodJavadoc glNamedBufferDataEXT *
MethodJavadoc glNamedBufferDataEXT *MethodJavadoc glNamedBufferDataEXT * @throws GLException if size is less-than zero MethodJavadoc glNamedBufferDataEXT * @throws GLException if a native GL-Error occurs MethodJavadoc glNamedBufferDataEXT *
DelegateImplementation glBufferStorage glBufferStorageDelegate MethodJavadoc glBufferStorage *MethodJavadoc glBufferStorage * Throws a {@link GLException} if GL-function constraints are not met or the native GL-function fails. MethodJavadoc glBufferStorage *
MethodJavadoc glBufferStorage *MethodJavadoc glBufferStorage * @throws GLException if buffer is not bound to target MethodJavadoc glBufferStorage * @throws GLException if size is less-or-equal zero MethodJavadoc glBufferStorage * @throws GLException if a native GL-Error occurs MethodJavadoc glBufferStorage *
DelegateImplementation glNamedBufferStorage glNamedBufferStorageDelegate MethodJavadoc glNamedBufferStorage *MethodJavadoc glNamedBufferStorage * Throws a {@link GLException} if GL-function constraints are not met or the native GL-function fails. MethodJavadoc glNamedBufferStorage *
MethodJavadoc glNamedBufferStorage *MethodJavadoc glNamedBufferStorage * @throws GLException if buffer is not bound to target MethodJavadoc glNamedBufferStorage * @throws GLException if size is less-or-equal zero MethodJavadoc glNamedBufferStorage * @throws GLException if a native GL-Error occurs MethodJavadoc glNamedBufferStorage *
DelegateImplementation glNamedBufferStorageEXT glNamedBufferStorageEXTDelegate MethodJavadoc glNamedBufferStorageEXT *MethodJavadoc glNamedBufferStorageEXT * Throws a {@link GLException} if GL-function constraints are not met or the native GL-function fails. MethodJavadoc glNamedBufferStorageEXT *
MethodJavadoc glNamedBufferStorageEXT *MethodJavadoc glNamedBufferStorageEXT * @throws GLException if buffer is not bound to target MethodJavadoc glNamedBufferStorageEXT * @throws GLException if size is less-or-equal zero MethodJavadoc glNamedBufferStorageEXT * @throws GLException if a native GL-Error occurs MethodJavadoc glNamedBufferStorageEXT *
DelegateImplementation glMapNamedBuffer glMapNamedBufferDelegate ReturnsOpaque long glMapNamedBufferDelegate MethodJavadoc glMapNamedBuffer *MethodJavadoc glMapNamedBuffer * Throws a {@link GLException} if GL-function constraints are not met. MethodJavadoc glMapNamedBuffer *
MethodJavadoc glMapNamedBuffer *MethodJavadoc glMapNamedBuffer * Returns {@link GL2#mapNamedBuffer(int, int)}'s {@link GLBufferStorage#getMappedBuffer()}. MethodJavadoc glMapNamedBuffer *
MethodJavadoc glMapNamedBuffer *MethodJavadoc glMapNamedBuffer * @throws GLException if buffer is not tracked MethodJavadoc glMapNamedBuffer * @throws GLException if buffer is already mapped MethodJavadoc glMapNamedBuffer * @throws GLException if buffer has invalid store size, i.e. less-than zero MethodJavadoc glMapNamedBuffer *
DelegateImplementation glMapNamedBufferEXT glMapNamedBufferEXTDelegate ReturnsOpaque long glMapNamedBufferEXTDelegate MethodJavadoc glMapNamedBufferEXT *MethodJavadoc glMapNamedBufferEXT * Throws a {@link GLException} if GL-function constraints are not met. MethodJavadoc glMapNamedBufferEXT *
MethodJavadoc glMapNamedBufferEXT *MethodJavadoc glMapNamedBufferEXT * Returns {@link GL2#mapNamedBuffer(int, int)}'s {@link GLBufferStorage#getMappedBuffer()}. MethodJavadoc glMapNamedBufferEXT *
MethodJavadoc glMapNamedBufferEXT *MethodJavadoc glMapNamedBufferEXT * @throws GLException if buffer is not tracked MethodJavadoc glMapNamedBufferEXT * @throws GLException if buffer is already mapped MethodJavadoc glMapNamedBufferEXT * @throws GLException if buffer has invalid store size, i.e. less-than zero MethodJavadoc glMapNamedBufferEXT *
DelegateImplementation glMapNamedBufferRange glMapNamedBufferRangeDelegate ReturnsOpaque long glMapNamedBufferRangeDelegate MethodJavadoc glMapNamedBufferRange *MethodJavadoc glMapNamedBufferRange * Throws a {@link GLException} if GL-function constraints are not met. MethodJavadoc glMapNamedBufferRange *
MethodJavadoc glMapNamedBufferRange *MethodJavadoc glMapNamedBufferRange * Returns {@link GL2#mapNamedBufferRange(int, long, long, int)}'s {@link GLBufferStorage#getMappedBuffer()}. MethodJavadoc glMapNamedBufferRange *
MethodJavadoc glMapNamedBufferRange *MethodJavadoc glMapNamedBufferRange * @throws GLException if buffer is not tracked MethodJavadoc glMapNamedBufferRange * @throws GLException if buffer is already mapped MethodJavadoc glMapNamedBufferRange * @throws GLException if buffer has invalid store size, i.e. less-than zero MethodJavadoc glMapNamedBufferRange * @throws GLException if buffer mapping range does not fit, incl. offset MethodJavadoc glMapNamedBufferRange *
DelegateImplementation glMapNamedBufferRangeEXT glMapNamedBufferRangeEXTDelegate ReturnsOpaque long glMapNamedBufferRangeEXTDelegate MethodJavadoc glMapNamedBufferRangeEXT *MethodJavadoc glMapNamedBufferRangeEXT * Throws a {@link GLException} if GL-function constraints are not met. MethodJavadoc glMapNamedBufferRangeEXT *
MethodJavadoc glMapNamedBufferRangeEXT *MethodJavadoc glMapNamedBufferRangeEXT * Returns {@link GL2#mapNamedBufferRange(int, long, long, int)}'s {@link GLBufferStorage#getMappedBuffer()}. MethodJavadoc glMapNamedBufferRangeEXT *
MethodJavadoc glMapNamedBufferRangeEXT *MethodJavadoc glMapNamedBufferRangeEXT * @throws GLException if buffer is not tracked MethodJavadoc glMapNamedBufferRangeEXT * @throws GLException if buffer is already mapped MethodJavadoc glMapNamedBufferRangeEXT * @throws GLException if buffer has invalid store size, i.e. less-than zero MethodJavadoc glMapNamedBufferRangeEXT * @throws GLException if buffer mapping range does not fit, incl. offset MethodJavadoc glMapNamedBufferRangeEXT *
DelegateImplementation glUnmapNamedBuffer glUnmapNamedBufferDelegate DelegateImplementation glUnmapNamedEXTBuffer glUnmapNamedEXTBufferDelegate # Manual implement glDebugMessageCallback* using the proc address resolver ForceProcAddressGen glDebugMessageCallback ForceProcAddressGen glDebugMessageCallbackAMD # Force all of the methods to be emitted using dynamic linking so we # don't need to link against any emulation library on the desktop or # depend on the presence of an import library for a particular device ForceProcAddressGen __ALL__ # Also force the calling conventions of the locally generated function # pointer typedefs for these routines to APIENTRY LocalProcAddressCallingConvention __ALL__ APIENTRY EmitProcAddressTable true ProcAddressTableClassName GL4bcProcAddressTable GetProcAddressTableExpr _pat # GetProcAddressTableExpr ((GL4bcProcAddressTable)_context.getGLProcAddressTable()) # Pick up on-line OpenGL javadoc thanks to user cylab on javagaming.org forums TagNativeBinding true # Ignore extensions that are already picked up via the GL2ES1 interface IgnoreExtension GL_EXT_point_parameters IncludeAs CustomJavaCode GL4bc gl4bc-common-cpubufferJavaCode.java # Add PixelStorei StateTracker CustomJavaCode GL4bcImpl private static final int params_offset = 0; // just a helper for JavaPrologue .. JavaPrologue glPixelStorei glStateTracker.setInt(pname, param); JavaPrologue glGetIntegerv if ( glStateTracker.getInt(pname, params, params_offset) ) { return; } JavaPrologue glFrustumf if ( !_context.hasFP32CompatAPI() ) { JavaPrologue glFrustumf glFrustum((double)l, (double)r, (double)b, (double)t, (double)n, (double)f); JavaPrologue glFrustumf return; JavaPrologue glFrustumf } JavaPrologue glOrthof if ( !_context.hasFP32CompatAPI() ) { JavaPrologue glOrthof glOrtho((double)l, (double)r, (double)b, (double)t, (double)n, (double)f); JavaPrologue glOrthof return; JavaPrologue glOrthof } JavaPrologue glDepthRangef if ( !_context.isGLES2Compatible() && !_context.hasFP32CompatAPI() ) { JavaPrologue glDepthRangef glDepthRange( (double)n, (double)f ); JavaPrologue glDepthRangef return; JavaPrologue glDepthRangef } JavaPrologue glClearDepthf if ( !_context.isGLES2Compatible() && !_context.hasFP32CompatAPI() ) { JavaPrologue glClearDepthf glClearDepth( (double)d ); JavaPrologue glClearDepthf return; JavaPrologue glClearDepthf } Include gl-headers.cfg IncludeAs CustomJavaCode GL4bcImpl gl-impl-CustomJavaCode-common.java IncludeAs CustomJavaCode GL4bcImpl gl-impl-CustomJavaCode-gl4bc.java IncludeAs CustomJavaCode GL4bcImpl gl-impl-CustomJavaCode-gl2_es2.java IncludeAs CustomCCode gl-impl-CustomCCode-gl4bc.c Import com.jogamp.opengl.GLES1 Import com.jogamp.opengl.GLES2 Import com.jogamp.opengl.GL2ES1 Import com.jogamp.opengl.GL2ES2 Import com.jogamp.opengl.GL2ES3 Import com.jogamp.opengl.GL3ES3 Import com.jogamp.opengl.GL4ES3 Import com.jogamp.opengl.GL2GL3 Import com.jogamp.opengl.GL2 Import com.jogamp.opengl.GL3 Import com.jogamp.opengl.GL3bc Import com.jogamp.opengl.GL4 Import com.jogamp.common.nio.Buffers Import com.jogamp.opengl.util.GLBuffers Import java.io.PrintStream