diff options
Diffstat (limited to 'make/gl-impl-macosx.cfg')
-rw-r--r-- | make/gl-impl-macosx.cfg | 46 |
1 files changed, 36 insertions, 10 deletions
diff --git a/make/gl-impl-macosx.cfg b/make/gl-impl-macosx.cfg index 9da51017f..5ada8af01 100644 --- a/make/gl-impl-macosx.cfg +++ b/make/gl-impl-macosx.cfg @@ -9,18 +9,31 @@ Include gl-common-macosx.cfg EmitProcAddressTable true +CustomCCode #include <inttypes.h> + 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> +CustomCCode #include <GL/gl.h> + +CustomCCode /* Provide Windows typedefs */ +CustomCCode typedef void* LPVOID; +CustomCCode typedef unsigned int* PUINT; -CustomJavaCode MacOSXGLImpl public MacOSXGLImpl(MacOSXGLContext context) { +CustomJavaCode MacOSXGLImpl public MacOSXGLImpl(MacOSXGLContext context) +CustomJavaCode MacOSXGLImpl { CustomJavaCode MacOSXGLImpl this.context = context; CustomJavaCode MacOSXGLImpl } +CustomJavaCode MacOSXGLImpl /** This constructor should be used manually in order to +CustomJavaCode MacOSXGLImpl create a GL object that can be used with the Cocoa NSOpenGLView. */ +CustomJavaCode MacOSXGLImpl public MacOSXGLImpl() +CustomJavaCode MacOSXGLImpl { +CustomJavaCode MacOSXGLImpl this.context = new MacOSXDummyGLContext(this); +CustomJavaCode MacOSXGLImpl } + CustomJavaCode MacOSXGLImpl public boolean isFunctionAvailable(String glFunctionName) CustomJavaCode MacOSXGLImpl { CustomJavaCode MacOSXGLImpl return context.isFunctionAvailable(glFunctionName); @@ -31,12 +44,25 @@ CustomJavaCode MacOSXGLImpl { CustomJavaCode MacOSXGLImpl return context.isExtensionAvailable(glExtensionName); CustomJavaCode MacOSXGLImpl } +CustomJavaCode MacOSXGLImpl /** Forces a recomputation of which extensions are available. +CustomJavaCode MacOSXGLImpl Should only be called if this MacOSXGLImpl is being used +CustomJavaCode MacOSXGLImpl in conjunction with an NSOpenGLView instead of a GLCanvas. */ +CustomJavaCode MacOSXGLImpl public void resetGLFunctionAvailability() +CustomJavaCode MacOSXGLImpl { +CustomJavaCode MacOSXGLImpl if (!(context instanceof MacOSXDummyGLContext)) { +CustomJavaCode MacOSXGLImpl throw new GLException("Should only be called if being used with NSOpenGLView"); +CustomJavaCode MacOSXGLImpl } +CustomJavaCode MacOSXGLImpl ((MacOSXDummyGLContext) context).resetGLFunctionAvailability(); +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 } +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 { +CustomJavaCode MacOSXGLImpl // FIXME +CustomJavaCode MacOSXGLImpl throw new GLException("Not yet implemented"); +CustomJavaCode MacOSXGLImpl } |