Crazy Eddies GUI System: CEGUI::OpenGLWGLPBTextureTarget Class Reference

Crazy Eddies GUI System 0.7.6

- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes
CEGUI::OpenGLWGLPBTextureTarget Class Reference

OpenGLWGLPBTextureTarget - allows rendering to an OpenGL texture via the pbuffer WGL extension. More...

Inheritance diagram for CEGUI::OpenGLWGLPBTextureTarget:
[legend]
Collaboration diagram for CEGUI::OpenGLWGLPBTextureTarget:
[legend]

List of all members.

## Public Member Functions
| OpenGLWGLPBTextureTarget (OpenGLRenderer &owner)
void | activate ()
| Activate the render target and put it in a state ready to be drawn to.
void | deactivate ()
| Deactivate the render target after having completed rendering.
void | clear ()
| Clear the surface of the underlying texture.
void | declareRenderSize (const Size &sz)
| Used to declare to the TextureTarget the largest size, in pixels, of the next set of incoming rendering operations.
void | grabTexture ()
| Grab the texture to a local buffer.
void | restoreTexture ()
| Restore the texture from the locally buffered copy previously create by a call to grabTexture.
## Protected Member Functions
void | initialisePBuffer ()
| Initialise the PBuffer with the needed size.
void | releasePBuffer ()
| Cleans up the pbuffer resources.
void | enablePBuffer () const
| Switch rendering so it targets the pbuffer.
void | disablePBuffer () const
| Switch rendering to target what was active before the pbuffer was used.
void | initialiseTexture ()
| Perform basic initialisation of the texture we're going to use.
## Protected Attributes
int | d_pixfmt
| Holds the pixel format we use when creating the pbuffer.
HPBUFFERARB | d_pbuffer
| Handle to the pbuffer itself.
HGLRC | d_context
| Handle to the rendering context for the pbuffer.
HDC | d_hdc
| Handle to the Windows device context for the pbuffer.
HGLRC | d_prevContext
| Handle to the rendering context in use when we switched to the pbuffer.
HDC | d_prevDC
| Handle to the device context in use when we switched to the pbuffer.
## Static Protected Attributes
static const float | DEFAULT_SIZE
| default size of created texture objects

## Detailed Description

OpenGLWGLPBTextureTarget - allows rendering to an OpenGL texture via the pbuffer WGL extension.

## Member Function Documentation

void CEGUI::OpenGLWGLPBTextureTarget::activate | ( |  | ) | `[virtual]`

Activate the render target and put it in a state ready to be drawn to.

Note:
  You MUST call this before doing any rendering - if you do not call this, in the unlikely event that your application actually works, it will likely stop working in some future version.

Reimplemented from CEGUI::OpenGLRenderTarget.

void CEGUI::OpenGLWGLPBTextureTarget::deactivate | ( |  | ) | `[virtual]`

Deactivate the render target after having completed rendering.

Note:
  You MUST call this after you finish rendering to the target - if you do not call this, in the unlikely event that your application actually works, it will likely stop working in some future version.

Reimplemented from CEGUI::OpenGLRenderTarget.

void CEGUI::OpenGLWGLPBTextureTarget::declareRenderSize | ( | const Size & | sz | ) | `[virtual]`

Used to declare to the TextureTarget the largest size, in pixels, of the next set of incoming rendering operations.

Note:
  The main purpose of this is to allow for the implemenatation to resize the underlying texture so that it can hold the imagery that will be drawn.

Parameters:

  sz | Size object describing the largest area that will be rendererd in the next batch of rendering operations.

Exceptions:

  InvalidRequestException | May be thrown if the TextureTarget would not be able to handle the operations rendering content of the given size.

Implements CEGUI::TextureTarget.

void CEGUI::OpenGLWGLPBTextureTarget::grabTexture | ( |  | ) | `[virtual]`

Grab the texture to a local buffer.

This will destroy the OpenGL texture, and restoreTexture must be called before using it again.

Reimplemented from CEGUI::OpenGLTextureTarget.