# 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 #Implements GL4bcImpl GL4bc implicit 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