diff options
author | Sven Gothel <[email protected]> | 2013-04-26 05:38:24 +0200 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2013-04-26 05:38:24 +0200 |
commit | 36dc4f5ab6957a4078842c488afb51df2fdc0630 (patch) | |
tree | 5e5629f085f7d244faf1c1e5e15cfe935e87e1b4 /src/jogl/classes/javax/media/opengl/GLDrawableFactory.java | |
parent | 75b3d37a3b15c071b49609921244bcb62d329fa9 (diff) |
Simplify GLDrawableFactory's SharedResource Query Methods; Move WindowsWGLDrawableFactory Quirks to GLRendererQuirks (NeedCurrCtx4ARBPixFmtQueries, NeedCurrCtx4ARBCreateContext); Bug 706: Confine NeedCurrCtx4ARBCreateContext to [Windows, ATI, driver < 12.102.3); Avoid possible NPE @ GLContext.getGLVendorVersionNumber()
- Simplify GLDrawableFactory's SharedResource Query Methods
- Moving common methods to GLDrawableFactory/GLDrawableFactoryImpl
while reusing common methods to SharedResourceRunner.Resource.
- All factories SharedResources impl. SharedResourceRunner.Resource.
- Move WindowsWGLDrawableFactory Quirks to GLRendererQuirks (NeedCurrCtx4ARBPixFmtQueries, NeedCurrCtx4ARBCreateContext)
- For better maintenance, move the mentioned quirks from the windows factory to our common place,
being detected within GLContextImpl after each context creation.
- Bug 706: Confine NeedCurrCtx4ARBCreateContext to [Windows, ATI, driver < 12.102.3)
- Before we added this quirk if [Windows, ATI],
however, we have hopes that the new drivers will suffice for all
as tested successful on my test machine (AMD Radeon HD 6300M Series, amd_catalyst_13.5_mobility_beta2).
- Avoid possible NPE @ GLContext.getGLVendorVersionNumber()
- GLContext.getGLVendorVersionNumber() never returns 'null' but a zero version instance instead!
- Add API doc.
- Use mixed case names in GLContextImpl.setRendererQuirks(..).
Diffstat (limited to 'src/jogl/classes/javax/media/opengl/GLDrawableFactory.java')
-rw-r--r-- | src/jogl/classes/javax/media/opengl/GLDrawableFactory.java | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/jogl/classes/javax/media/opengl/GLDrawableFactory.java b/src/jogl/classes/javax/media/opengl/GLDrawableFactory.java index 9feb54a46..dbf6df0de 100644 --- a/src/jogl/classes/javax/media/opengl/GLDrawableFactory.java +++ b/src/jogl/classes/javax/media/opengl/GLDrawableFactory.java @@ -285,7 +285,7 @@ public abstract class GLDrawableFactory { if(null==device) { device = getDefaultDevice(); if(null==device) { - throw new InternalError("no default device"); + throw new InternalError("no default device available"); } if (GLProfile.DEBUG) { System.err.println("Info: "+getClass().getSimpleName()+".validateDevice: using default device : "+device); @@ -322,7 +322,10 @@ public abstract class GLDrawableFactory { * @param device which {@link javax.media.nativewindow.AbstractGraphicsDevice#getConnection() connection} denotes the shared the target device, may be <code>null</code> for the platform's default device. * @return true if a shared resource could been created, otherwise false. */ - protected abstract boolean createSharedResource(AbstractGraphicsDevice device); + protected final boolean createSharedResource(AbstractGraphicsDevice device) { + return createSharedResourceImpl(device); + } + protected abstract boolean createSharedResourceImpl(AbstractGraphicsDevice device); /** * Returns true if the <code>quirk</code> exist in the shared resource's context {@link GLRendererQuirks}. @@ -419,7 +422,7 @@ public abstract class GLDrawableFactory { public final List<GLCapabilitiesImmutable> getAvailableCapabilities(AbstractGraphicsDevice device) { device = validateDevice(device); if(null!=device) { - return getAvailableCapabilitiesImpl(device); + return getAvailableCapabilitiesImpl(device); } return null; } |