Visualization Library v1.0.3

A lightweight C++ OpenGL middleware for 2D/3D graphics

VL     Star     Watch     Fork     Issue

[Download] [Tutorials] [All Classes] [Grouped Classes]
Public Member Functions | Protected Attributes

vl::RendererAbstract Class Reference

Base class providing all the basic funtionalities of a Renderer. More...

#include <RendererAbstract.hpp>

Inheritance diagram for vl::RendererAbstract:
vl::Object vl::Renderer vl::EdgeRenderer vl::OcclusionCullRenderer

List of all members.

Public Member Functions

 RendererAbstract ()
RendererAbstractoperator= (const RendererAbstract &other)
virtual const RenderQueuerender (const RenderQueue *in_render_queue, Camera *camera, real frame_clock)=0
 Takes as input the render queue to render and returns a possibly filtered render queue for further processing.
virtual const Framebufferframebuffer () const =0
 The Framebuffer on which the rendering is performed.
virtual Framebufferframebuffer ()=0
 The Framebuffer on which the rendering is performed.
void dispatchOnRendererStarted ()
 Dispatches the onRendererStarted() event to the registered RenderEventCallback objects.
void dispatchOnRendererFinished ()
 Dispatches the onRendererFinished() event to the registered RenderEventCallback objects.
Collection< RenderEventCallback > * onFinishedCallbacks ()
 Returns the list of RenderEventCallback objects registered to onRendererFinished() event notification.
const Collection
< RenderEventCallback > * 
onFinishedCallbacks () const
 Returns the list of RenderEventCallback objects registered to onRendererFinished() event notification.
Collection< RenderEventCallback > * onStartedCallbacks ()
 Returns the list of RenderEventCallback objects registered to onRendererStarted() event notification.
const Collection
< RenderEventCallback > * 
onStartedCallbacks () const
 Returns the list of RenderEventCallback objects registered to onRendererStarted() event notification.
unsigned long renderTick () const
 The current render tick number, equivalent to the number or calls made to the render() method.
void incrementRenderTick ()
 Increments the rendering tick count.
void setClearFlags (EClearFlags clear_flags)
 The clear flags used to clear the viewport.
EClearFlags clearFlags () const
 The clear flags used to clear the viewport.
void setEnableMask (unsigned int mask)
 Enable mask used to enable/disable the rendering of matching Actors.
unsigned int enableMask () const
 Enable mask used to enable/disable the rendering of matching Actors.
void setFrameClock (real t)
 The current rendring frame time.
real frameClock () const
 The current rendring frame time.

Protected Attributes

ref< Collection
< RenderEventCallback > > 
mOnFinishedCallbacks
ref< Collection
< RenderEventCallback > > 
mOnStartedCallbacks
unsigned long mRenderTick
unsigned int mEnableMask
EClearFlags mClearFlags
real mFrameClock

Detailed Description

Base class providing all the basic funtionalities of a Renderer.

Definition at line 51 of file RendererAbstract.hpp.


Constructor & Destructor Documentation

vl::RendererAbstract::RendererAbstract (  ) [inline]

Definition at line 56 of file RendererAbstract.hpp.

References vl::CF_CLEAR_COLOR_DEPTH, and VL_DEBUG_SET_OBJECT_NAME.


Member Function Documentation

RendererAbstract& vl::RendererAbstract::operator= ( const RendererAbstract other ) [inline]
virtual const RenderQueue* vl::RendererAbstract::render ( const RenderQueue in_render_queue,
Camera camera,
real  frame_clock 
) [pure virtual]

Takes as input the render queue to render and returns a possibly filtered render queue for further processing.

Renderer's implementation of this function always returns in_render_queue.

Implemented in vl::EdgeRenderer, vl::OcclusionCullRenderer, and vl::Renderer.

virtual const Framebuffer* vl::RendererAbstract::framebuffer (  ) const [pure virtual]

The Framebuffer on which the rendering is performed.

Implemented in vl::OcclusionCullRenderer, and vl::Renderer.

virtual Framebuffer* vl::RendererAbstract::framebuffer (  ) [pure virtual]

The Framebuffer on which the rendering is performed.

Implemented in vl::OcclusionCullRenderer, and vl::Renderer.

