static { JAWTJNILibLoader.loadAWTImpl(); JAWTJNILibLoader.loadNativeWindow("awt"); headlessMode = GraphicsEnvironment.isHeadless(); boolean ok = false; Class jC = null; Method m = null; if (!headlessMode) { try { jC = Class.forName("com.jogamp.opengl.impl.awt.Java2D"); m = jC.getMethod("isQueueFlusherThread", null); ok = true; } catch (Exception e) { } } j2dClazz = jC; isQueueFlusherThread = m; j2dExist = ok; AccessController.doPrivileged( new PrivilegedAction() { public Object run() { try { sunToolkitClass = Class.forName("sun.awt.SunToolkit"); sunToolkitAWTLockMethod = sunToolkitClass.getDeclaredMethod("awtLock", new Class[] {}); sunToolkitAWTLockMethod.setAccessible(true); sunToolkitAWTUnlockMethod = sunToolkitClass.getDeclaredMethod("awtUnlock", new Class[] {}); sunToolkitAWTUnlockMethod.setAccessible(true); } catch (Exception e) { // Either not a Sun JDK or the interfaces have changed since 1.4.2 / 1.5 } return null; } }); boolean _hasSunToolkitAWTLock = false; if (null != sunToolkitAWTLockMethod && null != sunToolkitAWTUnlockMethod) { try { sunToolkitAWTLockMethod.invoke(null, null); sunToolkitAWTUnlockMethod.invoke(null, null); _hasSunToolkitAWTLock = true; } catch (Exception e) { } } hasSunToolkitAWTLock = _hasSunToolkitAWTLock; // useSunToolkitAWTLock = hasSunToolkitAWTLock; useSunToolkitAWTLock = false; }
public static void main(String[] args) { int type = USE_NEWT; String tstName = "demos.es2.perftst.PerfVBOLoad"; // default for (int i = args.length - 1; i >= 0; i--) { if (args[i].equals("-awt")) { type |= USE_AWT; } if (args[i].equals("-test") && i + 1 < args.length) { tstName = args[i + 1]; } } try { PerfModule pmod = (PerfModule) Class.forName(tstName).newInstance(); new Perftst().run(type, pmod); System.exit(0); } catch (Exception e) { e.printStackTrace(); System.exit(1); } }