# 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.macosx
ImplJavaClass MacOSXGLImpl
Include gl-common-macosx.cfg

EmitProcAddressTable true

CustomCCode /* Define GL_GLEXT_PROTOTYPES so that the OpenGL extension prototypes in
CustomCCode    "glext.h" are parsed. */
CustomCCode #define GL_GLEXT_PROTOTYPES

CustomCCode /* Include the OpenGL headers */
CustomCCode #include <gl.h>
CustomCCode #include <glext.h>

CustomJavaCode MacOSXGLImpl  public MacOSXGLImpl(MacOSXGLContext context) { 
CustomJavaCode MacOSXGLImpl    this.context = context; 
CustomJavaCode MacOSXGLImpl  }

CustomJavaCode MacOSXGLImpl  public boolean isFunctionAvailable(String glFunctionName)
CustomJavaCode MacOSXGLImpl  {
CustomJavaCode MacOSXGLImpl    return context.isFunctionAvailable(glFunctionName);
CustomJavaCode MacOSXGLImpl  }

CustomJavaCode MacOSXGLImpl  public boolean isExtensionAvailable(String glExtensionName)
CustomJavaCode MacOSXGLImpl  {
CustomJavaCode MacOSXGLImpl    return context.isExtensionAvailable(glExtensionName);
CustomJavaCode MacOSXGLImpl  }

CustomJavaCode MacOSXGLImpl  private MacOSXGLContext context;

CustomJavaCode MacOSXGLImpl   /**
CustomJavaCode MacOSXGLImpl    * Provides platform-independent access to the wglAllocateMemoryNV /
CustomJavaCode MacOSXGLImpl    * glXAllocateMemoryNV extension.
CustomJavaCode MacOSXGLImpl    */
CustomJavaCode MacOSXGLImpl   public java.nio.ByteBuffer glAllocateMemoryNV(int arg0, float arg1, float arg2, float arg3) {
CustomJavaCode MacOSXGLImpl     throw new RuntimeException(" FIXME: not implemented, not needed?");
CustomJavaCode MacOSXGLImpl   }