void vl::RendererAbstract::dispatchOnRendererStarted (  ) [inline]

Dispatches the onRendererStarted() event to the registered RenderEventCallback objects.

Definition at line 89 of file RendererAbstract.hpp.

References vl::Collection< T >::eraseAt(), and vl::Collection< T >::size().

void vl::RendererAbstract::dispatchOnRendererFinished (  ) [inline]

Dispatches the onRendererFinished() event to the registered RenderEventCallback objects.

Definition at line 103 of file RendererAbstract.hpp.

References vl::Collection< T >::eraseAt(), and vl::Collection< T >::size().

Collection<RenderEventCallback>* vl::RendererAbstract::onFinishedCallbacks (  ) [inline]

Returns the list of RenderEventCallback objects registered to onRendererFinished() event notification.

Definition at line 117 of file RendererAbstract.hpp.

const Collection<RenderEventCallback>* vl::RendererAbstract::onFinishedCallbacks (  ) const [inline]

Returns the list of RenderEventCallback objects registered to onRendererFinished() event notification.

Definition at line 120 of file RendererAbstract.hpp.

Collection<RenderEventCallback>* vl::RendererAbstract::onStartedCallbacks (  ) [inline]

Returns the list of RenderEventCallback objects registered to onRendererStarted() event notification.

Definition at line 123 of file RendererAbstract.hpp.

const Collection<RenderEventCallback>* vl::RendererAbstract::onStartedCallbacks (  ) const [inline]

Returns the list of RenderEventCallback objects registered to onRendererStarted() event notification.

Definition at line 126 of file RendererAbstract.hpp.

unsigned long vl::RendererAbstract::renderTick (  ) const [inline]

The current render tick number, equivalent to the number or calls made to the render() method.

Definition at line 129 of file RendererAbstract.hpp.

void vl::RendererAbstract::incrementRenderTick (  ) [inline]

Increments the rendering tick count.

Definition at line 132 of file RendererAbstract.hpp.

void vl::RendererAbstract::setClearFlags ( EClearFlags  clear_flags ) [inline]

The clear flags used to clear the viewport.

Definition at line 135 of file RendererAbstract.hpp.

EClearFlags vl::RendererAbstract::clearFlags (  ) const [inline]

The clear flags used to clear the viewport.

Definition at line 138 of file RendererAbstract.hpp.

void vl::RendererAbstract::setEnableMask ( unsigned int  mask ) [inline]

Enable mask used to enable/disable the rendering of matching Actors.

Definition at line 141 of file RendererAbstract.hpp.

unsigned int vl::RendererAbstract::enableMask (  ) const [inline]

Enable mask used to enable/disable the rendering of matching Actors.

Definition at line 144 of file RendererAbstract.hpp.

Referenced by vl::Renderer::render(), vl::OcclusionCullRenderer::render(), vl::EdgeRenderer::render(), and vl::OcclusionCullRenderer::render_pass2().

void vl::RendererAbstract::setFrameClock ( real  t ) [inline]

The current rendring frame time.

vl::Renderer passes this value to ActorEventCallback::onActorRenderStarted()

Definition at line 147 of file RendererAbstract.hpp.

real vl::RendererAbstract::frameClock (  ) const [inline]

The current rendring frame time.

vl::Renderer passes this value to ActorEventCallback::onActorRenderStarted()

Definition at line 150 of file RendererAbstract.hpp.


Member Data Documentation

Definition at line 153 of file RendererAbstract.hpp.

Referenced by operator=().

Definition at line 154 of file RendererAbstract.hpp.

Referenced by operator=().

unsigned long vl::RendererAbstract::mRenderTick [protected]

Definition at line 155 of file RendererAbstract.hpp.

unsigned int vl::RendererAbstract::mEnableMask [protected]

Definition at line 156 of file RendererAbstract.hpp.

Referenced by operator=().

Definition at line 157 of file RendererAbstract.hpp.

Referenced by operator=().

Definition at line 158 of file RendererAbstract.hpp.


The documentation for this class was generated from the following file:

Visualization Library v1.0.3 Reference Documentation
Copyright Michele Bosi. All rights reserved.
Updated on Tue Feb 7 2017 00:55:11.
Permission is granted to use this page to write and publish articles regarding Visualization Library.