#include <spSceneGraphSimpleStream.hpp>
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_ |
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.
sp::scene::SceneGraphSimpleStream::SceneGraphSimpleStream | ( | ) |
virtual sp::scene::SceneGraphSimpleStream::~SceneGraphSimpleStream | ( | ) | [virtual] |
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.
std::list<Camera*> sp::scene::SceneGraphSimpleStream::QueueAddCameras_ [protected] |
std::list<Light*> sp::scene::SceneGraphSimpleStream::QueueAddLights_ [protected] |
std::list<SceneNode*> sp::scene::SceneGraphSimpleStream::QueueAddNodes_ [protected] |
std::list<RenderNode*> sp::scene::SceneGraphSimpleStream::QueueAddRenderNodes_ [protected] |
std::list<Camera*> sp::scene::SceneGraphSimpleStream::QueueRemoveCameras_ [protected] |
std::list<Light*> sp::scene::SceneGraphSimpleStream::QueueRemoveLights_ [protected] |
std::list<SceneNode*> sp::scene::SceneGraphSimpleStream::QueueRemoveNodes_ [protected] |
std::list<RenderNode*> sp::scene::SceneGraphSimpleStream::QueueRemoveRenderNodes_ [protected] |