APIdia Launch Partner
Top Inners Fields Constructors Methods
sun.java2d.opengl

public abstract Class GLXSurfaceData

extends OGLSurfaceData
Class Inheritance
Known Direct Subclasses
sun.java2d.opengl.GLXSurfaceData.GLXWindowSurfaceData, sun.java2d.opengl.GLXSurfaceData.GLXOffScreenSurfaceData
Imports
java.awt.GraphicsConfiguration, .GraphicsDevice, .GraphicsEnvironment, .Image, .Rectangle, java.awt.image.ColorModel, sun.awt.X11ComponentPeer, sun.java2d.SurfaceData

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class
public static class
GLXSurfaceData.GLXVSyncOffScreenSurfaceData

A surface which implements a v-synced flip back-buffer with COPIED FlipContents.

public static class

Field Summary

Modifier and TypeField and Description
private GLXGraphicsConfig
protected X11ComponentPeer
Inherited from sun.java2d.opengl.OGLSurfaceData:
FBOBJECToglAAPgramPipeoglImagePipeoglRenderPipeoglTextPipeoglTxRenderPipeOpenGLSurfaceOpenGLSurfaceRTTOpenGLTexturePF_3BYTE_BGRPF_BYTE_GRAYPF_INT_ARGBPF_INT_ARGB_PREPF_INT_BGRPF_INT_BGRXPF_INT_RGBPF_INT_RGBXPF_USHORT_555_RGBPF_USHORT_555_RGBXPF_USHORT_565_RGBPF_USHORT_GRAYtype

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
public static GLXSurfaceData.GLXWindowSurfaceData
createData(X11ComponentPeer peer)

Creates a SurfaceData object representing the primary (front) buffer of an on-screen Window.

public static GLXSurfaceData.GLXOffScreenSurfaceData
createData(X11ComponentPeer peer, Image image, int type)

Creates a SurfaceData object representing the back buffer of a double-buffered on-screen Window.

public static GLXSurfaceData.GLXOffScreenSurfaceData
createData(GLXGraphicsConfig gc, int width, int height, ColorModel cm, Image image, int type)

Creates a SurfaceData object representing an off-screen buffer (either a FBO or Texture).

public GraphicsConfiguration
getDeviceConfiguration()

Implements abstract sun.java2d.SurfaceData.getDeviceConfiguration.

Return the GraphicsConfiguration object that describes this destination surface.

public static GLXGraphicsConfig
private native void
Inherited from sun.java2d.opengl.OGLSurfaceData:
canRenderLCDTextcopyAreadisposeflushgetContextgetMaskFillgetNativeBoundsgetNativeResourcegetOGLGraphicsConfiggetRastergetTextureIDgetTextureTargetgetTypeinitFBObjectinitFlipBackbufferinitSurfaceinitTextureisOnScreenisTexNonPow2AvailableisTexRectAvailablemakeProxyForswapBuffersvalidatePipe

Field Detail

graphicsConfigback to summary
private GLXGraphicsConfig graphicsConfig

Hides sun.java2d.opengl.OGLSurfaceData.graphicsConfig.

peerback to summary
protected X11ComponentPeer peer

Constructor Detail

GLXSurfaceDataback to summary
protected GLXSurfaceData(X11ComponentPeer peer, GLXGraphicsConfig gc, ColorModel cm, int type)

Method Detail

createDataback to summary
public static GLXSurfaceData.GLXWindowSurfaceData createData(X11ComponentPeer peer)

Creates a SurfaceData object representing the primary (front) buffer of an on-screen Window.

createDataback to summary
public static GLXSurfaceData.GLXOffScreenSurfaceData createData(X11ComponentPeer peer, Image image, int type)

Creates a SurfaceData object representing the back buffer of a double-buffered on-screen Window.

createDataback to summary
public static GLXSurfaceData.GLXOffScreenSurfaceData createData(GLXGraphicsConfig gc, int width, int height, ColorModel cm, Image image, int type)

Creates a SurfaceData object representing an off-screen buffer (either a FBO or Texture).

getDeviceConfigurationback to summary
public GraphicsConfiguration getDeviceConfiguration()

Implements abstract sun.java2d.SurfaceData.getDeviceConfiguration.

Doc from sun.java2d.SurfaceData.getDeviceConfiguration.

Return the GraphicsConfiguration object that describes this destination surface.

Annotations
@Override
getGCback to summary
public static GLXGraphicsConfig getGC(X11ComponentPeer peer)
initOpsback to summary
private native void initOps(OGLGraphicsConfig gc, X11ComponentPeer peer, long aData)
sun.java2d.opengl back to summary

public Class GLXSurfaceData.GLXOffScreenSurfaceData

extends GLXSurfaceData
Class Inheritance
Known Direct Subclasses
sun.java2d.opengl.GLXSurfaceData.GLXVSyncOffScreenSurfaceData

Field Summary

Modifier and TypeField and Description
private int
private Image
private final int
private int
Inherited from sun.java2d.opengl.GLXSurfaceData:
peer

Constructor Summary

