javax.media.opengl
Class GLCapabilities

java.lang.Object
  extended by javax.media.nativewindow.Capabilities
      extended by javax.media.opengl.GLCapabilities
All Implemented Interfaces:
Cloneable

public class GLCapabilities
extends Capabilities
implements Cloneable

Specifies a set of OpenGL capabilities.
At creation time of a GLDrawable using GLDrawableFactory, an instance of this class is passed, describing the desired capabilities that a rendering context must support, such as the OpenGL profile, color depth and whether stereo is enabled.
The actual capabilites of created GLDrawables are then reflected by their own GLCapabilites instance, which can be queried with GLDrawable#getGLCapabilities().
It currently contains the minimal number of routines which allow configuration on all supported window systems.


Constructor Summary
GLCapabilities(GLProfile glp)
          Creates a GLCapabilities object.
 
Method Summary
 Object clone()
           
 boolean equals(Object obj)
           
 int getAccumAlphaBits()
          Returns the number of bits requested for the accumulation buffer's alpha component.
 int getAccumBlueBits()
          Returns the number of bits requested for the accumulation buffer's blue component.
 int getAccumGreenBits()
          Returns the number of bits requested for the accumulation buffer's green component.
 int getAccumRedBits()
          Returns the number of bits requested for the accumulation buffer's red component.
 int getDepthBits()
          Returns the number of bits requested for the depth buffer.
 boolean getDoubleBuffered()
          Indicates whether double-buffering is enabled.
 GLProfile getGLProfile()
          Returns the GL profile you desire or used by the drawable.
 boolean getHardwareAccelerated()
          Indicates whether hardware acceleration is enabled.
 int getNumSamples()
          Returns the number of sample buffers to be allocated if sample buffers are enabled.
 boolean getPbufferFloatingPointBuffers()
          For pbuffers only, returns whether floating-point buffers should be used if available.
 boolean getPbufferRenderToTexture()
          For pbuffers only, returns whether the render-to-texture extension should be used if available.
 boolean getPbufferRenderToTextureRectangle()
          For pbuffers only, returns whether the render-to-texture extension should be used.
 boolean getSampleBuffers()
          Returns whether sample buffers for full-scene antialiasing (FSAA) should be allocated for this drawable.
 int getStencilBits()
          Returns the number of bits requested for the stencil buffer.
 boolean getStereo()
          Indicates whether stereo is enabled.
 boolean isPBuffer()
          Indicates whether pbuffer is used/requested.
 void setAccumAlphaBits(int accumAlphaBits)
          Sets number of bits requested for accumulation buffer's alpha component.
 void setAccumBlueBits(int accumBlueBits)
          Sets the number of bits requested for the accumulation buffer's blue component.
 void setAccumGreenBits(int accumGreenBits)
          Sets the number of bits requested for the accumulation buffer's green component.
 void setAccumRedBits(int accumRedBits)
          Sets the number of bits requested for the accumulation buffer's red component.
 void setDepthBits(int depthBits)
          Sets the number of bits requested for the depth buffer.
 void setDoubleBuffered(boolean onOrOff)
          Enables or disables double buffering.
 void setGLProfile(GLProfile profile)
          Sets the GL profile you desire
 void setHardwareAccelerated(boolean onOrOff)
          Enables or disables hardware acceleration.
 void setNumSamples(int numSamples)
          If sample buffers are enabled, indicates the number of buffers to be allocated.
 void setPBuffer(boolean onOrOff)
          Enables or disables pbuffer usage.
 void setPbufferFloatingPointBuffers(boolean onOrOff)
          For pbuffers only, indicates whether floating-point buffers should be used if available.
 void setPbufferRenderToTexture(boolean onOrOff)
          For pbuffers only, indicates whether the render-to-texture extension should be used if available.
 void setPbufferRenderToTextureRectangle(boolean onOrOff)
          For pbuffers only, indicates whether the render-to-texture-rectangle extension should be used if available.
 void setSampleBuffers(boolean onOrOff)
          Indicates whether sample buffers for full-scene antialiasing (FSAA) should be allocated for this drawable.
 void setStencilBits(int stencilBits)
          Sets the number of bits requested for the stencil buffer.
 void setStereo(boolean onOrOff)
          Enables or disables stereo viewing.
 String toString()
          Returns a textual representation of this GLCapabilities object.
 
Methods inherited from class javax.media.nativewindow.Capabilities
getAlphaBits, getBlueBits, getGreenBits, getRedBits, getTransparentAlphaValue, getTransparentBlueValue, getTransparentGreenValue, getTransparentRedValue, isBackgroundOpaque, isOnscreen, setAlphaBits, setBackgroundOpaque, setBlueBits, setGreenBits, setOnscreen, setRedBits, setTransparentAlphaValue, setTransparentBlueValue, setTransparentGreenValue, setTransparentRedValue
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

GLCapabilities

public GLCapabilities(GLProfile glp)
Creates a GLCapabilities object. All attributes are in a default state.

Parameters:
glp - GLProfile, or null for the default GLProfile
Method Detail

clone

public Object clone()
Overrides:
clone in class Capabilities

equals

