Public Member Functions | Protected Attributes

sp::scene::SceneGraphSimpleStream Class Reference
[Scene Management]

#include <spSceneGraphSimpleStream.hpp>

Inheritance diagram for sp::scene::SceneGraphSimpleStream:
sp::scene::SceneGraphSimple sp::scene::SceneGraph sp::scene::RenderNode sp::scene::SceneNode sp::Node sp::BaseObject

List of all members.

Public Member Functions

 SceneGraphSimpleStream ()
virtual ~SceneGraphSimpleStream ()
void addSceneNode (SceneNode *Object)
 Adds the sepcified node to the scene node list.
void addSceneNode (Camera *Object)
void addSceneNode (Light *Object)
void addSceneNode (RenderNode *Object)
void removeSceneNode (SceneNode *Object)
 Removes the sepcified node from the scene node list.
void removeSceneNode (Camera *Object)
void removeSceneNode (Light *Object)
void removeSceneNode (RenderNode *Object)
virtual void render ()

Protected Attributes

std::list< SceneNode * > QueueAddNodes_
std::list< Light * > QueueAddLights_
std::list< Camera * > QueueAddCameras_
std::list< RenderNode * > QueueAddRenderNodes_
std::list< SceneNode * > QueueRemoveNodes_
std::list< Light * > QueueRemoveLights_
std::list< Camera * > QueueRemoveCameras_
std::list< RenderNode * > QueueRemoveRenderNodes_
CriticalSection SemaphoreQueues_

Detailed Description

This is thread-safe version of the default simple scene graph (SceneGraphSimple). When new objects are hooked into the scene graph they will be streamed. i.e. only when the render loop is over the new objects will be added to the root list and the queue will be cleared.

Note:
Here you have to use only the second "renderScene" function which expects a Camera object.
Since:
Version 3.0

Constructor & Destructor Documentation

sp::scene::SceneGraphSimpleStream::SceneGraphSimpleStream (  ) 
virtual sp::scene::SceneGraphSimpleStream::~SceneGraphSimpleStream (  )  [virtual]

Member Function Documentation

void sp::scene::SceneGraphSimpleStream::addSceneNode ( SceneNode Object  )  [virtual]

Adds the sepcified node to the scene node list.

Reimplemented from sp::scene::SceneGraph.

void sp::scene::SceneGraphSimpleStream::addSceneNode ( Camera Object  )  [virtual]

Reimplemented from sp::scene::SceneGraph.

void sp::scene::SceneGraphSimpleStream::addSceneNode ( RenderNode Object  )  [virtual]

Reimplemented from sp::scene::SceneGraph.

void sp::scene::SceneGraphSimpleStream::addSceneNode ( Light Object  )  [virtual]

Reimplemented from sp::scene::SceneGraph.

void sp::scene::SceneGraphSimpleStream::removeSceneNode ( Camera Object  )  [virtual]

Reimplemented from sp::scene::SceneGraph.

void sp::scene::SceneGraphSimpleStream::removeSceneNode ( SceneNode Object  )  [virtual]

Removes the sepcified node from the scene node list.

Reimplemented from sp::scene::SceneGraph.

void sp::scene::SceneGraphSimpleStream::removeSceneNode ( RenderNode Object  )  [virtual]

Reimplemented from sp::scene::SceneGraph.

void sp::scene::SceneGraphSimpleStream::removeSceneNode ( Light Object  )  [virtual]

Reimplemented from sp::scene::SceneGraph.

virtual void sp::scene::SceneGraphSimpleStream::render (  )  [virtual]

Renders the whole scene without using a camera object. This is particular used when a scene manager is a child of another one.

Reimplemented from sp::scene::SceneGraphSimple.


Member Data Documentation


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines