Crazy Eddie's GUI System
0.8.7
|
27 #ifndef _CEGUIRenderingSurface_h_
28 #define _CEGUIRenderingSurface_h_
30 #include "CEGUI/EventSet.h"
31 #include "CEGUI/EventArgs.h"
32 #include "CEGUI/RenderQueue.h"
35 # pragma warning(push)
36 # pragma warning(disable : 4251)
365 #if defined(_MSC_VER)
366 # pragma warning(pop)
369 #endif // end of guard _CEGUIRenderingSurface_h_
Abstract class defining the interface for objects that buffer geometry for later rendering.
Definition: GeometryBuffer.h:44
virtual ~RenderingSurface()
Destructor for RenderingSurface objects.
virtual void invalidate()
Marks the RenderingSurface as invalid, causing the geometry to be rerendered to the RenderTarget next...
const RenderTarget & getRenderTarget() const
Return the RenderTarget object that this RenderingSurface is drawing to.
@ RQ_BASE
Queue for base level rendering by the surface owner.
Definition: RenderingSurface.h:52
void removeGeometryBuffer(const RenderQueueID queue, const GeometryBuffer &buffer)
Remove the specified GeometryBuffer from the specified queue.
Class that represents a queue of GeometryBuffer objects to be rendered.
Definition: RenderQueue.h:54
Class that represents a surface that can have geometry based imagery drawn to it.
Definition: RenderingSurface.h:111
virtual RenderingWindow & createRenderingWindow(TextureTarget &target)
Create and return a reference to a child RenderingWindow object that will render back onto this Rende...
void attachWindow(RenderingWindow &w)
attach ReneringWindow from this RenderingSurface
RenderTarget * d_target
RenderTarget that this surface actually draws to.
Definition: RenderingSurface.h:358
virtual void draw()
Draw the GeometryBuffers for all rendering queues to the RenderTarget that this RenderingSurface is t...
void clearGeometry(const RenderQueueID queue)
Clears all GeometryBuffers from the specified rendering queue.
Main namespace for Crazy Eddie's GUI Library.
Definition: arch_overview.dox:1
Interface providing event signaling and handling.
Definition: EventSet.h:167
Definition: MemoryAllocatedObject.h:110
RenderQueueEventArgs(const RenderQueueID id)
Constructor for RenderQueueEventArgs objects.
RenderingWindow is a RenderingSurface that can be "drawn back" onto another RenderingSurface and is p...
Definition: RenderingWindow.h:51
std::vector< RenderingWindow *CEGUI_VECTOR_ALLOC(RenderingWindow *)> RenderingWindowList
collection type for created RenderingWindow objects
Definition: RenderingSurface.h:352
@ RQ_CONTENT_1
Queue for first level of 'content' rendering.
Definition: RenderingSurface.h:55
std::map< RenderQueueID, RenderQueue > RenderQueueList
collection type for the queues
Definition: RenderingSurface.h:349
void clearGeometry()
Clears all GeometryBuffers from all rendering queues.
void detatchWindow(RenderingWindow &w)
detatch ReneringWindow from this RenderingSurface
virtual void destroyRenderingWindow(RenderingWindow &window)
Destroy a RenderingWindow we own. If we are not the present owner of the given RenderingWindow,...
RenderingWindowList d_windows
collection of RenderingWindow object we own
Definition: RenderingSurface.h:356
virtual void drawContent()
RenderQueueList d_queues
the collection of RenderQueue objects.
Definition: RenderingSurface.h:354
virtual void transferRenderingWindow(RenderingWindow &window)
transfer ownership of the RenderingWindow to this RenderingSurface.
EventArgs based class that is passed to handlers subcribed to hear about begin/end events on renderin...
Definition: RenderingSurface.h:74
Defines interface to some surface that can be rendered to. Concrete instances of objects that impleme...
Definition: RenderTarget.h:60
bool isInvalidated() const
Return whether this RenderingSurface is invalidated.
static const String EventRenderQueueStarted
Definition: RenderingSurface.h:122
@ RQ_CONTENT_2
Queue for second level of 'content' rendering.
Definition: RenderingSurface.h:58
RenderQueueID queueID
ID of the queue that this event has been fired for.
Definition: RenderingSurface.h:87
Specialisation of RenderTarget interface that should be used as the base class for RenderTargets that...
Definition: TextureTarget.h:41
String class used within the GUI system.
Definition: String.h:64
RenderingSurface(RenderTarget &target)
Constructor for RenderingSurface objects.
@ RQ_OVERLAY
Queue for overlay rendering that appears above other regular rendering.
Definition: RenderingSurface.h:61
RenderQueueID
Enumerated type for valid render queue IDs.
Definition: RenderingSurface.h:46
static const String EventRenderQueueEnded
Definition: RenderingSurface.h:129
void addGeometryBuffer(const RenderQueueID queue, const GeometryBuffer &buffer)
Add the specified GeometryBuffer to the specified queue for rendering when the RenderingSurface is dr...
void draw(const RenderQueue &queue, RenderQueueEventArgs &args)
draw a rendering queue, firing events before and after.
bool d_invalidated
holds invalidated state of target (as far as we are concerned)
Definition: RenderingSurface.h:360
@ RQ_UNDERLAY
Queue for rendering that appears beneath base imagery.
Definition: RenderingSurface.h:49
virtual bool isRenderingWindow() const
Return whether this RenderingSurface is actually an instance of the RenderingWindow subclass.
Base class used as the argument to all subscribers Event object.
Definition: EventArgs.h:51
static const String EventNamespace
Namespace for global events from RenderingSurface objects.
Definition: RenderingSurface.h:114