public boolean equals(Object obj)
Overrides:
equals in class Capabilities

getGLProfile

public GLProfile getGLProfile()
Returns the GL profile you desire or used by the drawable.


setGLProfile

public void setGLProfile(GLProfile profile)
Sets the GL profile you desire


isPBuffer

public boolean isPBuffer()
Indicates whether pbuffer is used/requested.


setPBuffer

public void setPBuffer(boolean onOrOff)
Enables or disables pbuffer usage.


getDoubleBuffered

public boolean getDoubleBuffered()
Indicates whether double-buffering is enabled.


setDoubleBuffered

public void setDoubleBuffered(boolean onOrOff)
Enables or disables double buffering.


getStereo

public boolean getStereo()
Indicates whether stereo is enabled.


setStereo

public void setStereo(boolean onOrOff)
Enables or disables stereo viewing.


getHardwareAccelerated

public boolean getHardwareAccelerated()
Indicates whether hardware acceleration is enabled.


setHardwareAccelerated

public void setHardwareAccelerated(boolean onOrOff)
Enables or disables hardware acceleration.


getDepthBits

public int getDepthBits()
Returns the number of bits requested for the depth buffer.


setDepthBits

public void setDepthBits(int depthBits)
Sets the number of bits requested for the depth buffer.


getStencilBits

public int getStencilBits()
Returns the number of bits requested for the stencil buffer.


setStencilBits

public void setStencilBits(int stencilBits)
Sets the number of bits requested for the stencil buffer.


getAccumRedBits

public int getAccumRedBits()
Returns the number of bits requested for the accumulation buffer's red component. On some systems only the accumulation buffer depth, which is the sum of the red, green, and blue bits, is considered.


setAccumRedBits

public void setAccumRedBits(int accumRedBits)
Sets the number of bits requested for the accumulation buffer's red component. On some systems only the accumulation buffer depth, which is the sum of the red, green, and blue bits, is considered.


getAccumGreenBits

public int getAccumGreenBits()
Returns the number of bits requested for the accumulation buffer's green component. On some systems only the accumulation buffer depth, which is the sum of the red, green, and blue bits, is considered.


setAccumGreenBits

public void setAccumGreenBits(int accumGreenBits)
Sets the number of bits requested for the accumulation buffer's green component. On some systems only the accumulation buffer depth, which is the sum of the red, green, and blue bits, is considered.


getAccumBlueBits

public int getAccumBlueBits()
Returns the number of bits requested for the accumulation buffer's blue component. On some systems only the accumulation buffer depth, which is the sum of the red, green, and blue bits, is considered.


setAccumBlueBits

public void setAccumBlueBits(int accumBlueBits)
Sets the number of bits requested for the accumulation buffer's blue component. On some systems only the accumulation buffer depth, which is the sum of the red, green, and blue bits, is considered.


getAccumAlphaBits

public int getAccumAlphaBits()
Returns the number of bits requested for the accumulation buffer's alpha component. On some systems only the accumulation buffer depth, which is the sum of the red, green, and blue bits, is considered.


setAccumAlphaBits

public void setAccumAlphaBits(int accumAlphaBits)
Sets number of bits requested for accumulation buffer's alpha component. On some systems only the accumulation buffer depth, which is the sum of the red, green, and blue bits, is considered.


setSampleBuffers

public void setSampleBuffers(boolean onOrOff)
Indicates whether sample buffers for full-scene antialiasing (FSAA) should be allocated for this drawable. Defaults to false.


getSampleBuffers

public boolean getSampleBuffers()
Returns whether sample buffers for full-scene antialiasing (FSAA) should be allocated for this drawable. Defaults to false.


setNumSamples

public void setNumSamples(int numSamples)
If sample buffers are enabled, indicates the number of buffers to be allocated. Defaults to 2.


getNumSamples

public int getNumSamples()
Returns the number of sample buffers to be allocated if sample buffers are enabled. Defaults to 2.


setPbufferFloatingPointBuffers

public void setPbufferFloatingPointBuffers(boolean onOrOff)
For pbuffers only, indicates whether floating-point buffers should be used if available. Defaults to false.


getPbufferFloatingPointBuffers

public boolean getPbufferFloatingPointBuffers()
For pbuffers only, returns whether floating-point buffers should be used if available. Defaults to false.


setPbufferRenderToTexture

public void setPbufferRenderToTexture(boolean onOrOff)
For pbuffers only, indicates whether the render-to-texture extension should be used if available. Defaults to false.


getPbufferRenderToTexture

public boolean getPbufferRenderToTexture()
For pbuffers only, returns whether the render-to-texture extension should be used if available. Defaults to false.


setPbufferRenderToTextureRectangle

public void setPbufferRenderToTextureRectangle(boolean onOrOff)
For pbuffers only, indicates whether the render-to-texture-rectangle extension should be used if available. Defaults to false.


getPbufferRenderToTextureRectangle

public boolean getPbufferRenderToTextureRectangle()
For pbuffers only, returns whether the render-to-texture extension should be used. Defaults to false.


toString

public String toString()
Returns a textual representation of this GLCapabilities object.

Overrides:
toString in class Capabilities


Copyright 2005 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.