APIdia Launch Partner
Top Description Inners Fields Constructors Methods
java.awt

public Class BufferCapabilities

extends Object
implements Cloneable
Class Inheritance
All Implemented Interfaces
java.lang.Cloneable
Known Direct Subclasses
java.awt.GraphicsConfiguration.DefaultBufferCapabilities, sun.awt.X11GraphicsConfig.XDBECapabilities, sun.java2d.opengl.GLXGraphicsConfig.GLXBufferCaps, sun.java2d.pipe.hw.ExtendedBufferCapabilities

Capabilities and properties of buffers.
Author
Michael Martak
Since
1.4
See Also
java.awt.image.BufferStrategy#getCapabilities(), GraphicsConfiguration#getBufferCapabilities

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class
BufferCapabilities.FlipContents

A type-safe enumeration of the possible back buffer contents after page-flipping

Field Summary

Modifier and TypeField and Description
private ImageCapabilities
private BufferCapabilities.FlipContents
private ImageCapabilities

Constructor Summary

AccessConstructor and Description
public
BufferCapabilities(ImageCapabilities
the capabilities of the front buffer; cannot be null
frontCaps
,
ImageCapabilities
the capabilities of the back and intermediate buffers; cannot be null
backCaps
,
BufferCapabilities.FlipContents
the contents of the back buffer after page-flipping, null if page flipping is not used (implies blitting)
flipContents
)

Creates a new object for specifying buffering capabilities

Method Summary

Modifier and TypeMethod and Description
public Object

Returns:

a copy of this BufferCapabilities object.
clone
()

Overrides java.lang.Object.clone.

Creates and returns a copy of this object.

public ImageCapabilities

Returns:

the image capabilities of all back buffers (intermediate buffers are considered back buffers)
getBackBufferCapabilities
()

Returns the image capabilities of all back buffers (intermediate buffers are considered back buffers).

public BufferCapabilities.FlipContents

Returns:

the resulting contents of the back buffer after page-flipping
getFlipContents
()

Returns the resulting contents of the back buffer after page-flipping.

public ImageCapabilities

Returns:

the image capabilities of the front (displayed) buffer
getFrontBufferCapabilities
()

Returns the image capabilities of the front (displayed) buffer.

public boolean

Returns:

whether page flipping is only available in full-screen mode
isFullScreenRequired
()

Returns whether page flipping is only available in full-screen mode.

public boolean

Returns:

whether or not page flipping can be performed using more than two buffers
isMultiBufferAvailable
()

Returns whether or not page flipping can be performed using more than two buffers (one or more intermediate buffers as well as the front and back buffer).

public boolean

Returns:

whether or not the buffer strategy uses page flipping
isPageFlipping
()

Returns whether or not the buffer strategy uses page flipping.

Inherited from java.lang.Object:
equalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

backCapsback to summary
private ImageCapabilities backCaps
flipContentsback to summary
private BufferCapabilities.FlipContents flipContents
frontCapsback to summary
private ImageCapabilities frontCaps

Constructor Detail

BufferCapabilitiesback to summary
public BufferCapabilities(ImageCapabilities frontCaps, ImageCapabilities backCaps, BufferCapabilities.FlipContents flipContents)

Creates a new object for specifying buffering capabilities

Parameters
frontCaps:ImageCapabilities

the capabilities of the front buffer; cannot be null

backCaps:ImageCapabilities

the capabilities of the back and intermediate buffers; cannot be null

flipContents:BufferCapabilities.FlipContents

the contents of the back buffer after page-flipping, null if page flipping is not used (implies blitting)

Exceptions
IllegalArgumentException:
if frontCaps or backCaps are null

Method Detail

cloneback to summary
public Object clone()

Overrides java.lang.Object.clone.

Doc from java.lang.Object.clone.

Creates and returns a copy of this object. The precise meaning of "copy" may depend on the class of the object. The general intent is that, for any object x, the expression:

x.clone() != x
will be true, and that the expression:
x.clone().getClass() == x.getClass()
will be true, but these are not absolute requirements. While it is typically the case that:
x.clone().equals(x)
will be true, this is not an absolute requirement.

By convention, the returned object should be obtained by calling super.clone. If a class and all of its superclasses (except Object) obey this convention, it will be the case that x.clone().getClass() == x.getClass().

By convention, the object returned by this method should be independent of this object (which is being cloned). To achieve this independence, it may be necessary to modify one or more fields of the object returned by super.clone before returning it. Typically, this means copying any mutable objects that comprise the internal "deep structure" of the object being cloned and replacing the references to these objects with references to the copies. If a class contains only primitive fields or references to immutable objects, then it is usually the case that no fields in the object returned by super.clone need to be modified.

Returns:Object

a copy of this BufferCapabilities object.

