From 7c1f2cde56438a979ddaab5fecc09f663427be91 Mon Sep 17 00:00:00 2001 From: Kenneth Russel Date: Wed, 27 Jul 2005 00:30:06 +0000 Subject: Refactored platform extensions out of the GL interface and implementation and into their own objects according to the JSR-231 expert group's resolutions. Moved the interfaces declaring these extensions into the platform-specific implementation directories and added a loosely-specified GL.getPlatformGLExtensions(). This will shrink the size of the platform-independent jar file considerably as the implementing class for the public GL interface is now no longer replicated for each platform. The build process is also simplified a fair bit; more simplifications are possible. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JSR-231@337 232f8b59-042b-4e1e-8c03-345bb8c30851 --- make/wglext.cfg | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 make/wglext.cfg (limited to 'make/wglext.cfg') diff --git a/make/wglext.cfg b/make/wglext.cfg new file mode 100644 index 000000000..58bd2d0fb --- /dev/null +++ b/make/wglext.cfg @@ -0,0 +1,58 @@ +# This .cfg file is used to generate the interface and implementing +# class for the WGL extensions. +Package net.java.games.jogl.impl.windows +Style InterfaceAndImpl +JavaClass WGLExt +ImplPackage net.java.games.jogl.impl.windows +ImplJavaClass WGLExtImpl +Include gl-common-win32.cfg + +EmitProcAddressTable true +ProcAddressTableClassName WGLExtProcAddressTable +ContextVariableName _context + +# Ignore everything that doesn't start with wgl or WGL +Ignore ^[^wW].+ + +CustomCCode #define WIN32_LEAN_AND_MEAN +CustomCCode #include +CustomCCode #undef WIN32_LEAN_AND_MEAN +CustomCCode #include +CustomCCode #include +CustomCCode #include + +CustomCCode /* Define GL_GLEXT_PROTOTYPES so that the OpenGL extension prototypes in +CustomCCode "glext.h" are parsed. */ +CustomCCode #define GL_GLEXT_PROTOTYPES + +CustomCCode /* Define WGL_GLEXT_PROTOTYPES so that the OpenGL extension prototypes in +CustomCCode "wglext.h" are parsed. */ +CustomCCode #define WGL_GLEXT_PROTOTYPES + +CustomCCode /* Include the OpenGL headers */ +CustomCCode #include +CustomCCode #include + +CustomCCode /* This typedef is only needed for VC6 */ +CustomCCode #if _MSC_VER <= 1200 +CustomCCode typedef int intptr_t; +CustomCCode #endif + +CustomJavaCode WGLExt public boolean isFunctionAvailable(String glFunctionName); +CustomJavaCode WGLExt public boolean isExtensionAvailable(String glExtensionName); + +CustomJavaCode WGLExtImpl public WGLExtImpl(WindowsGLContext context) { +CustomJavaCode WGLExtImpl this._context = context; +CustomJavaCode WGLExtImpl } + +CustomJavaCode WGLExtImpl public boolean isFunctionAvailable(String glFunctionName) +CustomJavaCode WGLExtImpl { +CustomJavaCode WGLExtImpl return _context.isFunctionAvailable(glFunctionName); +CustomJavaCode WGLExtImpl } + +CustomJavaCode WGLExtImpl public boolean isExtensionAvailable(String glExtensionName) +CustomJavaCode WGLExtImpl { +CustomJavaCode WGLExtImpl return _context.isExtensionAvailable(glExtensionName); +CustomJavaCode WGLExtImpl } + +CustomJavaCode WGLExtImpl private WindowsGLContext _context; -- cgit v1.2.3