diff options
author | Sven Gothel <[email protected]> | 2010-11-15 03:53:22 +0100 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2010-11-15 03:53:22 +0100 |
commit | 35d1c40fe89311f88c7303930e172adcc5d6853a (patch) | |
tree | 383f74cbd782f32d194b7f893a5365fa86093ac7 /src/jogl/classes/javax/media/opengl/GLContext.java | |
parent | 2c1a870f56f54df3e96d68e3d5dadee0bcae7cb5 (diff) |
NativeWindow AbstractGraphicsDevice: Add 'unitID' attribute and getUniqueID()
Preparation to support multiple devices on one machine,
hence adding the unitID a unique ID/index of the associated GPU, or GPU affinity.
Adding getUniqueID() to return a cached semantic unique string id for the device.
This was removed from the temp. impl in JOGL's GLContext, added unitID.
All other changes just adapt to the above.
Diffstat (limited to 'src/jogl/classes/javax/media/opengl/GLContext.java')
-rw-r--r-- | src/jogl/classes/javax/media/opengl/GLContext.java | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/src/jogl/classes/javax/media/opengl/GLContext.java b/src/jogl/classes/javax/media/opengl/GLContext.java index 34ac8e93b..45e1361fb 100644 --- a/src/jogl/classes/javax/media/opengl/GLContext.java +++ b/src/jogl/classes/javax/media/opengl/GLContext.java @@ -557,26 +557,22 @@ public abstract class GLContext { private static /*final*/ HashSet/*<UniqueDeviceString>*/ deviceVersionsAvailableSet = new HashSet(); protected static String getContextFQN(AbstractGraphicsDevice device, int major, int minor, int ctp) { - return getUniqueDeviceString(device) + "-" + toHexString(compose8bit(major, minor, ctp, 0)); + return device.getUniqueID() + "-" + toHexString(compose8bit(major, minor, ctp, 0)); } protected static String getDeviceVersionAvailableKey(AbstractGraphicsDevice device, int major, int profile) { - return getUniqueDeviceString(device) + "-" + toHexString(compose8bit(major, profile, 0, 0)); - } - - protected static String getUniqueDeviceString(AbstractGraphicsDevice device) { - return device.getType() + "_" + device.getConnection() ; + return device.getUniqueID() + "-" + toHexString(compose8bit(major, profile, 0, 0)); } protected static boolean getAvailableGLVersionsSet(AbstractGraphicsDevice device) { synchronized ( deviceVersionsAvailableSet ) { - return deviceVersionsAvailableSet.contains(getUniqueDeviceString(device)); + return deviceVersionsAvailableSet.contains(device.getUniqueID()); } } protected static void setAvailableGLVersionsSet(AbstractGraphicsDevice device) { synchronized ( deviceVersionsAvailableSet ) { - String devKey = getUniqueDeviceString(device); + String devKey = device.getUniqueID(); if ( deviceVersionsAvailableSet.contains(devKey) ) { throw new InternalError("Already set: "+devKey); } |