The Nebula Device 3: RenderModules::RTPluginRegistry Class Reference

The Nebula Device 3

RenderModules::RTPluginRegistry Class Reference

#include <rtpluginregistry.h>

Inheritance diagram for RenderModules::RTPluginRegistry:

Core::RefCounted

Detailed Description

The central registry for render thread plugins.

(C) 2009 Radon Labs GmbH

Public Member Functions

 RTPluginRegistry ()
 constructor
virtual ~RTPluginRegistry ()
 destructor
void Setup ()
 setup the plugin registry
void Discard ()
 discard the plugin registry
bool IsValid () const
 return true if currently valid
void RegisterRTPlugin (const Core::Rtti *rtti)
 register a render plugin
void UnregisterRTPlugin (const Core::Rtti *rtti)
 unregister a render plugin
const Util::Array< Ptr< RTPlugin > > & GetRTPlugins () const
 get all currently registered plugins
virtual void OnStageCreated (const Ptr< InternalGraphics::InternalStage > &stage)
 called when a new stage has been created
virtual void OnDiscardStage (const Ptr< InternalGraphics::InternalStage > &stage)
 called when a stage is discarded
virtual void OnViewCreated (const Ptr< InternalGraphics::InternalView > &view)
 called when a new view has been created
virtual void OnDiscardView (const Ptr< InternalGraphics::InternalView > &view)
 called when a view is being discarded
virtual void OnAttachEntity (const Ptr< InternalGraphics::InternalGraphicsEntity > &entity)
 called when a graphics entity has been registered with the InternalGraphicsServer
virtual void OnRemoveEntity (const Ptr< InternalGraphics::InternalGraphicsEntity > &entity)
 called when a graphics entity is being removed from a stage
virtual void OnUpdateBefore (IndexT frameId, Timing::Time time)
 called before updating entities
virtual void OnUpdateAfter (IndexT frameId, Timing::Time time)
 called after updating entities
virtual void OnRenderBefore (IndexT frameId, Timing::Time time)
 called before rendering entities
virtual void OnRenderAfter (IndexT frameId, Timing::Time time)
 called after rendering entities
virtual void OnRenderFrameBatch (const Ptr< Frame::FrameBatch > &frameBatch)
 called from when rendering a frame batch
virtual void OnRenderWithoutView (IndexT frameId, Timing::Time time)
 called if no view exists, and no default camera is set in view
int GetRefCount () const
 get the current refcount
void AddRef ()
 increment refcount by one
void Release ()
 decrement refcount and destroy object if refcount is zero
bool IsInstanceOf (const Rtti &rtti) const
 return true if this object is instance of given class
bool IsInstanceOf (const Util::String &className) const
 return true if this object is instance of given class by string
bool IsInstanceOf (const Util::FourCC &classFourCC) const
 return true if this object is instance of given class by fourcc
bool IsA (const Rtti &rtti) const
 return true if this object is instance of given class, or a derived class
bool IsA (const Util::String &rttiName) const
 return true if this object is instance of given class, or a derived class, by string
bool IsA (const Util::FourCC &rttiFourCC) const
 return true if this object is instance of given class, or a derived class, by fourcc
const Util::StringGetClassName () const
 get the class name
Util::FourCC GetClassFourCC () const
 get the class FourCC code

Static Public Member Functions

static void DumpRefCountingLeaks ()
 dump refcounting leaks, call at end of application (NEBULA3_DEBUG builds only!)

Member Function Documentation

int Core::RefCounted::GetRefCount (  )  const [inline, inherited]

get the current refcount

Return the current refcount of the object.

void Core::RefCounted::AddRef (  )  [inline, inherited]

increment refcount by one

Increment the refcount of the object.

void Core::RefCounted::Release (  )  [inline, inherited]

decrement refcount and destroy object if refcount is zero

Decrement the refcount and destroy object if refcount is zero.

const Util::String & Core::RefCounted::GetClassName (  )  const [inline, inherited]

get the class name

Get the class name of the object.

Util::FourCC Core::RefCounted::GetClassFourCC (  )  const [inline, inherited]

get the class FourCC code

Get the class FourCC of the object.

void Core::RefCounted::DumpRefCountingLeaks (  )  [static, inherited]

dump refcounting leaks, call at end of application (NEBULA3_DEBUG builds only!)

This method should be called as the very last before an application exits.