java.awt
Class Component.FlipBufferStrategyjava.lang.Object | +--java.awt.image.BufferStrategy | +--java.awt.Component.FlipBufferStrategy
- Enclosing class:
- Component
- protected class Component.FlipBufferStrategy
- extends BufferStrategy
Inner class for flipping buffers on a component. That component must be a Canvas or Window.
- Since:
- 1.4
- See Also:
- Canvas, Window, BufferStrategy
Field Summary
protected BufferCapabilities caps
The buffering capabilitiesprotected Image drawBuffer
The drawing bufferprotected VolatileImage drawVBuffer
The drawing buffer as a volatile imageprotected int numBuffers
The number of buffersprotected boolean validatedContents
Whether or not the drawing buffer has been recently restored from a lost state.
Constructor Summary
protected Component.FlipBufferStrategy(int numBuffers, BufferCapabilities caps)
Creates a new flipping buffer strategy for this component.
Method Summary
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).protected void createBuffers(int numBuffers, BufferCapabilities caps)
Creates one or more complex, flipping buffers with the given capabilities.protected void destroyBuffers()
Destroys the buffers created through this objectprotected 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.protected Image getBackBuffer()
BufferCapabilities getCapabilities()
Graphics getDrawGraphics()
protected void revalidate()
Restore the drawing buffer if it has been lostvoid show()
Makes the next available buffer visible by either blitting or flipping.
Methods inherited from class java.lang.Object clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Field Detail
numBuffers
protected int numBuffers
- The number of buffers
caps
protected BufferCapabilities caps
- The buffering capabilities
drawBuffer
protected Image drawBuffer
- The drawing buffer
drawVBuffer
protected VolatileImage drawVBuffer
- The drawing buffer as a volatile image
validatedContents
protected boolean validatedContents
- Whether or not the drawing buffer has been recently restored from a lost state.
Constructor Detail
Component.FlipBufferStrategy
protected Component.FlipBufferStrategy(int numBuffers, BufferCapabilities caps) throws AWTException
- 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:
- Canvas, Window
Method Detail
createBuffers
protected void createBuffers(int numBuffers, BufferCapabilities caps) throws AWTException
- 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:
- java.awt.image.BufferCapabilities#isPageFlipping
getBackBuffer
protected Image getBackBuffer()
- Throws:
- IllegalStateException - if the buffers have not yet been created
flip
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
- See Also:
- java.awt.image.BufferCapabilities#FlipContents
destroyBuffers
protected void destroyBuffers()
- Destroys the buffers created through this object
getCapabilities
public BufferCapabilities getCapabilities()
- Specified by:
- getCapabilities in class BufferStrategy
- Returns:
- the buffering capabilities of this strategy
getDrawGraphics
public Graphics getDrawGraphics()
- Specified by:
- getDrawGraphics in class BufferStrategy
- 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.
revalidate
protected void revalidate()
- Restore the drawing buffer if it has been lost
contentsLost
public boolean contentsLost()
- Description copied from class: BufferStrategy
- 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.
- Specified by:
- contentsLost in class BufferStrategy
- Returns:
- whether the drawing buffer was lost since the last call to getDrawGraphics
- See Also:
- VolatileImage
contentsRestored
public boolean contentsRestored()
- Description copied from class: BufferStrategy
- 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.
- Specified by:
- contentsRestored in class BufferStrategy
- Returns:
- whether the drawing buffer was recently restored from a lost state and reinitialized to the default background color (white)
- See Also:
- VolatileImage
show
public void show()
- Makes the next available buffer visible by either blitting or flipping.
- Specified by:
- show in class BufferStrategy