# This .cfg file is used to generate the class which implements the GL # interface on a particular platform. Package net.java.games.jogl Style ImplOnly JavaClass GL ImplPackage net.java.games.jogl.impl.x11 ImplJavaClass X11GLImpl Include gl-common-x11.cfg Include gl-glx-common.cfg EmitProcAddressTable true ProcAddressTableClassName GLProcAddressTable ContextVariableName _context CustomCCode #include <inttypes.h> CustomCCode #include <stdlib.h> CustomCCode #include <X11/Xlib.h> CustomCCode /* Define GL_GLEXT_PROTOTYPES so that the OpenGL extension prototypes in CustomCCode "glext.h" are parsed. */ CustomCCode #define GL_GLEXT_PROTOTYPES CustomCCode /* Define GLX_GLXEXT_PROTOTYPES so that the OpenGL extension prototypes in CustomCCode "glxext.h" are parsed. */ CustomCCode #define GLX_GLXEXT_PROTOTYPES CustomCCode /* Include the OpenGL headers */ CustomCCode #include <GL/gl.h> CustomCCode #include <GL/glx.h> CustomCCode #include <GL/glxext.h> CustomCCode /* Provide Windows typedefs */ CustomCCode typedef void* LPVOID; CustomCCode typedef unsigned int* PUINT; CustomJavaCode X11GLImpl public X11GLImpl(X11GLContext context) { CustomJavaCode X11GLImpl this._context = context; CustomJavaCode X11GLImpl } CustomJavaCode X11GLImpl public boolean isFunctionAvailable(String glFunctionName) CustomJavaCode X11GLImpl { CustomJavaCode X11GLImpl return _context.isFunctionAvailable(glFunctionName); CustomJavaCode X11GLImpl } CustomJavaCode X11GLImpl public boolean isExtensionAvailable(String glExtensionName) CustomJavaCode X11GLImpl { CustomJavaCode X11GLImpl return _context.isExtensionAvailable(glExtensionName); CustomJavaCode X11GLImpl } CustomJavaCode X11GLImpl private X11GLContext _context; CustomJavaCode X11GLImpl /** CustomJavaCode X11GLImpl * Provides platform-independent access to the wglAllocateMemoryNV / CustomJavaCode X11GLImpl * glXAllocateMemoryNV extension. CustomJavaCode X11GLImpl */ CustomJavaCode X11GLImpl public java.nio.ByteBuffer glAllocateMemoryNV(int arg0, float arg1, float arg2, float arg3) { CustomJavaCode X11GLImpl return glXAllocateMemoryNV(arg0, arg1, arg2, arg3); CustomJavaCode X11GLImpl } CustomJavaCode X11GLImpl public void setSwapInterval(int interval) { CustomJavaCode X11GLImpl if (isExtensionAvailable("GLX_SGI_swap_control")) { CustomJavaCode X11GLImpl glXSwapIntervalSGI(interval); CustomJavaCode X11GLImpl } CustomJavaCode X11GLImpl } IncludeAs CustomJavaCode X11GLImpl gl-impl-CustomJavaCode.java IncludeAs CustomCCode gl-impl-CustomCCode.c