aboutsummaryrefslogtreecommitdiffstats
path: root/src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2011-02-28 05:22:24 +0100
committerSven Gothel <[email protected]>2011-02-28 05:22:24 +0100
commit254052b54cebdb957d83e46e377534ef263d6029 (patch)
tree7ce8240d982303ed078d3fc8c59db5bba5b8ff6b /src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java
parent3ee26cd01789d0169c5225b3a4e5229e4a1c6676 (diff)
JOGL GLDrawableFactory: Expose experimental method createProxySurface(..) for new windowing system ad-hoc development.
WARNING: This method may change ro be removed over time!
Diffstat (limited to 'src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java')
-rw-r--r--src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java b/src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java
index 585590170..e04ced6fa 100644
--- a/src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java
+++ b/src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java
@@ -232,6 +232,21 @@ public abstract class GLDrawableFactoryImpl extends GLDrawableFactory {
GLCapabilitiesChooser chooser,
int width, int height);
+ public ProxySurface createProxySurface(AbstractGraphicsDevice device, long windowHandle, GLCapabilitiesImmutable capsRequested, GLCapabilitiesChooser chooser) {
+ if(null == device) {
+ throw new GLException("No shared device for requested: "+device);
+ }
+
+ device.lock();
+ try {
+ return createProxySurfaceImpl(device, windowHandle, capsRequested, chooser);
+ } finally {
+ device.unlock();
+ }
+ }
+
+ protected abstract ProxySurface createProxySurfaceImpl(AbstractGraphicsDevice device, long windowHandle, GLCapabilitiesImmutable capsRequested, GLCapabilitiesChooser chooser);
+
//---------------------------------------------------------------------------
//
// External GLDrawable construction