Public Member Functions | Private Member Functions | Private Attributes | List of all members
SurgSim::Framework::Scene Class Reference

Scene. Basic Container for SceneElements. More...

#include <SurgSim/Framework/Scene.h>

Inheritance diagram for SurgSim::Framework::Scene:

Public Member Functions

 Scene (std::weak_ptr< Runtime > runtime)
 Constructor. More...
 
 ~Scene ()
 Destructor. More...
 
void addSceneElement (std::shared_ptr< SceneElement > element)
 Adds a scene element to the Scene, the SceneElement will have its initialize() function called. More...
 
const std::vector< std::shared_ptr< SceneElement > > & getSceneElements () const
 Gets all the scene elements in the scene. More...
 
const std::shared_ptr< SceneElementgetSceneElement (const std::string &name) const
 Retrieve a SceneElement for this scene with the given name. More...
 
std::shared_ptr< RuntimegetRuntime ()
 Gets the runtime. More...
 
YAML::Node encode () const
 Convert to a YAML::Node. More...
 
bool decode (const YAML::Node &node)
 Pull data from a YAML::Node. More...
 

Private Member Functions

std::shared_ptr< ScenegetSharedPtr ()
 Get a shared pointer to Scene. More...
 

Private Attributes

std::weak_ptr< Runtimem_runtime
 
std::vector< std::shared_ptr< SceneElement > > m_elements
 
boost::mutex m_sceneElementsMutex
 

Detailed Description

Scene. Basic Container for SceneElements.

Constructor & Destructor Documentation

SurgSim::Framework::Scene::Scene ( std::weak_ptr< Runtime runtime)
explicit

Constructor.

Parameters
runtimeThe runtime to be used.
SurgSim::Framework::Scene::~Scene ( )

Destructor.

Member Function Documentation

void SurgSim::Framework::Scene::addSceneElement ( std::shared_ptr< SceneElement element)

Adds a scene element to the Scene, the SceneElement will have its initialize() function called.

Parameters
elementThe element.
bool SurgSim::Framework::Scene::decode ( const YAML::Node &  node)

Pull data from a YAML::Node.

Parameters
nodethe node to decode.
Returns
true if the decoding succeeded and the node was formatted correctly, false otherwise
YAML::Node SurgSim::Framework::Scene::encode ( ) const

Convert to a YAML::Node.

Returns
A node with all the public data of this instance
std::shared_ptr< Runtime > SurgSim::Framework::Scene::getRuntime ( )

Gets the runtime.

Returns
runtime The runtime for this scene.
const std::shared_ptr< SceneElement > SurgSim::Framework::Scene::getSceneElement ( const std::string &  name) const

Retrieve a SceneElement for this scene with the given name.

Returns
A SceneElement with given name; Empty share_ptr<> will be returned if no such SceneElement found.
const std::vector< std::shared_ptr< SceneElement > > & SurgSim::Framework::Scene::getSceneElements ( ) const

Gets all the scene elements in the scene.

Returns
The scene elements.
std::shared_ptr< Scene > SurgSim::Framework::Scene::getSharedPtr ( )
private

Get a shared pointer to Scene.

Returns
The shared pointer.

Member Data Documentation

std::vector<std::shared_ptr<SceneElement> > SurgSim::Framework::Scene::m_elements
private
std::weak_ptr<Runtime> SurgSim::Framework::Scene::m_runtime
private
boost::mutex SurgSim::Framework::Scene::m_sceneElementsMutex
mutableprivate

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