Class BufferCapabilities

java.lang.Object
java.awt.BufferCapabilities
All Implemented Interfaces:
Cloneable

public class BufferCapabilities extends Object implements Cloneable
Capabilities and properties of buffers.
Since:
1.4
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final class 
    A type-safe enumeration of the possible back buffer contents after page-flipping
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates a new object for specifying buffering capabilities
  • Method Summary

    Modifier and Type
    Method
    Description
    Answers a new instance of the same class as the receiver, whose slots have been filled in with the values in the slots of the receiver.
    Returns the image capabilities of all back buffers (intermediate buffers are considered back buffers).
    Returns the resulting contents of the back buffer after page-flipping.
    Returns the image capabilities of the front (displayed) buffer.
    boolean
    Returns whether page flipping is only available in full-screen mode.
    boolean
    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).
    boolean
    Returns whether or not the buffer strategy uses page flipping.

    Methods declared in class Object

    equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    Modifier and Type
    Method
    Description
    boolean
    Compares the argument to the receiver, and answers true if they represent the same object using a class specific comparison.
    protected void
    Deprecated, for removal: This API element is subject to removal in a future version.
    May cause performance issues, deadlocks and hangs.
    final Class<? extends Object>
    Answers the unique instance of java.lang.Class which represents the class of the receiver.
    int
    Answers an integer hash code for the receiver.
    final void
    Causes one thread which is waiting on the receiver to be made ready to run.
    final void
    Causes all threads which are waiting on the receiver to be made ready to run.
    Answers a string containing a concise, human-readable description of the receiver.
    final void
    Causes the thread which sent this message to be made not ready to run pending some change in the receiver (as indicated by notify or notifyAll).
    final void
    wait(long time)
    Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated by notify or notifyAll) or the expiration of the timeout.
    final void
    wait(long time, int frac)
    Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated by notify or notifyAll) or the expiration of the timeout.
  • Constructor Details

    • BufferCapabilities

      public BufferCapabilities(ImageCapabilities frontCaps, ImageCapabilities backCaps, BufferCapabilities.FlipContents flipContents)
      Creates a new object for specifying buffering capabilities
      Parameters:
      frontCaps - the capabilities of the front buffer; cannot be null
      backCaps - the capabilities of the back and intermediate buffers; cannot be null
      flipContents - the contents of the back buffer after page-flipping, null if page flipping is not used (implies blitting)
      Throws:
      IllegalArgumentException - if frontCaps or backCaps are null
  • Method Details

    • getFrontBufferCapabilities

      public ImageCapabilities getFrontBufferCapabilities()
      Returns the image capabilities of the front (displayed) buffer.
      Returns:
      the image capabilities of the front (displayed) buffer
    • getBackBufferCapabilities

      public ImageCapabilities getBackBufferCapabilities()
      Returns the image capabilities of all back buffers (intermediate buffers are considered back buffers).
      Returns:
      the image capabilities of all back buffers (intermediate buffers are considered back buffers)
    • isPageFlipping

      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:
      whether or not the buffer strategy uses page flipping
    • getFlipContents

      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:
      the resulting contents of the back buffer after page-flipping
      See Also:
    • isFullScreenRequired

      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:
      whether page flipping is only available in full-screen mode
      See Also:
    • isMultiBufferAvailable

      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:
      whether or not page flipping can be performed using more than two buffers
      See Also:
    • clone

      public Object clone()
      Description copied from class: Object
      Answers a new instance of the same class as the receiver, whose slots have been filled in with the values in the slots of the receiver.

      Classes which wish to support cloning must specify that they implement the Cloneable interface, since the native implementation checks for this.

      Overrides:
      clone in class Object
      Returns:
      a copy of this BufferCapabilities object.