CopperSpice API  1.9.1
QGLFramebufferObjectFormat Class Reference

The QGLFramebufferObjectFormat class specifies the format of an OpenGL framebuffer object. More...

Public Methods

 QGLFramebufferObjectFormat ()
 
 QGLFramebufferObjectFormat (const QGLFramebufferObjectFormat &other)
 
 ~QGLFramebufferObjectFormat ()
 
QGLFramebufferObject::Attachment attachment () const
 
GLenum internalTextureFormat () const
 
bool mipmap () const
 
bool operator!= (const QGLFramebufferObjectFormat &other) const
 
QGLFramebufferObjectFormat & operator= (const QGLFramebufferObjectFormat &other)
 
bool operator== (const QGLFramebufferObjectFormat &other) const
 
int samples () const
 
void setAttachment (QGLFramebufferObject::Attachment attachment)
 
void setInternalTextureFormat (GLenum internalTextureFormat)
 
void setMipmap (bool enabled)
 
void setSamples (int samples)
 
void setTextureTarget (GLenum target)
 
GLenum textureTarget () const
 

Detailed Description

The QGLFramebufferObjectFormat class specifies the format of an OpenGL framebuffer object.

A framebuffer object has several characteristics:

  • Number of samples per pixels.
  • Depth and/or stencil attachments.
  • Texture target.
  • Internal texture format.

Note that the desired attachments or number of samples per pixels might not be supported by the hardware driver. Call QGLFramebufferObject::format() after creating a QGLFramebufferObject to find the exact format that was used to create the frame buffer object.

See also
QGLFramebufferObject

Constructor & Destructor Documentation

QGLFramebufferObjectFormat::QGLFramebufferObjectFormat ( )

Creates a QGLFramebufferObjectFormat object for specifying the format of an OpenGL framebuffer object.

By default the format specifies a non-multisample framebuffer object with no attachments, texture target GL_TEXTURE_2D, and internal format GL_RGBA8. On OpenGL/ES systems, the default internal format is GL_RGBA.

See also
samples(), attachment(), internalTextureFormat()
QGLFramebufferObjectFormat::QGLFramebufferObjectFormat ( const QGLFramebufferObjectFormat &  other)

Constructs a copy of other.

QGLFramebufferObjectFormat::~QGLFramebufferObjectFormat ( )

Destroys the QGLFramebufferObjectFormat.

Method Documentation

QGLFramebufferObject::Attachment QGLFramebufferObjectFormat::attachment ( ) const

Returns the configuration of the depth and stencil buffers attached to a framebuffer object. The default is QGLFramebufferObject::NoAttachment.

See also
setAttachment()
GLenum QGLFramebufferObjectFormat::internalTextureFormat ( ) const

Returns the internal format of a framebuffer object's texture or multisample framebuffer object's color buffer. The default is GL_RGBA8 on desktop OpenGL systems, and GL_RGBA on OpenGL/ES systems.

See also
setInternalTextureFormat()
bool QGLFramebufferObjectFormat::mipmap ( ) const

Returns true if mipmapping is enabled.

See also
setMipmap()
bool QGLFramebufferObjectFormat::operator!= ( const QGLFramebufferObjectFormat &  other) const

Returns false if all the options of this framebuffer object format are the same as other, otherwise returns true.

QGLFramebufferObjectFormat & QGLFramebufferObjectFormat::operator= ( const QGLFramebufferObjectFormat &  other)

Copy assigns from other and returns a reference to this object.

bool QGLFramebufferObjectFormat::operator== ( const QGLFramebufferObjectFormat &  other) const

Returns true if all the options of this framebuffer object format are the same as other, otherwise returns false.

int QGLFramebufferObjectFormat::samples ( ) const

Returns the number of samples per pixel if a framebuffer object is a multisample framebuffer object. Otherwise, returns 0. The default value is 0.

See also
setSamples()
void QGLFramebufferObjectFormat::setAttachment ( QGLFramebufferObject::Attachment  attachment)

Sets the attachment configuration of a framebuffer object to attachment.

See also
attachment()
void QGLFramebufferObjectFormat::setInternalTextureFormat ( GLenum  internalTextureFormat)

Sets the internal format of a framebuffer object's texture or multisample framebuffer object's color buffer to internalTextureFormat.

See also
internalTextureFormat()
void QGLFramebufferObjectFormat::setMipmap ( bool  enabled)

Enables mipmapping if enabled is true, otherwise disables it.

Mipmapping is disabled by default.

If mipmapping is enabled, additional memory will be allocated for the mipmap levels. The mipmap levels can be updated by binding the texture and calling glGenerateMipmap(). Mipmapping can not be enabled for multisampled framebuffer objects.

See also
mipmap(), QGLFramebufferObject::texture()
void QGLFramebufferObjectFormat::setSamples ( int  samples)

Sets the number of samples per pixel for a multisample framebuffer object to samples. The default sample count of 0 represents a regular non-multisample framebuffer object.

If the desired amount of samples per pixel is not supported by the hardware then the maximum number of samples per pixel will be used. Note that multisample framebuffer objects can not be bound as textures. Also, the GL_EXT_framebuffer_multisample extension is required to create a framebuffer with more than one sample per pixel.

See also
samples()
void QGLFramebufferObjectFormat::setTextureTarget ( GLenum  target)

Sets the texture target of the texture attached to a framebuffer object to target. Ignored for multisample framebuffer objects.

See also
textureTarget(), samples()
GLenum QGLFramebufferObjectFormat::textureTarget ( ) const

Returns the texture target of the texture attached to a framebuffer object. Ignored for multisample framebuffer objects. The default is GL_TEXTURE_2D.

See also
setTextureTarget(), samples()