AccessConstructor and Description
public
GLXOffScreenSurfaceData(X11ComponentPeer peer, GLXGraphicsConfig gc, int width, int height, Image image, ColorModel cm, int type)

Method Summary

Modifier and TypeMethod and Description
public Rectangle
getBounds()

Implements abstract sun.java2d.SurfaceData.getBounds.

Implements sun.java2d.pipe.hw.AccelSurface.getBounds.

Returns the requested bounds of the destination surface.

public double
getDefaultScaleX()

Overrides sun.java2d.SurfaceData.getDefaultScaleX.

Returns default horizontal scale factor of the destination surface.

public double
getDefaultScaleY()

Overrides sun.java2d.SurfaceData.getDefaultScaleY.

Returns default vertical scale factor of the destination surface.

public Object
getDestination()

Implements abstract sun.java2d.SurfaceData.getDestination.

Returns destination Image associated with this SurfaceData.

public SurfaceData
getReplacement()

Implements abstract sun.java2d.SurfaceData.getReplacement.

Certain changes in the configuration of a surface require the invalidation of existing associated SurfaceData objects and the creation of brand new ones.

Inherited from sun.java2d.opengl.GLXSurfaceData:
createDatacreateDatacreateDatagetDeviceConfigurationgetGC

Field Detail

heightback to summary
private int height
offscreenImageback to summary
private Image offscreenImage
scaleback to summary
private final int scale
widthback to summary
private int width

Constructor Detail

GLXOffScreenSurfaceDataback to summary
public GLXOffScreenSurfaceData(X11ComponentPeer peer, GLXGraphicsConfig gc, int width, int height, Image image, ColorModel cm, int type)

Method Detail

getBoundsback to summary
public Rectangle getBounds()

Implements abstract sun.java2d.SurfaceData.getBounds.

Implements sun.java2d.pipe.hw.AccelSurface.getBounds.

Doc from sun.java2d.pipe.hw.AccelSurface.getBounds.

Returns the requested bounds of the destination surface. The real bounds of the native accelerated surface may differ. Use getNativeBounds to get the bounds of the native surface.

Annotations
@Override
getDefaultScaleXback to summary
public double getDefaultScaleX()

Overrides sun.java2d.SurfaceData.getDefaultScaleX.

Doc from sun.java2d.SurfaceData.getDefaultScaleX.

Returns default horizontal scale factor of the destination surface. Scale factor describes the mapping between virtual and physical coordinates of the SurfaceData. If the scale is 2 then virtual pixel coordinates need to be doubled for physical pixels.

Annotations
@Override
getDefaultScaleYback to summary
public double getDefaultScaleY()

Overrides sun.java2d.SurfaceData.getDefaultScaleY.

Doc from sun.java2d.SurfaceData.getDefaultScaleY.

Returns default vertical scale factor of the destination surface. Scale factor describes the mapping between virtual and physical coordinates of the SurfaceData. If the scale is 2 then virtual pixel coordinates need to be doubled for physical pixels.

Annotations
@Override
getDestinationback to summary
public Object getDestination()

Implements abstract sun.java2d.SurfaceData.getDestination.

Returns destination Image associated with this SurfaceData.

Annotations
@Override
getReplacementback to summary
public SurfaceData getReplacement()

Implements abstract sun.java2d.SurfaceData.getReplacement.

Doc from sun.java2d.SurfaceData.getReplacement.

Certain changes in the configuration of a surface require the invalidation of existing associated SurfaceData objects and the creation of brand new ones. These changes include size, ColorModel, or SurfaceType. Existing Graphics objects which are directed at such surfaces, however, must continue to render to them even after the change occurs underneath the covers. The getReplacement() method is called from SunGraphics2D.revalidateAll() when the associated SurfaceData is found to be invalid so that a Graphics object can continue to render to the surface in its new configuration. Such changes only tend to happen to window based surfaces since most image based surfaces never change size or pixel format. Even VolatileImage objects never change size and they only change their pixel format when manually validated against a new GraphicsConfiguration, at which point old Graphics objects are no longer expected to render to them after the validation step. Thus, only window based surfaces really need to deal with this form of replacement.

Annotations
@Override
sun.java2d.opengl back to summary

public final Class GLXSurfaceData.GLXVSyncOffScreenSurfaceData

extends GLXOffScreenSurfaceData
Class Inheritance

A surface which implements a v-synced flip back-buffer with COPIED FlipContents. This surface serves as a back-buffer to the outside world, while it is actually an offscreen surface. When the BufferStrategy this surface belongs to is showed, it is first copied to the real private FLIP_BACKBUFFER, which is then flipped.

Field Summary

Modifier and TypeField and Description
private GLXSurfaceData.GLXOffScreenSurfaceData

Constructor Summary

AccessConstructor and Description
public
GLXVSyncOffScreenSurfaceData(X11ComponentPeer peer, GLXGraphicsConfig gc, int width, int height, Image image, ColorModel cm, int type)

Method Summary

Modifier and TypeMethod and Description
public void
flush()

