You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(134) |
Sep
(52) |
Oct
(13) |
Nov
(342) |
Dec
(163) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(44) |
Feb
(62) |
Mar
(158) |
Apr
(38) |
May
(70) |
Jun
(58) |
Jul
(104) |
Aug
(207) |
Sep
(83) |
Oct
(122) |
Nov
(23) |
Dec
(49) |
| 2004 |
Jan
(119) |
Feb
(132) |
Mar
(192) |
Apr
(140) |
May
(77) |
Jun
(74) |
Jul
(201) |
Aug
(63) |
Sep
(102) |
Oct
(70) |
Nov
(173) |
Dec
(78) |
| 2005 |
Jan
(174) |
Feb
(197) |
Mar
(105) |
Apr
(59) |
May
(77) |
Jun
(43) |
Jul
(21) |
Aug
(18) |
Sep
(47) |
Oct
(37) |
Nov
(74) |
Dec
(50) |
| 2006 |
Jan
(44) |
Feb
(19) |
Mar
(32) |
Apr
(24) |
May
(31) |
Jun
(55) |
Jul
(138) |
Aug
(28) |
Sep
(12) |
Oct
(41) |
Nov
(58) |
Dec
(24) |
| 2007 |
Jan
(28) |
Feb
(14) |
Mar
(10) |
Apr
(68) |
May
(30) |
Jun
(26) |
Jul
(18) |
Aug
(63) |
Sep
(19) |
Oct
(29) |
Nov
(20) |
Dec
(10) |
| 2008 |
Jan
(38) |
Feb
(7) |
Mar
(37) |
Apr
(120) |
May
(41) |
Jun
(36) |
Jul
(39) |
Aug
(24) |
Sep
(28) |
Oct
(30) |
Nov
(36) |
Dec
(75) |
| 2009 |
Jan
(46) |
Feb
(22) |
Mar
(50) |
Apr
(70) |
May
(134) |
Jun
(105) |
Jul
(75) |
Aug
(34) |
Sep
(38) |
Oct
(34) |
Nov
(19) |
Dec
(20) |
| 2010 |
Jan
(11) |
Feb
(20) |
Mar
(65) |
Apr
(83) |
May
(104) |
Jun
(73) |
Jul
(78) |
Aug
(57) |
Sep
(43) |
Oct
(35) |
Nov
(9) |
Dec
(4) |
| 2011 |
Jan
(21) |
Feb
(11) |
Mar
(18) |
Apr
(10) |
May
(18) |
Jun
(15) |
Jul
(48) |
Aug
(25) |
Sep
(17) |
Oct
(45) |
Nov
(15) |
Dec
(12) |
| 2012 |
Jan
(21) |
Feb
(9) |
Mar
(12) |
Apr
(9) |
May
(9) |
Jun
(5) |
Jul
(1) |
Aug
(10) |
Sep
(12) |
Oct
(1) |
Nov
(28) |
Dec
(5) |
| 2013 |
Jan
(4) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2014 |
Jan
|
Feb
(1) |
Mar
(1) |
Apr
|
May
(2) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
| 2015 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
(2) |
Nov
|
Dec
|
| 2016 |
Jan
(2) |
Feb
(1) |
Mar
(1) |
Apr
(1) |
May
(2) |
Jun
|
Jul
(1) |
Aug
(2) |
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
1
(2) |
2
(8) |
3
(4) |
4
(6) |
5
(1) |
6
|
|
7
(8) |
8
|
9
(11) |
10
(5) |
11
(1) |
12
|
13
|
|
14
|
15
|
16
(3) |
17
(1) |
18
|
19
|
20
|
|
21
(1) |
22
(1) |
23
(2) |
24
|
25
(1) |
26
(11) |
27
|
|
28
(5) |
29
(5) |
30
(7) |
|
|
|
|
|
From: Elias N. <eli...@us...> - 2003-09-29 12:38:19
|
Update of /cvsroot/java-game-lib/LWJGL/src/native/macosx In directory sc8-pr-cvs1:/tmp/cvs-serv22446/src/native/macosx Modified Files: org_lwjgl_opengl_Window.cpp Log Message: Various Mac stuff Index: org_lwjgl_opengl_Window.cpp CVS Browser: http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/java-game-lib/LWJGL/src/native/macosx/org_lwjgl_opengl_Window.cpp =================================================================== RCS file: /cvsroot/java-game-lib/LWJGL/src/native/macosx/org_lwjgl_opengl_Window.cpp,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- org_lwjgl_opengl_Window.cpp 26 Sep 2003 18:36:54 -0000 1.6 +++ org_lwjgl_opengl_Window.cpp 29 Sep 2003 09:26:20 -0000 1.7 @@ -42,6 +42,7 @@ #include <Carbon/Carbon.h> #include <JavaVM/jni.h> #include "org_lwjgl_opengl_Window.h" +#include "extgl.h" static WindowRef win_ref; static bool close_requested; @@ -56,24 +57,9 @@ env->DeleteLocalRef(cls); } -/*static void dumpRootMenu() { - MenuRef root = AcquireRootMenu(); - if (root == NULL) - printf("NULL menu\n"); - UInt16 count = CountMenuItems(root); - printf("item count: %d\n", count); - for (int i = 0; i < count; i++) { - Str255 menu_text; - GetMenuItemText(root, i, menu_text); - printf("Item text: %s\n", menu_text); - } - ReleaseMenu(root); -} -*/ static void setWindowTitle(JNIEnv *env, jstring title_obj) { const char* title = env->GetStringUTFChars(title_obj, NULL); - int str_len = env->GetStringUTFLength(title_obj); - CFStringRef cf_title = CFStringCreateWithBytes(NULL, (const UInt8*)title, str_len, kCFStringEncodingUTF8, false); + CFStringRef cf_title = CFStringCreateWithCStringNoCopy(NULL, title, kCFStringEncodingUTF8, kCFAllocatorNull); if (cf_title == NULL) { #ifdef _DEBUG printf("Could not set window title\n"); @@ -81,18 +67,8 @@ return; } SetWindowTitleWithCFString(win_ref, cf_title); -/* MenuRef root; - OSStatus err = CreateNewMenu(1, 0, &root); - assert(err == noErr); - MenuItemIndex item_index; - err = AppendMenuItemTextWithCFString(root, cf_title, 0, FOUR_CHAR_CODE('1234'), &item_index); - assert(err == noErr); - err = SetRootMenu(root); - assert(err == noErr); - ReleaseMenu(root);*/ CFRelease(cf_title); env->ReleaseStringUTFChars(title_obj, title); -// dumpRootMenu(); } static pascal OSStatus doQuit(EventHandlerCallRef next_handler, EventRef event, void *user_data) { @@ -102,37 +78,47 @@ } static void registerEventHandlers(JNIEnv *env) { - /*EventTargetRef event_target = GetWindowEventTarget(win_ref); - status = InstallStandardEventHandler(event_target); - if (noErr != status) { - DisposeWindow(win_ref); - throwException(env, "Could not install default window event handler"); - return; - }*/ - EventTypeSpec event_types[1]; + EventTypeSpec event_type; OSStatus err; EventHandlerUPP handler_upp = NewEventHandlerUPP(doQuit); - event_types[0].eventClass = kEventClassWindow; - event_types[0].eventKind = kEventWindowClose; - err = InstallWindowEventHandler(win_ref, handler_upp, 1, event_types, NULL, NULL); + event_type.eventClass = kEventClassWindow; + event_type.eventKind = kEventWindowClose; + err = InstallWindowEventHandler(win_ref, handler_upp, 1, &event_type, NULL, NULL); if (noErr != err) { DisposeEventHandlerUPP(handler_upp); throwException(env, "Could not register window event handler"); return; } - event_types[0].eventClass = kEventClassApplication; - event_types[0].eventKind = kEventAppQuit; - /*event_types[1].eventClass = kEventClassAppleEvent; - event_types[1].eventKind = kEventAppleEvent;*/ - err = InstallApplicationEventHandler(handler_upp, 1, event_types, NULL, NULL); - if (noErr != err) { - DisposeEventHandlerUPP(handler_upp); - throwException(env, "Could not register application event handler"); - return; - } DisposeEventHandlerUPP(handler_upp); } +static void destroy(void) { + DisposeWindow(win_ref); + extgl_Close(); +} + +static bool createContext(JNIEnv *env, jint bpp, jint alpha, jint depth, jint stencil) { + SetPort(GetWindowPort(win_ref)); + GLint attrib[] = {AGL_RGBA, + AGL_DOUBLEBUFFER, + AGL_ACCELERATED, + AGL_SINGLE_RENDERER, + AGL_FULLSCREEN, + AGL_MINIMUM_POLICY, + AGL_PIXEL_SIZE, bpp, + AGL_DEPTH_SIZE, depth, + AGL_ALPHA_SIZE, alpha, + AGL_STENCIL_SIZE, stencil, + AGL_NONE}; + AGLPixelFormat format = aglChoosePixelFormat(NULL, 0, attrib); + if (format == NULL) { + throwException(env, "Could not find matching pixel format"); + return false; + } +printf("Found matching pixel format\n "); + aglDestroyPixelFormat(format); + return true; +} JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengl_Window_nIsCloseRequested(JNIEnv *, jclass) { const bool saved = close_requested; @@ -140,50 +126,22 @@ return saved; } -/*OSErr aehandler(const AppleEvent * theAppleEvent, AppleEvent * reply, SInt32 handlerRefcon) { - printf("handler called\n"); - return noErr; -} -*/ - JNIEXPORT void JNICALL Java_org_lwjgl_opengl_Window_nCreate(JNIEnv *env, jclass clazz, jstring title, jint x, jint y, jint width, jint height, jboolean fullscreen, jint bpp, jint alpha, jint depth, jint stencil, jobject ext_set) { Rect rect; OSStatus status; const WindowAttributes window_attr = kWindowCloseBoxAttribute| kWindowCollapseBoxAttribute| kWindowStandardHandlerAttribute; -// CPSEnableForegroundOperation(); - /*//AEObjectInit(); - AEEventHandlerUPP handler = NewAEEventHandlerUPP(aehandler); - if (noErr != AEInstallEventHandler(kCoreEventClass, kAEOpenApplication, handler, 0, FALSE)) - printf("error\n"); - if (noErr != AEInstallEventHandler(kCoreEventClass, kAEOpenDocuments, handler, 0, FALSE)) - printf("error\n"); - if (noErr != AEInstallEventHandler(kCoreEventClass, kAEPrintDocuments, handler, 0, FALSE)) - printf("error\n"); - if (noErr != AEInstallEventHandler(kCoreEventClass, kAEQuitApplication, handler, 0, FALSE)) - printf("error\n"); - DisposeAEEventHandlerUPP(handler);*/ - /* - * Hacks to activate the application window - */ - /*CFBundleRef bundle = CFBundleGetMainBundle(); - if (bundle != NULL) { - printf("bundle != NULL\n"); - CFRelease(bundle); - }*/ - /*ProcessSerialNumber PSN; - GetCurrentProcess(&PSN); - SetFrontProcess(&PSN);*/ - EventLoopRef queue = GetCurrentEventLoop(); - EventLoopRef main = GetMainEventLoop(); - QuitEventLoop(queue); - QuitEventLoop(main); - /*if (queue == main) - printf("equals\n");*/ SetRect(&rect, x, y, x + width, y + height); close_requested = false; - + if (!extgl_Open()) { + throwException(env, "Could not load gl library"); + return; + } + if (!extgl_InitAGL(env, ext_set)) { + throwException(env, "Could not load agl function pointers"); + return; + } status = CreateNewWindow(kDocumentWindowClass, window_attr, &rect, &win_ref); if (noErr != status) { throwException(env, "Could not create window"); @@ -193,43 +151,27 @@ setWindowTitle(env, title); const RGBColor background_color = { 0, 0, 0 }; SetWindowContentColor(win_ref, &background_color); - status = TransitionWindow(win_ref, kWindowZoomTransitionEffect, kWindowShowTransitionAction, NULL); - if (noErr != status) { + if (!createContext(env, bpp, alpha, depth, stencil)) { DisposeWindow(win_ref); - throwException(env, "Could not show window"); + extgl_Close(); return; } + if (!extgl_Initialize(env, ext_set)) { + destroy(); + throwException(env, "Could not load gl function pointers"); + return; + } + TransitionWindow(win_ref, kWindowZoomTransitionEffect, kWindowShowTransitionAction, NULL); SelectWindow(win_ref); - InitCursor(); -//QuitApplicationEventLoop(); -//RunApplicationEventLoop(); } JNIEXPORT void JNICALL Java_org_lwjgl_opengl_Window_update (JNIEnv *env, jclass clazz) { - /*EventRef event; - OSStatus err; - int num_events = GetNumEventsInQueue(GetCurrentEventQueue()); - for (int i = 0; i < num_events; i++) { - UInt32 class_type = GetEventClass(event); - UInt32 kind = GetEventKind(event); - UInt32 test = FOUR_CHAR_CODE('eppc'); - EventTime event_time = GetEventTime(event); - //UInt32 test = FOUR_CHAR_CODE('appl'); - printf("recieved event: %x %x %x at %f\n", class_type, kind, test, event_time); - err = ReceiveNextEvent(0, NULL, 0, true, &event); - /* if (kind == kEventClassAppleEvent) - AEProcessAppleEvent(event);*/ - /* ReleaseEvent(event); - } - //RunCurrentEventLoop(0); -/* if (eventLoopTimedOutErr != RunCurrentEventLoop(0)) - printf("Could not run current event loop\n");*/ } JNIEXPORT void JNICALL Java_org_lwjgl_opengl_Window_nDestroy (JNIEnv *env, jclass clazz) { - DisposeWindow(win_ref); + destroy(); } |
|
From: Elias N. <eli...@us...> - 2003-09-29 12:08:51
|
Update of /cvsroot/java-game-lib/LWJGL/src/java/org/lwjgl/opengl In directory sc8-pr-cvs1:/tmp/cvs-serv22446/src/java/org/lwjgl/opengl Modified Files: Window.java Log Message: Various Mac stuff Index: Window.java CVS Browser: http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/java-game-lib/LWJGL/src/java/org/lwjgl/opengl/Window.java =================================================================== RCS file: /cvsroot/java-game-lib/LWJGL/src/java/org/lwjgl/opengl/Window.java,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -r1.11 -r1.12 --- Window.java 26 Sep 2003 13:59:48 -0000 1.11 +++ Window.java 29 Sep 2003 09:26:20 -0000 1.12 @@ -30,8 +30,43 @@ static { System.loadLibrary(Sys.getLibraryName()); + /* + * elias: Mac OS X hacks. We need to fetch the toolkit to acquire a Dock icon, a system menu + * and to make windows behave normally. We also need to intercept the quit event from + * Swing. Luckily, Swing can be assumed to be present on Mac OS X. Because some of this + * is apple extensions to java, we need stub files to successfully compile on other platforms. + * + * Additionally, because of the way swing works, applications now need to do an + * explicit System.exit() to quit. Returning from the main thread is not enough any + * more. + * + * I've wasted a significant amount of time searching for an acceptable solution, without + * finding a way to avoid Swing. AFAIK, + * + * 1. There's no way to acquire the Dock icon, system menu and normal window behaviour. + * For that, you either need a proper bundled, native application or initialize Swing. + * 2. Even if there were a way around it, Swing is automatically started anyway if you + * use Java Web Start. + * 3. Swing gains total control over the main event loop, so the native library need to + * work around by maintaining an internal event queue. That's really boring stuff, indeed. + * + * I have posted a bug report to apple regarding the behaviour. + * + */ + if (Display.getPlatform() == Display.PLATFORM_AGL) { + java.awt.Toolkit.getDefaultToolkit(); + new com.apple.eawt.Application().addApplicationListener(new com.apple.eawt.ApplicationAdapter() { + public void handleQuit(com.apple.eawt.ApplicationEvent e) { + e.setHandled(false); + apple_quit = true; + } + }); + } } + /** Special quit boolean set from the apple version */ + private static boolean apple_quit; + /** Whether the window is currently created, ie. has a native peer */ private static boolean created; @@ -150,7 +185,9 @@ */ public static boolean isCloseRequested() { assert isCreated() : "Cannot determine state of uncreated window"; - return nIsCloseRequested(); + boolean result = nIsCloseRequested() || apple_quit; + apple_quit = false; + return result; } private static native boolean nIsCloseRequested(); @@ -305,6 +342,7 @@ throws Exception; private static void createWindow() throws Exception { + apple_quit = false; HashSet extensions = new HashSet(); nCreate(title, x, y, width, height, fullscreen, color, alpha, depth, stencil, extensions); GLCaps.determineAvailableExtensions(extensions); |
|
From: Elias N. <eli...@us...> - 2003-09-29 11:58:59
|
Update of /cvsroot/java-game-lib/LWJGL/src/native/macosx In directory sc8-pr-cvs1:/tmp/cvs-serv17295/macosx Modified Files: org_lwjgl_opengl_Window.cpp Log Message: Index: org_lwjgl_opengl_Window.cpp CVS Browser: http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/java-game-lib/LWJGL/src/native/macosx/org_lwjgl_opengl_Window.cpp =================================================================== RCS file: /cvsroot/java-game-lib/LWJGL/src/native/macosx/org_lwjgl_opengl_Window.cpp,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- org_lwjgl_opengl_Window.cpp 29 Sep 2003 09:26:20 -0000 1.7 +++ org_lwjgl_opengl_Window.cpp 29 Sep 2003 11:58:35 -0000 1.8 @@ -45,6 +45,7 @@ #include "extgl.h" static WindowRef win_ref; +static AGLContext context; static bool close_requested; /* @@ -59,7 +60,7 @@ static void setWindowTitle(JNIEnv *env, jstring title_obj) { const char* title = env->GetStringUTFChars(title_obj, NULL); - CFStringRef cf_title = CFStringCreateWithCStringNoCopy(NULL, title, kCFStringEncodingUTF8, kCFAllocatorNull); + CFStringRef cf_title = CFStringCreateWithCString(NULL, title, kCFStringEncodingUTF8); if (cf_title == NULL) { #ifdef _DEBUG printf("Could not set window title\n"); @@ -93,17 +94,20 @@ } static void destroy(void) { + aglSetCurrentContext(NULL); + aglDestroyContext(context); DisposeWindow(win_ref); extgl_Close(); } static bool createContext(JNIEnv *env, jint bpp, jint alpha, jint depth, jint stencil) { - SetPort(GetWindowPort(win_ref)); + AGLDrawable drawable = GetWindowPort(win_ref); + SetPort(drawable); GLint attrib[] = {AGL_RGBA, AGL_DOUBLEBUFFER, AGL_ACCELERATED, - AGL_SINGLE_RENDERER, - AGL_FULLSCREEN, + //AGL_FULLSCREEN, + AGL_NO_RECOVERY, AGL_MINIMUM_POLICY, AGL_PIXEL_SIZE, bpp, AGL_DEPTH_SIZE, depth, @@ -115,8 +119,23 @@ throwException(env, "Could not find matching pixel format"); return false; } -printf("Found matching pixel format\n "); + context = aglCreateContext (format, NULL); aglDestroyPixelFormat(format); + if (context == NULL) { + throwException(env, "Could not create context"); + return false; + } + //if (aglSetFullScreen(context, 800, 600, 85, 0) == GL_FALSE) { + if (aglSetDrawable(context, drawable) == GL_FALSE) { + aglDestroyContext(context); + throwException(env, "Could not attach context"); + return false; + } + if (aglSetCurrentContext(context) == GL_FALSE) { + aglDestroyContext(context); + throwException(env, "Could not set current context"); + return false; + } return true; } @@ -139,7 +158,7 @@ return; } if (!extgl_InitAGL(env, ext_set)) { - throwException(env, "Could not load agl function pointers"); + throwException(env, "Could not load agl symbols"); return; } status = CreateNewWindow(kDocumentWindowClass, window_attr, &rect, &win_ref); @@ -168,6 +187,7 @@ JNIEXPORT void JNICALL Java_org_lwjgl_opengl_Window_update (JNIEnv *env, jclass clazz) { + aglSwapBuffers(context); } JNIEXPORT void JNICALL Java_org_lwjgl_opengl_Window_nDestroy |
|
From: Elias N. <eli...@us...> - 2003-09-29 11:58:58
|
Update of /cvsroot/java-game-lib/LWJGL/src/native/common In directory sc8-pr-cvs1:/tmp/cvs-serv17295/common Modified Files: extgl.cpp Log Message: Index: extgl.cpp CVS Browser: http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/java-game-lib/LWJGL/src/native/common/extgl.cpp =================================================================== RCS file: /cvsroot/java-game-lib/LWJGL/src/native/common/extgl.cpp,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- extgl.cpp 29 Sep 2003 09:26:20 -0000 1.4 +++ extgl.cpp 29 Sep 2003 11:58:35 -0000 1.5 @@ -1286,7 +1286,8 @@ #endif #ifdef _AGL -CFBundleRef gBundleRefOpenGL = NULL; +CFBundleRef opengl_bundle_ref = NULL; +CFBundleRef agl_bundle_ref = NULL; #endif #define EXTGL_SANITY_CHECK(e,h,x) if (extgl_error) { \ @@ -1319,13 +1320,14 @@ #ifdef _AGL // ------------------------- -OSStatus aglInitEntryPoints (void) +static CFBundleRef loadBundle(const Str255 frameworkName) { OSStatus err = noErr; - const Str255 frameworkName = "\pOpenGL.framework"; FSRefParam fileRefParam; FSRef fileRef; CFURLRef bundleURLOpenGL; + CFBundleRef bundle_ref; + memset(&fileRefParam, 0, sizeof(fileRefParam)); memset(&fileRef, 0, sizeof(fileRef)); fileRefParam.ioNamePtr = frameworkName; @@ -1336,8 +1338,10 @@ err = FindFolder (kSystemDomain, kFrameworksFolderType, false, &fileRefParam.ioVRefNum, &fileRefParam.ioDirID); if (noErr != err) { - DebugStr ("\pCould not find frameworks folder"); - return err; +#ifdef _DEBUG + printf("Could not find frameworks folder\n"); +#endif + return NULL; } // make FSRef for folder @@ -1350,7 +1354,7 @@ #ifdef _DEBUG printf("Could make FSref to frameworks folder\n"); #endif - return err; + return NULL; } // create URL to folder @@ -1359,58 +1363,40 @@ if (!bundleURLOpenGL) { #ifdef _DEBUG - printf("Could create OpenGL Framework bundle URL\n"); + printf("Could create framework URL\n"); #endif - return paramErr; + return NULL; } - // create ref to GL's bundle - // - gBundleRefOpenGL = CFBundleCreate (kCFAllocatorDefault,bundleURLOpenGL); - if (!gBundleRefOpenGL) + bundle_ref = CFBundleCreate(kCFAllocatorDefault,bundleURLOpenGL); + CFRelease (bundleURLOpenGL); + if (bundle_ref == NULL) { #ifdef _DEBUG - printf("Could not create OpenGL Framework bundle\n"); + printf("Could not load framework\n"); #endif - return paramErr; + return NULL; } - // release created bundle - // - CFRelease (bundleURLOpenGL); - // if the code was successfully loaded, look for our function. - if (!CFBundleLoadExecutable (gBundleRefOpenGL)) + if (!CFBundleLoadExecutable(bundle_ref)) { #ifdef _DEBUG printf("Could not load MachO executable\n"); #endif - return paramErr; + CFRelease(bundle_ref); + return NULL; } - return err; + return bundle_ref; } - -static void aglDellocEntryPoints (void) +static void aglUnloadFramework(CFBundleRef f) { - if (gBundleRefOpenGL != NULL) - { - // unload the bundle's code. - CFBundleUnloadExecutable (gBundleRefOpenGL); - CFRelease (gBundleRefOpenGL); - gBundleRefOpenGL = NULL; - } + CFBundleUnloadExecutable(f); + CFRelease(f); } - -static void * aglGetProcAddress (char * pszProc) -{ - CFStringRef str = CFStringCreateWithCStringNoCopy(NULL, pszProc, kCFStringEncodingUTF8, kCFAllocatorNull); - void *func_pointer = CFBundleGetFunctionPointerForName(gBundleRefOpenGL, str); - CFRelease(str); - return func_pointer; -} #endif /* getProcAddress */ @@ -1456,14 +1442,19 @@ #endif #ifdef _AGL - void *t = aglGetProcAddress(name); - if (t == NULL) { + CFStringRef str = CFStringCreateWithCStringNoCopy(NULL, name, kCFStringEncodingUTF8, kCFAllocatorNull); + void *func_pointer = CFBundleGetFunctionPointerForName(opengl_bundle_ref, str); + if (func_pointer == NULL) { + func_pointer = CFBundleGetFunctionPointerForName(agl_bundle_ref, str); + if (func_pointer == NULL) { #ifdef _DEBUG - printf("Could not locate symbol %s\n", name); + printf("Could not locate symbol %s\n", name); #endif - extgl_error = true; + extgl_error = true; + } } - return t; + CFRelease(str); + return func_pointer; #endif } @@ -3298,6 +3289,20 @@ return true; } +#ifdef _AGL +bool extgl_Open(void) { + opengl_bundle_ref = loadBundle("\pOpenGL.framework"); + if (opengl_bundle_ref == NULL) + return false; + agl_bundle_ref = loadBundle("\pAGL.framework"); + if (agl_bundle_ref == NULL) { + aglUnloadFramework(opengl_bundle_ref); + return false; + } + return true; +} +#endif + #ifdef _X11 bool extgl_Open() { @@ -3313,6 +3318,7 @@ #ifdef _DEBUG printf("Error loading libGLU.so.1: %s\n", dlerror()); #endif + dlclose(lib_gl_handle); return false; } return true; @@ -3329,29 +3335,13 @@ if (lib_gl_handle == NULL) return false; lib_glu_handle = LoadLibrary("glu32.dll"); - if (lib_glu_handle == NULL) - return false; - return true; -} -#endif /* WIN32 */ - -#ifdef _AGL -bool extgl_Open(void) -{ - OSStatus err = aglInitEntryPoints(); - if ( noErr != err ) - { - // if we encountered an error while initializing OpenGL - // we're hosed - return - // + if (lib_glu_handle == NULL) { + FreeLibrary(lib_gl_handle); return false; } - - // open gl framework initialized just fine - // return true; } -#endif /* _AGL */ +#endif /* WIN32 */ void extgl_Close(void) { @@ -3364,7 +3354,8 @@ FreeLibrary(lib_glu_handle); #endif #ifdef _AGL - aglDellocEntryPoints(); + aglUnloadFramework(opengl_bundle_ref); + aglUnloadFramework(agl_bundle_ref); #endif } |
|
From: Elias N. <eli...@us...> - 2003-09-29 11:45:49
|
Update of /cvsroot/java-game-lib/LWJGL/src/native/common In directory sc8-pr-cvs1:/tmp/cvs-serv22446/src/native/common Modified Files: extgl.cpp extgl.h Log Message: Various Mac stuff Index: extgl.cpp CVS Browser: http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/java-game-lib/LWJGL/src/native/common/extgl.cpp =================================================================== RCS file: /cvsroot/java-game-lib/LWJGL/src/native/common/extgl.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- extgl.cpp 28 Sep 2003 13:09:17 -0000 1.3 +++ extgl.cpp 29 Sep 2003 09:26:20 -0000 1.4 @@ -88,6 +88,42 @@ glXQueryExtensionsStringPROC glXQueryExtensionsString = NULL; #endif +#ifdef _AGL +aglChoosePixelFormatPROC aglChoosePixelFormat = NULL; +aglDestroyPixelFormatPROC aglDestroyPixelFormat = NULL; +aglNextPixelFormatPROC aglNextPixelFormat = NULL; +aglDescribePixelFormatPROC aglDescribePixelFormat = NULL; +aglDevicesOfPixelFormatPROC aglDevicesOfPixelFormat = NULL; +aglQueryRendererInfoPROC aglQueryRendererInfo = NULL; +aglDestroyRendererInfoPROC aglDestroyRendererInfo = NULL; +aglNextRendererInfoPROC aglNextRendererInfo = NULL; +aglDescribeRendererPROC aglDescribeRenderer = NULL; +aglCreateContextPROC aglCreateContext = NULL; +aglDestroyContextPROC aglDestroyContext = NULL; +aglCopyContextPROC aglCopyContext = NULL; +aglUpdateContextPROC aglUpdateContext = NULL; +aglSetCurrentContextPROC aglSetCurrentContext = NULL; +aglGetCurrentContextPROC aglGetCurrentContext = NULL; +aglSetDrawablePROC aglSetDrawable = NULL; +aglSetOffScreenPROC aglSetOffScreen = NULL; +aglSetFullScreenPROC aglSetFullScreen = NULL; +aglGetDrawablePROC aglGetDrawable = NULL; +aglSetVirtualScreenPROC aglSetVirtualScreen = NULL; +aglGetVirtualScreenPROC aglGetVirtualScreen = NULL; +aglGetVersionPROC aglGetVersion = NULL; +aglSwapBuffersPROC aglSwapBuffers = NULL; +aglEnablePROC aglEnable = NULL; +aglDisablePROC aglDisable = NULL; +aglIsEnabledPROC aglIsEnabled = NULL; +aglSetIntegerPROC aglSetInteger = NULL; +aglGetIntegerPROC aglGetInteger = NULL; +aglUseFontPROC aglUseFont = NULL; +aglGetErrorPROC aglGetError = NULL; +aglErrorStringPROC aglErrorString = NULL; +aglResetLibraryPROC aglResetLibrary = NULL; +aglSurfaceTexturePROC aglSurfaceTexture = NULL; +#endif + gluBeginCurvePROC gluBeginCurve = NULL; gluBeginPolygonPROC gluBeginPolygon = NULL; gluBeginSurfacePROC gluBeginSurface = NULL; @@ -1311,7 +1347,9 @@ if (noErr != err) { - DebugStr ("\pCould make FSref to frameworks folder"); +#ifdef _DEBUG + printf("Could make FSref to frameworks folder\n"); +#endif return err; } @@ -1320,7 +1358,9 @@ bundleURLOpenGL = CFURLCreateFromFSRef (kCFAllocatorDefault, &fileRef); if (!bundleURLOpenGL) { - DebugStr ("\pCould create OpenGL Framework bundle URL"); +#ifdef _DEBUG + printf("Could create OpenGL Framework bundle URL\n"); +#endif return paramErr; } @@ -1329,7 +1369,9 @@ gBundleRefOpenGL = CFBundleCreate (kCFAllocatorDefault,bundleURLOpenGL); if (!gBundleRefOpenGL) { - DebugStr ("\pCould not create OpenGL Framework bundle"); +#ifdef _DEBUG + printf("Could not create OpenGL Framework bundle\n"); +#endif return paramErr; } @@ -1340,7 +1382,9 @@ // if the code was successfully loaded, look for our function. if (!CFBundleLoadExecutable (gBundleRefOpenGL)) { - DebugStr ("\pCould not load MachO executable"); +#ifdef _DEBUG + printf("Could not load MachO executable\n"); +#endif return paramErr; } @@ -1362,7 +1406,10 @@ static void * aglGetProcAddress (char * pszProc) { - return CFBundleGetFunctionPointerForName (gBundleRefOpenGL,CFStringCreateWithCStringNoCopy (NULL, pszProc, CFStringGetSystemEncoding (), NULL)); + CFStringRef str = CFStringCreateWithCStringNoCopy(NULL, pszProc, kCFStringEncodingUTF8, kCFAllocatorNull); + void *func_pointer = CFBundleGetFunctionPointerForName(gBundleRefOpenGL, str); + CFRelease(str); + return func_pointer; } #endif @@ -1579,11 +1626,42 @@ /*-----------------------------------------------------*/ #ifdef _AGL -static int extgl_InitializeAGL(JNIEnv *env, jobject ext_set) +bool extgl_InitAGL(JNIEnv *env, jobject ext_set) { - // add in AGL extensions here - - return 0; + aglChoosePixelFormat = (aglChoosePixelFormatPROC)extgl_GetProcAddress("aglChoosePixelFormat"); + aglDestroyPixelFormat = (aglDestroyPixelFormatPROC)extgl_GetProcAddress("aglDestroyPixelFormat"); + aglNextPixelFormat = (aglNextPixelFormatPROC)extgl_GetProcAddress("aglNextPixelFormat"); + aglDescribePixelFormat = (aglDescribePixelFormatPROC)extgl_GetProcAddress("aglDescribePixelFormat"); + aglDevicesOfPixelFormat = (aglDevicesOfPixelFormatPROC)extgl_GetProcAddress("aglDevicesOfPixelFormat"); + aglQueryRendererInfo = (aglQueryRendererInfoPROC)extgl_GetProcAddress("aglQueryRendererInfo"); + aglDestroyRendererInfo = (aglDestroyRendererInfoPROC)extgl_GetProcAddress("aglDestroyRendererInfo"); + aglNextRendererInfo = (aglNextRendererInfoPROC)extgl_GetProcAddress("aglNextRendererInfo"); + aglDescribeRenderer = (aglDescribeRendererPROC)extgl_GetProcAddress("aglDescribeRenderer"); + aglCreateContext = (aglCreateContextPROC)extgl_GetProcAddress("aglCreateContext"); + aglDestroyContext = (aglDestroyContextPROC)extgl_GetProcAddress("aglDestroyContext"); + aglCopyContext = (aglCopyContextPROC)extgl_GetProcAddress("aglCopyContext"); + aglUpdateContext = (aglUpdateContextPROC)extgl_GetProcAddress("aglUpdateContext"); + aglSetCurrentContext = (aglSetCurrentContextPROC)extgl_GetProcAddress("aglSetCurrentContext"); + aglGetCurrentContext = (aglGetCurrentContextPROC)extgl_GetProcAddress("aglGetCurrentContext"); + aglSetDrawable = (aglSetDrawablePROC)extgl_GetProcAddress("aglSetDrawable"); + aglSetOffScreen = (aglSetOffScreenPROC)extgl_GetProcAddress("aglSetOffScreen"); + aglSetFullScreen = (aglSetFullScreenPROC)extgl_GetProcAddress("aglSetFullScreen"); + aglGetDrawable = (aglGetDrawablePROC)extgl_GetProcAddress("aglGetDrawable"); + aglSetVirtualScreen = (aglSetVirtualScreenPROC)extgl_GetProcAddress("aglSetVirtualScreen"); + aglGetVirtualScreen = (aglGetVirtualScreenPROC)extgl_GetProcAddress("aglGetVirtualScreen"); + aglGetVersion = (aglGetVersionPROC)extgl_GetProcAddress("aglGetVersion"); + aglSwapBuffers = (aglSwapBuffersPROC)extgl_GetProcAddress("aglSwapBuffers"); + aglEnable = (aglEnablePROC)extgl_GetProcAddress("aglEnable"); + aglDisable = (aglDisablePROC)extgl_GetProcAddress("aglDisable"); + aglIsEnabled = (aglIsEnabledPROC)extgl_GetProcAddress("aglIsEnabled"); + aglSetInteger = (aglSetIntegerPROC)extgl_GetProcAddress("aglSetInteger"); + aglGetInteger = (aglGetIntegerPROC)extgl_GetProcAddress("aglGetInteger"); + aglUseFont = (aglUseFontPROC)extgl_GetProcAddress("aglUseFont"); + aglGetError = (aglGetErrorPROC)extgl_GetProcAddress("aglGetError"); + aglErrorString = (aglErrorStringPROC)extgl_GetProcAddress("aglErrorString"); + aglResetLibrary = (aglResetLibraryPROC)extgl_GetProcAddress("aglResetLibrary"); + aglSurfaceTexture = (aglSurfaceTexturePROC)extgl_GetProcAddress("aglSurfaceTexture"); + return !extgl_error; } #endif @@ -3046,7 +3124,6 @@ extgl_Extensions.OpenGL12 = false; extgl_Extensions.OpenGL13 = false; extgl_Extensions.OpenGL14 = false; - if (s != NULL) { // Fall trhough @@ -3154,7 +3231,6 @@ bool extgl_Initialize(JNIEnv *env, jobject ext_set) { extgl_error = false; - extgl_InitOpenGL1_1(); extgl_InitGLU12(); if (extgl_error) @@ -3218,11 +3294,6 @@ #ifdef _WIN32 /* load WGL extensions */ extgl_InitializeWGL(env, ext_set); -#endif - -#ifdef _AGL - /* load AGL extensions */ - extgl_InitializeAGL(env, ext_set); #endif return true; } Index: extgl.h CVS Browser: http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/java-game-lib/LWJGL/src/native/common/extgl.h =================================================================== RCS file: /cvsroot/java-game-lib/LWJGL/src/native/common/extgl.h,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- extgl.h 26 Sep 2003 13:59:49 -0000 1.15 +++ extgl.h 29 Sep 2003 09:26:20 -0000 1.16 @@ -343,73 +343,73 @@ void aglDellocEntryPoints (void); void * aglGetProcAddress (char * pszProc); */ -typedef AGLPixelFormat (APIENTRY * aglChoosePixelFormatEXTPROC)(const AGLDevice *gdevs, GLint ndev, const GLint *attribs); -typedef void (APIENTRY * aglDestroyPixelFormatEXTPROC)(AGLPixelFormat pix); -typedef AGLPixelFormat (APIENTRY * aglNextPixelFormatEXTPROC)(AGLPixelFormat pix); -typedef GLboolean (APIENTRY * aglDescribePixelFormatEXTPROC)(AGLPixelFormat pix, GLint attrib, GLint *value); -typedef AGLDevice * (APIENTRY * aglDevicesOfPixelFormatEXTPROC)(AGLPixelFormat pix, GLint *ndevs); -typedef AGLRendererInfo (APIENTRY * aglQueryRendererInfoEXTPROC)(const AGLDevice *gdevs, GLint ndev); -typedef void (APIENTRY * aglDestroyRendererInfoEXTPROC)(AGLRendererInfo rend); -typedef AGLRendererInfo (APIENTRY * aglNextRendererInfoEXTPROC)(AGLRendererInfo rend); -typedef GLboolean (APIENTRY * aglDescribeRendererEXTPROC)(AGLRendererInfo rend, GLint prop, GLint *value); -typedef AGLContext (APIENTRY * aglCreateContextEXTPROC)(AGLPixelFormat pix, AGLContext share); -typedef GLboolean (APIENTRY * aglDestroyContextEXTPROC)(AGLContext ctx); -typedef GLboolean (APIENTRY * aglCopyContextEXTPROC)(AGLContext src, AGLContext dst, GLuint mask); -typedef GLboolean (APIENTRY * aglUpdateContextEXTPROC)(AGLContext ctx); -typedef GLboolean (APIENTRY * aglSetCurrentContextEXTPROC)(AGLContext ctx); -typedef AGLContext (APIENTRY * aglGetCurrentContextEXTPROC)(void); -typedef GLboolean (APIENTRY * aglSetDrawableEXTPROC)(AGLContext ctx, AGLDrawable draw); -typedef GLboolean (APIENTRY * aglSetOffScreenEXTPROC)(AGLContext ctx, GLsizei width, GLsizei height, GLsizei rowbytes, GLvoid *baseaddr); -typedef GLboolean (APIENTRY * aglSetFullScreenEXTPROC)(AGLContext ctx, GLsizei width, GLsizei height, GLsizei freq, GLint device); -typedef AGLDrawable (APIENTRY * aglGetDrawableEXTPROC)(AGLContext ctx); -typedef GLboolean (APIENTRY * aglSetVirtualScreenEXTPROC)(AGLContext ctx, GLint screen); -typedef GLint (APIENTRY * aglGetVirtualScreenEXTPROC)(AGLContext ctx); -typedef void (APIENTRY * aglGetVersionEXTPROC)(GLint *major, GLint *minor); -typedef void (APIENTRY * aglSwapBuffersEXTPROC)(AGLContext ctx); -typedef GLboolean (APIENTRY * aglEnableEXTPROC)(AGLContext ctx, GLenum pname); -typedef GLboolean (APIENTRY * aglDisableEXTPROC)(AGLContext ctx, GLenum pname); -typedef GLboolean (APIENTRY * aglIsEnabledEXTPROC)(AGLContext ctx, GLenum pname); -typedef GLboolean (APIENTRY * aglSetIntegerEXTPROC)(AGLContext ctx, GLenum pname, const GLint *params); -typedef GLboolean (APIENTRY * aglGetIntegerEXTPROC)(AGLContext ctx, GLenum pname, GLint *params); -typedef GLboolean (APIENTRY * aglUseFontEXTPROC)(AGLContext ctx, GLint fontID, Style face, GLint size, GLint first, GLint count, GLint base); -typedef GLenum (APIENTRY * aglGetErrorEXTPROC)(void); -typedef const GLubyte * (APIENTRY * aglErrorStringEXTPROC)(GLenum code); -typedef void (APIENTRY * aglResetLibraryEXTPROC)(void); -typedef void (APIENTRY * aglSurfaceTextureEXTPROC) (AGLContext context, GLenum target, GLenum internalformat, AGLContext surfacecontext); +typedef AGLPixelFormat (APIENTRY * aglChoosePixelFormatPROC)(const AGLDevice *gdevs, GLint ndev, const GLint *attribs); +typedef void (APIENTRY * aglDestroyPixelFormatPROC)(AGLPixelFormat pix); +typedef AGLPixelFormat (APIENTRY * aglNextPixelFormatPROC)(AGLPixelFormat pix); +typedef GLboolean (APIENTRY * aglDescribePixelFormatPROC)(AGLPixelFormat pix, GLint attrib, GLint *value); +typedef AGLDevice * (APIENTRY * aglDevicesOfPixelFormatPROC)(AGLPixelFormat pix, GLint *ndevs); +typedef AGLRendererInfo (APIENTRY * aglQueryRendererInfoPROC)(const AGLDevice *gdevs, GLint ndev); +typedef void (APIENTRY * aglDestroyRendererInfoPROC)(AGLRendererInfo rend); +typedef AGLRendererInfo (APIENTRY * aglNextRendererInfoPROC)(AGLRendererInfo rend); +typedef GLboolean (APIENTRY * aglDescribeRendererPROC)(AGLRendererInfo rend, GLint prop, GLint *value); +typedef AGLContext (APIENTRY * aglCreateContextPROC)(AGLPixelFormat pix, AGLContext share); +typedef GLboolean (APIENTRY * aglDestroyContextPROC)(AGLContext ctx); +typedef GLboolean (APIENTRY * aglCopyContextPROC)(AGLContext src, AGLContext dst, GLuint mask); +typedef GLboolean (APIENTRY * aglUpdateContextPROC)(AGLContext ctx); +typedef GLboolean (APIENTRY * aglSetCurrentContextPROC)(AGLContext ctx); +typedef AGLContext (APIENTRY * aglGetCurrentContextPROC)(void); +typedef GLboolean (APIENTRY * aglSetDrawablePROC)(AGLContext ctx, AGLDrawable draw); +typedef GLboolean (APIENTRY * aglSetOffScreenPROC)(AGLContext ctx, GLsizei width, GLsizei height, GLsizei rowbytes, GLvoid *baseaddr); +typedef GLboolean (APIENTRY * aglSetFullScreenPROC)(AGLContext ctx, GLsizei width, GLsizei height, GLsizei freq, GLint device); +typedef AGLDrawable (APIENTRY * aglGetDrawablePROC)(AGLContext ctx); +typedef GLboolean (APIENTRY * aglSetVirtualScreenPROC)(AGLContext ctx, GLint screen); +typedef GLint (APIENTRY * aglGetVirtualScreenPROC)(AGLContext ctx); +typedef void (APIENTRY * aglGetVersionPROC)(GLint *major, GLint *minor); +typedef void (APIENTRY * aglSwapBuffersPROC)(AGLContext ctx); +typedef GLboolean (APIENTRY * aglEnablePROC)(AGLContext ctx, GLenum pname); +typedef GLboolean (APIENTRY * aglDisablePROC)(AGLContext ctx, GLenum pname); +typedef GLboolean (APIENTRY * aglIsEnabledPROC)(AGLContext ctx, GLenum pname); +typedef GLboolean (APIENTRY * aglSetIntegerPROC)(AGLContext ctx, GLenum pname, const GLint *params); +typedef GLboolean (APIENTRY * aglGetIntegerPROC)(AGLContext ctx, GLenum pname, GLint *params); +typedef GLboolean (APIENTRY * aglUseFontPROC)(AGLContext ctx, GLint fontID, Style face, GLint size, GLint first, GLint count, GLint base); +typedef GLenum (APIENTRY * aglGetErrorPROC)(void); +typedef const GLubyte * (APIENTRY * aglErrorStringPROC)(GLenum code); +typedef void (APIENTRY * aglResetLibraryPROC)(void); +typedef void (APIENTRY * aglSurfaceTexturePROC) (AGLContext context, GLenum target, GLenum internalformat, AGLContext surfacecontext); -extern aglChoosePixelFormatEXTPROC aglChoosePixelFormat; -extern aglDestroyPixelFormatEXTPROC aglDestroyPixelFormat; -extern aglNextPixelFormatEXTPROC aglNextPixelFormat; -extern aglDescribePixelFormatEXTPROC aglDescribePixelFormat; -extern aglDevicesOfPixelFormatEXTPROC aglDevicesOfPixelFormat; -extern aglQueryRendererInfoEXTPROC aglQueryRendererInfo; -extern aglDestroyRendererInfoEXTPROC aglDestroyRendererInfo; -extern aglNextRendererInfoEXTPROC aglNextRendererInfo; -extern aglDescribeRendererEXTPROC aglDescribeRenderer; -extern aglCreateContextEXTPROC aglCreateContext; -extern aglDestroyContextEXTPROC aglDestroyContext; -extern aglCopyContextEXTPROC aglCopyContext; -extern aglUpdateContextEXTPROC aglUpdateContext; -extern aglSetCurrentContextEXTPROC aglSetCurrentContext; -extern aglGetCurrentContextEXTPROC aglGetCurrentContext; -extern aglSetDrawableEXTPROC aglSetDrawable; -extern aglSetOffScreenEXTPROC aglSetOffScreen; -extern aglSetFullScreenEXTPROC aglSetFullScreen; -extern aglGetDrawableEXTPROC aglGetDrawable; -extern aglSetVirtualScreenEXTPROC aglSetVirtualScreen; -extern aglGetVirtualScreenEXTPROC aglGetVirtualScreen; -extern aglGetVersionEXTPROC aglGetVersion; -extern aglSwapBuffersEXTPROC aglSwapBuffers; -extern aglEnableEXTPROC aglEnable; -extern aglDisableEXTPROC aglDisable; -extern aglIsEnabledEXTPROC aglIsEnabled; -extern aglSetIntegerEXTPROC aglSetInteger; -extern aglGetIntegerEXTPROC aglGetInteger; -extern aglUseFontEXTPROC aglUseFont; -extern aglGetErrorEXTPROC aglGetError; -extern aglErrorStringEXTPROC aglErrorString; -extern aglResetLibraryEXTPROC aglResetlibrary; -extern aglSurfaceTextureEXTPROC aglSurfaceTexture; +extern aglChoosePixelFormatPROC aglChoosePixelFormat; +extern aglDestroyPixelFormatPROC aglDestroyPixelFormat; +extern aglNextPixelFormatPROC aglNextPixelFormat; +extern aglDescribePixelFormatPROC aglDescribePixelFormat; +extern aglDevicesOfPixelFormatPROC aglDevicesOfPixelFormat; +extern aglQueryRendererInfoPROC aglQueryRendererInfo; +extern aglDestroyRendererInfoPROC aglDestroyRendererInfo; +extern aglNextRendererInfoPROC aglNextRendererInfo; +extern aglDescribeRendererPROC aglDescribeRenderer; +extern aglCreateContextPROC aglCreateContext; +extern aglDestroyContextPROC aglDestroyContext; +extern aglCopyContextPROC aglCopyContext; +extern aglUpdateContextPROC aglUpdateContext; +extern aglSetCurrentContextPROC aglSetCurrentContext; +extern aglGetCurrentContextPROC aglGetCurrentContext; +extern aglSetDrawablePROC aglSetDrawable; +extern aglSetOffScreenPROC aglSetOffScreen; +extern aglSetFullScreenPROC aglSetFullScreen; +extern aglGetDrawablePROC aglGetDrawable; +extern aglSetVirtualScreenPROC aglSetVirtualScreen; +extern aglGetVirtualScreenPROC aglGetVirtualScreen; +extern aglGetVersionPROC aglGetVersion; +extern aglSwapBuffersPROC aglSwapBuffers; +extern aglEnablePROC aglEnable; +extern aglDisablePROC aglDisable; +extern aglIsEnabledPROC aglIsEnabled; +extern aglSetIntegerPROC aglSetInteger; +extern aglGetIntegerPROC aglGetInteger; +extern aglUseFontPROC aglUseFont; +extern aglGetErrorPROC aglGetError; +extern aglErrorStringPROC aglErrorString; +extern aglResetLibraryPROC aglResetLibrary; +extern aglSurfaceTexturePROC aglSurfaceTexture; /************************************************************************/ @@ -5424,6 +5424,9 @@ bool extgl_Open(void); #ifdef _X11 bool extgl_InitGLX(JNIEnv *env, jobject ext_set, Display *disp, int screen); +#endif +#ifdef _AGL +bool extgl_InitAGL(JNIEnv *env, jobject ext_set); #endif void extgl_Close(void); |