23 * questions. 24 */ 25 26 package sun.java2d.opengl; 27 28 import java.awt.GraphicsConfiguration; 29 import java.awt.GraphicsDevice; 30 import java.awt.GraphicsEnvironment; 31 import java.awt.Image; 32 import java.awt.Rectangle; 33 import java.awt.image.ColorModel; 34 35 import sun.awt.X11ComponentPeer; 36 import sun.java2d.SurfaceData; 37 38 public abstract class GLXSurfaceData extends OGLSurfaceData { 39 40 protected X11ComponentPeer peer; 41 private GLXGraphicsConfig graphicsConfig; 42 43 private native void initOps(X11ComponentPeer peer, long aData); 44 45 protected GLXSurfaceData(X11ComponentPeer peer, GLXGraphicsConfig gc, 46 ColorModel cm, int type) 47 { 48 super(gc, cm, type); 49 this.peer = peer; 50 this.graphicsConfig = gc; 51 initOps(peer, graphicsConfig.getAData()); 52 } 53 54 public GraphicsConfiguration getDeviceConfiguration() { 55 return graphicsConfig; 56 } 57 58 /** 59 * Creates a SurfaceData object representing the primary (front) buffer 60 * of an on-screen Window. 61 */ 62 public static GLXWindowSurfaceData createData(X11ComponentPeer peer) { 63 GLXGraphicsConfig gc = getGC(peer); 64 return new GLXWindowSurfaceData(peer, gc); 65 } 66 67 /** 68 * Creates a SurfaceData object representing the back buffer of a 69 * double-buffered on-screen Window. 70 */ 71 public static GLXOffScreenSurfaceData createData(X11ComponentPeer peer, | 23 * questions. 24 */ 25 26 package sun.java2d.opengl; 27 28 import java.awt.GraphicsConfiguration; 29 import java.awt.GraphicsDevice; 30 import java.awt.GraphicsEnvironment; 31 import java.awt.Image; 32 import java.awt.Rectangle; 33 import java.awt.image.ColorModel; 34 35 import sun.awt.X11ComponentPeer; 36 import sun.java2d.SurfaceData; 37 38 public abstract class GLXSurfaceData extends OGLSurfaceData { 39 40 protected X11ComponentPeer peer; 41 private GLXGraphicsConfig graphicsConfig; 42 43 private native void initOps(OGLGraphicsConfig gc, X11ComponentPeer peer, 44 long aData); 45 46 protected GLXSurfaceData(X11ComponentPeer peer, GLXGraphicsConfig gc, 47 ColorModel cm, int type) 48 { 49 super(gc, cm, type); 50 this.peer = peer; 51 this.graphicsConfig = gc; 52 initOps(gc, peer, graphicsConfig.getAData()); 53 } 54 55 public GraphicsConfiguration getDeviceConfiguration() { 56 return graphicsConfig; 57 } 58 59 /** 60 * Creates a SurfaceData object representing the primary (front) buffer 61 * of an on-screen Window. 62 */ 63 public static GLXWindowSurfaceData createData(X11ComponentPeer peer) { 64 GLXGraphicsConfig gc = getGC(peer); 65 return new GLXWindowSurfaceData(peer, gc); 66 } 67 68 /** 69 * Creates a SurfaceData object representing the back buffer of a 70 * double-buffered on-screen Window. 71 */ 72 public static GLXOffScreenSurfaceData createData(X11ComponentPeer peer, |