27#ifndef _CEGUIRenderingWindow_h_
28#define _CEGUIRenderingWindow_h_
30#include "CEGUI/RenderingSurface.h"
31#include "CEGUI/Vector.h"
32#include "CEGUI/Quaternion.h"
33#include "CEGUI/Size.h"
34#include "CEGUI/Rect.h"
38# pragma warning(disable : 4251)
Abstract class defining the interface for objects that buffer geometry for later rendering.
Definition: GeometryBuffer.h:44
Class to represent rotation, avoids Gimbal lock.
Definition: Quaternion.h:69
Interface for objects that hook into RenderingWindow to affect the rendering process,...
Definition: RenderEffect.h:42
Abstract class defining the basic required interface for Renderer objects.
Definition: Renderer.h:84
Class that represents a surface that can have geometry based imagery drawn to it.
Definition: RenderingSurface.h:111
virtual void transferRenderingWindow(RenderingWindow &window)
transfer ownership of the RenderingWindow to this RenderingSurface.
RenderingWindow is a RenderingSurface that can be "drawn back" onto another RenderingSurface and is p...
Definition: RenderingWindow.h:51
RenderingWindow(TextureTarget &target, RenderingSurface &owner)
Constructor for RenderingWindow objects.
void setRotation(const Quaternion &rotation)
Set the rotation quaternion to be used when rendering the RenderingWindow back onto it's owning Rende...
void unprojectPoint(const Vector2f &p_in, Vector2f &p_out)
Fill in Vector2 object p_out with an unprojected version of the point described by Vector2 p_in.
Renderer & d_renderer
holds ref to renderer
Definition: RenderingWindow.h:296
bool isRenderingWindow() const
Return whether this RenderingSurface is actually an instance of the RenderingWindow subclass.
void update(const float elapsed)
Peform time based updated for the RenderingWindow.
const Quaternion & getRotation() const
Return the current rotation being applied to the RenderingWindow.
Quaternion d_rotation
Rotation for this RenderingWindow.
Definition: RenderingWindow.h:310
RenderEffect * getRenderEffect()
Return a pointer to the RenderEffect currently being used with the RenderingWindow....
Vector2f d_position
Position of this RenderingWindow.
Definition: RenderingWindow.h:306
Vector3f d_pivot
Pivot point used for the rotation.
Definition: RenderingWindow.h:312
Sizef d_size
Size of this RenderingWindow.
Definition: RenderingWindow.h:308
void realiseGeometry()
generate geometry to be used when rendering back the RenderingWindow to it's owning RenderingSurface.
const TextureTarget & getTextureTarget() const
Return the TextureTarget object that is the target for content rendered to this RenderingWindows....
RenderingSurface * d_owner
RenderingSurface that owns this object, we render back to this object.
Definition: RenderingWindow.h:300
GeometryBuffer * d_geometry
GeometryBuffer that holds geometry for drawing this window.
Definition: RenderingWindow.h:302
void setPosition(const Vector2f &position)
Set the two dimensional position of the RenderingWindow in pixels. The origin is at the top-left corn...
void setPivot(const Vector3f &pivot)
Set the location of the pivot point around which the RenderingWindow will be rotated.
void setOwner(RenderingSurface &owner)
set a new owner for this RenderingWindow object
virtual void realiseGeometry_impl()
default generates geometry to draw window as a single quad.
void setClippingRegion(const Rectf ®ion)
Set the clipping region that will be used when rendering the imagery for this RenderingWindow back on...
const RenderingSurface & getOwner() const
Return the RenderingSurface that owns the RenderingWindow. This is also the RenderingSurface that wil...
~RenderingWindow()
Destructor for RenderingWindow objects.
void invalidate()
Marks the RenderingSurface as invalid, causing the geometry to be rerendered to the RenderTarget next...
void setRenderEffect(RenderEffect *effect)
Set the RenderEffect that should be used with the RenderingWindow. This may be 0 to remove a previous...
const Vector2f & getPosition() const
Return the current pixel position of the RenderingWindow. The origin is at the top-left corner.
void draw()
Draw the GeometryBuffers for all rendering queues to the RenderTarget that this RenderingSurface is t...
void setSize(const Sizef &size)
Set the size of the RenderingWindow in pixels.
TextureTarget & d_textarget
TextureTarget to draw to. Like d_target in base, but avoiding downcasts.
Definition: RenderingWindow.h:298
const Vector3f & getPivot() const
Return the rotation pivot point location for the RenderingWindow.
bool d_geometryValid
indicates whether data in GeometryBuffer is up-to-date
Definition: RenderingWindow.h:304
const Sizef & getSize() const
Return the current size of the RenderingWindow in pixels.
void invalidateGeometry()
Mark the geometry used when rendering the RenderingWindow back to it's owning RenderingSurface as inv...
Specialisation of RenderTarget interface that should be used as the base class for RenderTargets that...
Definition: TextureTarget.h:41
Main namespace for Crazy Eddie's GUI Library.
Definition: arch_overview.dox:1