getBackBufferCapabilitiesback to summary
public ImageCapabilities getBackBufferCapabilities()

Returns the image capabilities of all back buffers (intermediate buffers are considered back buffers).

Returns:ImageCapabilities

the image capabilities of all back buffers (intermediate buffers are considered back buffers)

getFlipContentsback to summary
public BufferCapabilities.FlipContents getFlipContents()

Returns the resulting contents of the back buffer after page-flipping. This value is null when the isPageFlipping returns false, implying blitting. It can be one of FlipContents.UNDEFINED (the assumed default), FlipContents.BACKGROUND, FlipContents.PRIOR, or FlipContents.COPIED.

Returns:BufferCapabilities.FlipContents

the resulting contents of the back buffer after page-flipping

See Also
isPageFlipping, FlipContents#UNDEFINED, FlipContents#BACKGROUND, FlipContents#PRIOR, FlipContents#COPIED
getFrontBufferCapabilitiesback to summary
public ImageCapabilities getFrontBufferCapabilities()

Returns the image capabilities of the front (displayed) buffer.

Returns:ImageCapabilities

the image capabilities of the front (displayed) buffer

isFullScreenRequiredback to summary
public boolean isFullScreenRequired()

Returns whether page flipping is only available in full-screen mode. If this is true, full-screen exclusive mode is required for page-flipping.

Returns:boolean

whether page flipping is only available in full-screen mode

See Also
isPageFlipping, GraphicsDevice#setFullScreenWindow
isMultiBufferAvailableback to summary
public boolean isMultiBufferAvailable()

Returns whether or not page flipping can be performed using more than two buffers (one or more intermediate buffers as well as the front and back buffer).

Returns:boolean

whether or not page flipping can be performed using more than two buffers

See Also
isPageFlipping
isPageFlippingback to summary
public boolean isPageFlipping()

Returns whether or not the buffer strategy uses page flipping. A set of buffers that uses page flipping can swap the contents internally between the front buffer and one or more back buffers by switching the video pointer (or by copying memory internally). A non-flipping set of buffers uses blitting to copy the contents from one buffer to another; when this is the case, getFlipContents returns null.

Returns:boolean

whether or not the buffer strategy uses page flipping

java.awt back to summary

public final Class BufferCapabilities.FlipContents

extends AttributeValue
Class Inheritance

A type-safe enumeration of the possible back buffer contents after page-flipping
Since
1.4

Field Summary

Modifier and TypeField and Description
public static final BufferCapabilities.FlipContents
BACKGROUND

When flip contents are BACKGROUND, the contents of the back buffer are cleared with the background color after flipping.

public static final BufferCapabilities.FlipContents
COPIED

When flip contents are COPIED, the contents of the back buffer are copied to the front buffer when flipping.

private static int
private static int
private static int
private static int
private static final String[]
public static final BufferCapabilities.FlipContents
PRIOR

When flip contents are PRIOR, the contents of the back buffer are the prior contents of the front buffer (a true page flip).

public static final BufferCapabilities.FlipContents
UNDEFINED

When flip contents are UNDEFINED, the contents of the back buffer are undefined after flipping.

Constructor Summary

AccessConstructor and Description
private
FlipContents(int type)

Method Summary

Inherited from java.awt.AttributeValue:
hashCodetoString

Field Detail

BACKGROUNDback to summary
public static final BufferCapabilities.FlipContents BACKGROUND

When flip contents are BACKGROUND, the contents of the back buffer are cleared with the background color after flipping.

See Also
isPageFlipping, getFlipContents, UNDEFINED, PRIOR, COPIED
COPIEDback to summary
public static final BufferCapabilities.FlipContents COPIED

When flip contents are COPIED, the contents of the back buffer are copied to the front buffer when flipping.

See Also
isPageFlipping, getFlipContents, UNDEFINED, BACKGROUND, PRIOR
I_BACKGROUNDback to summary
private static int I_BACKGROUND
I_COPIEDback to summary
private static int I_COPIED
I_PRIORback to summary
private static int I_PRIOR
I_UNDEFINEDback to summary
private static int I_UNDEFINED
NAMESback to summary
private static final String[] NAMES
PRIORback to summary
public static final BufferCapabilities.FlipContents PRIOR

When flip contents are PRIOR, the contents of the back buffer are the prior contents of the front buffer (a true page flip).

See Also
isPageFlipping, getFlipContents, UNDEFINED, BACKGROUND, COPIED
UNDEFINEDback to summary
public static final BufferCapabilities.FlipContents UNDEFINED

When flip contents are UNDEFINED, the contents of the back buffer are undefined after flipping.

See Also
isPageFlipping, getFlipContents, BACKGROUND, PRIOR, COPIED

Constructor Detail

FlipContentsback to summary
private FlipContents(int type)