Castor3D  ..
Public Member Functions | List of all members
Castor3D::GeometryManager Class Reference

Geometry manager. More...

+ Inheritance diagram for Castor3D::GeometryManager:
+ Collaboration diagram for Castor3D::GeometryManager:

Public Member Functions

 GeometryManager (Scene &p_owner, SceneNodeSPtr p_rootNode, SceneNodeSPtr p_rootCameraNode, SceneNodeSPtr p_rootObjectNode)
 Constructor. More...
 
 ~GeometryManager ()
 Destructor. More...
 
template<typename ... Parameters>
std::shared_ptr< GeometryCreate (Castor::String const &p_name, SceneNodeSPtr p_parent, Parameters &&... p_params)
 Creates an object from a name. More...
 
uint32_t GetFaceCount () const
 
uint32_t GetVertexCount () const
 
- Public Member Functions inherited from Castor3D::ObjectManager< Castor::String, Geometry >
EngineGetEngine () const
 
void Cleanup ()
 Sets all the elements to be cleaned up. More...
 
void Remove (Castor::String const &p_name)
 Removes an object, given a name. More...
 
void MergeInto (ObjectManager< Castor::String, Geometry > &p_destination)
 
std::shared_ptr< GeometryCreate (Castor::String const &p_name, SceneNodeSPtr p_parent=nullptr, Parameters &&... p_params)
 Creates an object. More...
 
uint32_t GetObjectCount () const
 
- Public Member Functions inherited from Castor3D::Manager< Castor::String, Geometry, Scene, ObjectManagerEngineGetter >
void Cleanup ()
 Sets all the elements to be cleaned up. More...
 
void Clear ()
 Flushes the collection. More...
 
bool IsEmpty ()
 
void Insert (Castor::String const &p_name, std::shared_ptr< Geometry > p_element)
 Removes an object, given a name. More...
 
void Remove (Castor::String const &p_name)
 Removes an object, given a name. More...
 
void SetRenderSystem (RenderSystem *p_renderSystem)
 
RenderSystemSetRenderSystem () const
 
EngineGetEngine () const
 
Castor::String const & GetObjectTypeName () const
 
bool Has (Castor::String const &p_name) const
 
std::shared_ptr< GeometryFind (Castor::String const &p_name) const
 Looks for an element with given name. More...
 
void lock () const
 Locks the collection mutex. More...
 
void unlock () const
 Unlocks the collection mutex. More...
 
Collection::TObjPtrMapIt begin ()
 Returns an iterator to the first element of the collection. More...
 
Collection::TObjPtrMapConstIt begin () const
 Returns an constant iterator to the first element of the collection. More...
 
Collection::TObjPtrMapIt end ()
 Returns an iterator to the after last element of the collection. More...
 
Collection::TObjPtrMapConstIt end () const
 Returns an constant iterator to the after last element of the collection. More...
 
std::shared_ptr< GeometryCreate (Castor::String const &p_name, Parameters &&... p_params)
 Creates an object. More...
 

Additional Inherited Members

- Public Types inherited from Castor3D::Manager< Castor::String, Geometry, Scene, ObjectManagerEngineGetter >
typedef Castor::Collection< Geometry, Castor::String > Collection
 
- Protected Member Functions inherited from Castor3D::ObjectManager< Castor::String, Geometry >
 ObjectManager (Scene &p_owner, SceneNodeSPtr p_rootNode, SceneNodeSPtr p_rootCameraNode, SceneNodeSPtr p_rootObjectNode)
 Constructor. More...
 
 ~ObjectManager ()
 Destructor. More...
 
- Protected Member Functions inherited from Castor3D::Manager< Castor::String, Geometry, Scene, ObjectManagerEngineGetter >
 Manager (Scene &p_owner)
 Constructor. More...
 
 ~Manager ()
 Destructor. More...
 
- Protected Attributes inherited from Castor3D::ObjectManager< Castor::String, Geometry >
SceneNodeWPtr m_rootNode
 The root node. More...
 
SceneNodeWPtr m_rootCameraNode
 The root node used only for cameras (used to ease the use of cameras) More...
 
SceneNodeWPtr m_rootObjectNode
 The root node for every object other than camera (used to ease the use of cameras) More...
 
- Protected Attributes inherited from Castor3D::Manager< Castor::String, Geometry, Scene, ObjectManagerEngineGetter >
RenderSystemm_renderSystem
 The RenderSystem. More...
 
Collection m_elements
 The elements collection. More...
 

Detailed Description

Geometry manager.

Author
Sylvain DOREMUS
Date
29/01/2016
Version
0.8.0

Constructor & Destructor Documentation

◆ GeometryManager()

Castor3D::GeometryManager::GeometryManager ( Scene p_owner,
SceneNodeSPtr  p_rootNode,
SceneNodeSPtr  p_rootCameraNode,
SceneNodeSPtr  p_rootObjectNode 
)
inline

Constructor.

Parameters
[in]p_ownerThe owner.
[in]p_rootNodeThe root node.
[in]p_rootCameraNodeThe cameras root node.
[in]p_rootObjectNodeThe objects root node.

◆ ~GeometryManager()

Castor3D::GeometryManager::~GeometryManager ( )
inline

Destructor.

Member Function Documentation

◆ Create()

template<typename ... Parameters>
std::shared_ptr< Geometry > Castor3D::GeometryManager::Create ( Castor::String const &  p_name,
SceneNodeSPtr  p_parent,
Parameters &&...  p_params 
)
inline

◆ GetFaceCount()

uint32_t Castor3D::GeometryManager::GetFaceCount ( ) const
inline
Returns
The faces count.

◆ GetVertexCount()

uint32_t Castor3D::GeometryManager::GetVertexCount ( ) const
inline
Returns
The vertex count.

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