java.awt

## Class Component.BltBufferStrategy

- java.lang.Object
- - java.awt.image.BufferStrategy
  - - java.awt.Component.BltBufferStrategy

Enclosing class:
  Component

    protected class Component.BltBufferStrategy
    extends BufferStrategy

Inner class for blitting offscreen surfaces to a component.

Since:
  1.4

### Field Summary

Fields
`protected VolatileImage[]` `backBuffers` The back buffers
`protected BufferCapabilities` `caps` The buffering capabilities
`protected int` `height`
`protected boolean` `validatedContents` Whether or not the drawing buffer has been recently restored from a lost state.
`protected int` `width` Size of the back buffers

### Constructor Summary

Constructors
`protected` `BltBufferStrategy(int numBuffers, BufferCapabilities caps)` Creates a new blt buffer strategy around a component

### Method Summary

All Methods Instance Methods Concrete 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).
`protected void` `createBackBuffers(int numBuffers)` Creates the back buffers
`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.
`protected void` `revalidate()` Restore the drawing buffer if it has been lost
`void` `show()` Makes the next available buffer visible.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### caps

    protected BufferCapabilities caps

The buffering capabilities

#### backBuffers

    protected VolatileImage[] backBuffers

The back buffers

#### validatedContents

    protected boolean validatedContents

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

#### width

    protected int width

Size of the back buffers

#### height

    protected int height

### Constructor Detail

#### BltBufferStrategy

    protected BltBufferStrategy(int numBuffers,
                                BufferCapabilities caps)

Creates a new blt buffer strategy around a component

Parameters:
  `numBuffers` - number of buffers to create, including the front buffer
  `caps` - the capabilities of the buffers

### Method Detail

#### dispose

    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.

Overrides:
  `dispose` in class `BufferStrategy`
Since:
  1.6
See Also:
  `Window.createBufferStrategy(int)`, `Canvas.createBufferStrategy(int)`, `Window.getBufferStrategy()`, `Canvas.getBufferStrategy()`

#### createBackBuffers

    protected void createBackBuffers(int numBuffers)

Creates the back buffers

#### getCapabilities

    public BufferCapabilities getCapabilities()

Description copied from class: `BufferStrategy`
Returns the `BufferCapabilities` for this `BufferStrategy`.

Specified by:
  `getCapabilities` in class `BufferStrategy`
Returns:
  the buffering capabilities of this strategy

#### getDrawGraphics

    public Graphics getDrawGraphics()

Description copied from class: `BufferStrategy`
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.

Specified by:
  `getDrawGraphics` in class `BufferStrategy`
Returns:
  the draw graphics

#### show

    public void show()

Makes the next available buffer visible.

Specified by:
  `show` in class `BufferStrategy`

#### 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`