protected class

Component.FlipBufferStrategy

extends BufferStrategy
java.lang.Object
   ↳ java.awt.image.BufferStrategy
     ↳ java.awt.Component.FlipBufferStrategy

Class Overview

Inner class for flipping buffers on a component. That component must be a Canvas or Window.

Summary

Fields
protected BufferCapabilities caps The buffering capabilities
protected Image drawBuffer The drawing buffer
protected VolatileImage drawVBuffer The drawing buffer as a volatile image
protected int numBuffers The number of buffers
protected boolean validatedContents Whether or not the drawing buffer has been recently restored from a lost state.
Protected Constructors
Component.FlipBufferStrategy(int numBuffers, BufferCapabilities caps)
Creates a new flipping buffer strategy for this component.
Public Methods
boolean contentsLost()
Returns whether the drawing buffer was lost since the last call to getDrawGraphics.
boolean contentsRestored()
Returns whether the drawing buffer was recently restored from a lost state and reinitialized to the default background color (white).
void dispose()
Releases system resources currently consumed by this BufferStrategy and removes it from the associated Component.
BufferCapabilities getCapabilities()
Returns the BufferCapabilities for this BufferStrategy.
Graphics getDrawGraphics()
Creates a graphics context for the drawing buffer.
void show()
Makes the next available buffer visible by either blitting or flipping.
Protected Methods
void createBuffers(int numBuffers, BufferCapabilities caps)
Creates one or more complex, flipping buffers with the given capabilities.
void destroyBuffers()
Destroys the buffers created through this object
void flip(BufferCapabilities.FlipContents flipAction)
Flipping moves the contents of the back buffer to the front buffer, either by copying or by moving the video pointer.
Image getBackBuffer()
void revalidate()
Restore the drawing buffer if it has been lost
[Expand]
Inherited Methods
From class java.awt.image.BufferStrategy
From class java.lang.Object

Fields

protected BufferCapabilities caps

The buffering capabilities

protected Image drawBuffer

The drawing buffer

protected VolatileImage drawVBuffer

The drawing buffer as a volatile image

protected int numBuffers

The number of buffers

protected boolean validatedContents

Whether or not the drawing buffer has been recently restored from a lost state.

Protected Constructors

protected Component.FlipBufferStrategy (int numBuffers, BufferCapabilities caps)

Creates a new flipping buffer strategy for this component. The component must be a Canvas or Window.

Parameters
numBuffers the number of buffers
caps the capabilities of the buffers
Throws
AWTException if the capabilities supplied could not be supported or met
ClassCastException if the component is not a canvas or window.
See Also

Public Methods

public boolean contentsLost ()

Returns whether the drawing buffer was lost since the last call to getDrawGraphics. Since the buffers in a buffer strategy are usually type VolatileImage, they may become lost. For a discussion on lost buffers, see VolatileImage.

Returns
  • whether the drawing buffer was lost since the last call to getDrawGraphics

public boolean contentsRestored ()

Returns whether the drawing buffer was recently restored from a lost state and reinitialized to the default background color (white). Since the buffers in a buffer strategy are usually type VolatileImage, they may become lost. If a surface has been recently restored from a lost state since the last call to getDrawGraphics, it may require repainting. For a discussion on lost buffers, see VolatileImage.

Returns
  • whether the drawing buffer was recently restored from a lost state and reinitialized to the default background color (white)

public void dispose ()

Releases system resources currently consumed by this BufferStrategy and removes it from the associated Component. After invoking this method, getBufferStrategy will return null. Trying to use a BufferStrategy after it has been disposed will result in undefined behavior.

public BufferCapabilities getCapabilities ()

Returns the BufferCapabilities for this BufferStrategy.

Returns
  • the buffering capabilities of this strategy

public Graphics getDrawGraphics ()

Creates a graphics context for the drawing buffer. This method may not be synchronized for performance reasons; use of this method by multiple threads should be handled at the application level. Disposal of the graphics object obtained must be handled by the application.

Returns
  • the graphics on the drawing buffer. This method may not be synchronized for performance reasons; use of this method by multiple threads should be handled at the application level. Disposal of the graphics object must be handled by the application.

public void show ()

Makes the next available buffer visible by either blitting or flipping.

Protected Methods

protected void createBuffers (int numBuffers, BufferCapabilities caps)

Creates one or more complex, flipping buffers with the given capabilities.

Parameters
numBuffers number of buffers to create; must be greater than one
caps the capabilities of the buffers. BufferCapabilities.isPageFlipping must be true.
Throws
AWTException if the capabilities supplied could not be supported or met
IllegalStateException if the component has no peer
IllegalArgumentException if numBuffers is less than two, or if BufferCapabilities.isPageFlipping is not true.
See Also

protected void destroyBuffers ()

Destroys the buffers created through this object

protected void flip (BufferCapabilities.FlipContents flipAction)

Flipping moves the contents of the back buffer to the front buffer, either by copying or by moving the video pointer.

Parameters
flipAction an integer value describing the flipping action for the contents of the back buffer. This should be one of the values of the BufferCapabilities.FlipContents property.
Throws
IllegalStateException if the buffers have not yet been created

protected Image getBackBuffer ()

Returns
  • direct access to the back buffer, as an image.
Throws
IllegalStateException if the buffers have not yet been created

protected void revalidate ()

Restore the drawing buffer if it has been lost