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

Implementation of CEGUI::RenderTarget for DirectFB. More...

+ Inheritance diagram for CEGUI::DirectFBRenderTarget:
+ Collaboration diagram for CEGUI::DirectFBRenderTarget:

List of all members.

Public Member Functions

 DirectFBRenderTarget (DirectFBRenderer &owner, IDirectFBSurface &target)
 Constructor.
void draw (const GeometryBuffer &buffer)
 Draw geometry from the given GeometryBuffer onto the surface that this RenderTarget represents.
void draw (const RenderQueue &queue)
 Draw geometry from the given RenderQueue onto the surface that this RenderTarget represents.
void setArea (const Rectf &area)
 Set the area for this RenderTarget. The exact action this function will take depends upon what the concrete class is representing. For example, with a 'view port' style RenderTarget, this should set the area that the view port occupies on the display (or rendering window).
const RectfgetArea () const
 Return the area defined for this RenderTarget.
bool isImageryCache () const
 Return whether the RenderTarget is an implementation that caches actual rendered imagery.
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 unprojectPoint (const GeometryBuffer &buff, const Vector2f &p_in, Vector2f &p_out) const
 Take point p_in unproject it and put the result in p_out. Resulting point is local to GeometryBuffer buff.

Protected Attributes

DirectFBRendererd_owner
 DirectFBRenderer that created and owns this RenderTarget.
IDirectFBSurface & d_target
 IDirectFBSurface targetted by this RenderTarget.
Rectf d_area
 holds defined area for the RenderTarget

Detailed Description

Implementation of CEGUI::RenderTarget for DirectFB.


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.

Implements CEGUI::RenderTarget.

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.

Implements CEGUI::RenderTarget.

void CEGUI::DirectFBRenderTarget::draw ( const GeometryBuffer buffer) [virtual]

Draw geometry from the given GeometryBuffer onto the surface that this RenderTarget represents.

Parameters:
bufferGeometryBuffer object holding the geometry that should be drawn to the RenderTarget.

Implements CEGUI::RenderTarget.

void CEGUI::DirectFBRenderTarget::draw ( const RenderQueue queue) [virtual]

Draw geometry from the given RenderQueue onto the surface that this RenderTarget represents.

Parameters:
queueRenderQueue object holding the geometry that should be drawn to the RenderTarget.

Implements CEGUI::RenderTarget.

const Rectf& CEGUI::DirectFBRenderTarget::getArea ( ) const [virtual]

Return the area defined for this RenderTarget.

Returns:
Rect object describing the currently defined area for this RenderTarget.

Implements CEGUI::RenderTarget.

Return whether the RenderTarget is an implementation that caches actual rendered imagery.

Typically it is expected that texture based RenderTargets would return true in response to this call. Other types of RenderTarget, like view port based targets, will more likely return false.

Returns:

Implements CEGUI::RenderTarget.

void CEGUI::DirectFBRenderTarget::setArea ( const Rectf area) [virtual]

Set the area for this RenderTarget. The exact action this function will take depends upon what the concrete class is representing. For example, with a 'view port' style RenderTarget, this should set the area that the view port occupies on the display (or rendering window).

Parameters:
areaRect object describing the new area to be assigned to the RenderTarget.
Note:
When implementing this function, you should be sure to fire the event RenderTarget::EventAreaChanged so that interested parties can know that the change has occurred.
Exceptions:
InvalidRequestExceptionMay be thrown if the RenderTarget does not support setting or changing its area, or if the area change can not be satisfied for some reason.

Implements CEGUI::RenderTarget.

 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends