Crazy Eddie's GUI System  0.8.4
CEGUI::OpenGLApplePBTextureTarget Class Reference

OpenGLApplePBTextureTarget - allows rendering to an OpenGL texture via the Apple pbuffer extension. More...

+ Inheritance diagram for CEGUI::OpenGLApplePBTextureTarget:
+ Collaboration diagram for CEGUI::OpenGLApplePBTextureTarget:

List of all members.

Public Member Functions

 OpenGLApplePBTextureTarget (OpenGLRendererBase &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 Sizef &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 initialiseTexture ()
 Perform basic initialisation of the texture we're going to use.
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.

Protected Attributes

CGLPBufferObj d_pbuffer
 The current pbuffer object used by this TextureTarget.
CGLContextObj d_context
 The GL context that's used by this TextureTarget.
GLint d_screen
 virtual screen used by the "parent" context
CGLContextObj d_prevContext
 Context that was active before ours was activated.

Static Protected Attributes

static const float DEFAULT_SIZE
 default size of created texture objects

Detailed Description

OpenGLApplePBTextureTarget - allows rendering to an OpenGL texture via the Apple pbuffer extension.


Member Function Documentation

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< TextureTarget >.

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< TextureTarget >.

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:
szSize object describing the largest area that will be rendererd in the next batch of rendering operations.
Exceptions:
InvalidRequestExceptionMay be thrown if the TextureTarget would not be able to handle the operations rendering content of the given size.

Implements CEGUI::TextureTarget.

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.

 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends