protected class Component.FlipBufferStrategy extends BufferStrategy
Canvas
or Window
.Canvas
,
Window
,
BufferStrategy
Modifier and Type | Field and Description |
---|---|
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.
|
Modifier | Constructor and Description |
---|---|
protected |
FlipBufferStrategy(int numBuffers,
BufferCapabilities caps)
Creates a new flipping buffer strategy for this component.
|
Modifier and Type | Method and Description |
---|---|
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 object
|
void |
dispose()
Releases system resources currently consumed by this
BufferStrategy and
removes it from the associated Component. |
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.
|
protected Image |
getBackBuffer() |
BufferCapabilities |
getCapabilities()
Returns the
BufferCapabilities for this
BufferStrategy . |
Graphics |
getDrawGraphics()
Creates a graphics context for the drawing buffer.
|
protected void |
revalidate()
Restore the drawing buffer if it has been lost
|
void |
show()
Makes the next available buffer visible by either blitting or
flipping.
|
protected int numBuffers
protected BufferCapabilities caps
protected Image drawBuffer
protected VolatileImage drawVBuffer
protected boolean validatedContents
protected FlipBufferStrategy(int numBuffers, BufferCapabilities caps) throws AWTException
Canvas
or Window
.numBuffers
- the number of bufferscaps
- the capabilities of the buffersAWTException
- if the capabilities supplied could not be
supported or metClassCastException
- if the component is not a canvas or
window.IllegalStateException
- if the component has no peerIllegalArgumentException
- if numBuffers
is less than two,
or if BufferCapabilities.isPageFlipping
is not
true
.Canvas
,
Window
,
createBuffers(int, BufferCapabilities)
protected void createBuffers(int numBuffers, BufferCapabilities caps) throws AWTException
numBuffers
- number of buffers to create; must be greater than
onecaps
- the capabilities of the buffers.
BufferCapabilities.isPageFlipping
must be
true
.AWTException
- if the capabilities supplied could not be
supported or metIllegalStateException
- if the component has no peerIllegalArgumentException
- if numBuffers is less than two,
or if BufferCapabilities.isPageFlipping
is not
true
.BufferCapabilities.isPageFlipping()
protected Image getBackBuffer()
IllegalStateException
- if the buffers have not yet
been createdprotected void flip(BufferCapabilities.FlipContents flipAction)
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.IllegalStateException
- if the buffers have not yet
been createdBufferCapabilities.getFlipContents()
protected void destroyBuffers()
public BufferCapabilities getCapabilities()
BufferStrategy
BufferCapabilities
for this
BufferStrategy
.getCapabilities
in class BufferStrategy
public Graphics getDrawGraphics()
BufferStrategy
getDrawGraphics
in class BufferStrategy
protected void revalidate()
public boolean contentsLost()
BufferStrategy
getDrawGraphics
. Since the buffers in a buffer strategy
are usually type VolatileImage
, they may become lost.
For a discussion on lost buffers, see VolatileImage
.contentsLost
in class BufferStrategy
getDrawGraphics
VolatileImage
public boolean contentsRestored()
BufferStrategy
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
.contentsRestored
in class BufferStrategy
VolatileImage
public void show()
show
in class BufferStrategy
public void dispose()
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.dispose
in class BufferStrategy
Window.createBufferStrategy(int)
,
Canvas.createBufferStrategy(int)
,
Window.getBufferStrategy()
,
Canvas.getBufferStrategy()
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.