Overrides sun.java2d.opengl.OGLSurfaceData.flush.

Synchronously releases resources associated with this surface.

public SurfaceData
Inherited from sun.java2d.opengl.GLXSurfaceData.GLXOffScreenSurfaceData:
getBoundsgetDefaultScaleXgetDefaultScaleYgetDestinationgetReplacement

Field Detail

flipSurfaceback to summary
private GLXSurfaceData.GLXOffScreenSurfaceData flipSurface

Constructor Detail

GLXVSyncOffScreenSurfaceDataback to summary
public GLXVSyncOffScreenSurfaceData(X11ComponentPeer peer, GLXGraphicsConfig gc, int width, int height, Image image, ColorModel cm, int type)

Method Detail

flushback to summary
public void flush()

Overrides sun.java2d.opengl.OGLSurfaceData.flush.

Doc from sun.java2d.SurfaceData.flush.

Synchronously releases resources associated with this surface.

Annotations
@Override
getFlipSurfaceback to summary
public SurfaceData getFlipSurface()
sun.java2d.opengl back to summary

public final Class GLXSurfaceData.GLXWindowSurfaceData

extends GLXSurfaceData
Class Inheritance

Field Summary

Modifier and TypeField and Description
protected final int
Inherited from sun.java2d.opengl.GLXSurfaceData:
peer

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public Rectangle
getBounds()

Implements abstract sun.java2d.SurfaceData.getBounds.

Implements sun.java2d.pipe.hw.AccelSurface.getBounds.

Returns the requested bounds of the destination surface.

public double
getDefaultScaleX()

Overrides sun.java2d.SurfaceData.getDefaultScaleX.

Returns default horizontal scale factor of the destination surface.

public double
getDefaultScaleY()

Overrides sun.java2d.SurfaceData.getDefaultScaleY.

Returns default vertical scale factor of the destination surface.

public Object
getDestination()

Implements abstract sun.java2d.SurfaceData.getDestination.

Returns destination Component associated with this SurfaceData.

public SurfaceData
getReplacement()

Implements abstract sun.java2d.SurfaceData.getReplacement.

Certain changes in the configuration of a surface require the invalidation of existing associated SurfaceData objects and the creation of brand new ones.

Inherited from sun.java2d.opengl.GLXSurfaceData:
createDatacreateDatacreateDatagetDeviceConfigurationgetGC

Field Detail

scaleback to summary
protected final int scale

Constructor Detail

GLXWindowSurfaceDataback to summary
public GLXWindowSurfaceData(X11ComponentPeer peer, GLXGraphicsConfig gc)

Method Detail

getBoundsback to summary
public Rectangle getBounds()

Implements abstract sun.java2d.SurfaceData.getBounds.

Implements sun.java2d.pipe.hw.AccelSurface.getBounds.

Doc from sun.java2d.pipe.hw.AccelSurface.getBounds.

Returns the requested bounds of the destination surface. The real bounds of the native accelerated surface may differ. Use getNativeBounds to get the bounds of the native surface.

Annotations
@Override
getDefaultScaleXback to summary
public double getDefaultScaleX()

Overrides sun.java2d.SurfaceData.getDefaultScaleX.

Doc from sun.java2d.SurfaceData.getDefaultScaleX.

Returns default horizontal scale factor of the destination surface. Scale factor describes the mapping between virtual and physical coordinates of the SurfaceData. If the scale is 2 then virtual pixel coordinates need to be doubled for physical pixels.

Annotations
@Override
getDefaultScaleYback to summary
public double getDefaultScaleY()

Overrides sun.java2d.SurfaceData.getDefaultScaleY.

Doc from sun.java2d.SurfaceData.getDefaultScaleY.

Returns default vertical scale factor of the destination surface. Scale factor describes the mapping between virtual and physical coordinates of the SurfaceData. If the scale is 2 then virtual pixel coordinates need to be doubled for physical pixels.

Annotations
@Override
getDestinationback to summary
public Object getDestination()

Implements abstract sun.java2d.SurfaceData.getDestination.

Returns destination Component associated with this SurfaceData.

Annotations
@Override
getReplacementback to summary
public SurfaceData getReplacement()

Implements abstract sun.java2d.SurfaceData.getReplacement.

Doc from sun.java2d.SurfaceData.getReplacement.

Certain changes in the configuration of a surface require the invalidation of existing associated SurfaceData objects and the creation of brand new ones. These changes include size, ColorModel, or SurfaceType. Existing Graphics objects which are directed at such surfaces, however, must continue to render to them even after the change occurs underneath the covers. The getReplacement() method is called from SunGraphics2D.revalidateAll() when the associated SurfaceData is found to be invalid so that a Graphics object can continue to render to the surface in its new configuration. Such changes only tend to happen to window based surfaces since most image based surfaces never change size or pixel format. Even VolatileImage objects never change size and they only change their pixel format when manually validated against a new GraphicsConfiguration, at which point old Graphics objects are no longer expected to render to them after the validation step. Thus, only window based surfaces really need to deal with this form of replacement.

Annotations
@Override