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

Meshes manager. More...

+ Inheritance diagram for Castor3D::MeshManager:
+ Collaboration diagram for Castor3D::MeshManager:

Public Member Functions

C3D_API MeshManager (Engine &p_engine)
 Constructor. More...
 
C3D_API ~MeshManager ()
 Destructor. More...
 
C3D_API MeshSPtr Create (Castor::String const &p_name, eMESH_TYPE p_type)
 Creates a mesh with the given informations. More...
 
C3D_API MeshSPtr Create (Castor::String const &p_name, eMESH_TYPE p_type, UIntArray const &p_arrayFaces)
 Creates a mesh with the given informations. More...
 
C3D_API MeshSPtr Create (Castor::String const &p_name, eMESH_TYPE p_type, UIntArray const &p_arrayFaces, RealArray const &p_arraySizes)
 Creates a mesh with the given informations. More...
 
C3D_API bool Save (Castor::BinaryFile &p_file)
 Saves in a file all currently loaded meshes. More...
 
C3D_API bool Load (Castor::BinaryFile &p_file)
 Loads all meshes contained in the given file. More...
 
- Public Member Functions inherited from Castor3D::Manager< Castor::String, Mesh, Engine, ResourceManagerEngineGetter >
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< Mesh > 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< MeshFind (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< MeshCreate (Castor::String const &p_name, Parameters &&... p_params)
 Creates an object. More...
 

Additional Inherited Members

- Public Types inherited from Castor3D::Manager< Castor::String, Mesh, Engine, ResourceManagerEngineGetter >
typedef Castor::Collection< Mesh, Castor::String > Collection
 
- Protected Member Functions inherited from Castor3D::ResourceManager< Castor::String, Mesh >
 ResourceManager (Engine &p_owner)
 Constructor. More...
 
 ~ResourceManager ()
 Destructor. More...
 
- Protected Member Functions inherited from Castor3D::Manager< Castor::String, Mesh, Engine, ResourceManagerEngineGetter >
 Manager (Engine &p_owner)
 Constructor. More...
 
 ~Manager ()
 Destructor. More...
 
- Protected Attributes inherited from Castor3D::Manager< Castor::String, Mesh, Engine, ResourceManagerEngineGetter >
RenderSystemm_renderSystem
 The RenderSystem. More...
 
Collection m_elements
 The elements collection. More...
 

Detailed Description

Meshes manager.

Author
Sylvain DOREMUS
Date
13/10/2015
Version
0.8.0

Constructor & Destructor Documentation

◆ MeshManager()

C3D_API Castor3D::MeshManager::MeshManager ( Engine p_engine)

Constructor.

Parameters
[in]p_engineThe engine.

◆ ~MeshManager()

C3D_API Castor3D::MeshManager::~MeshManager ( )

Destructor.

Member Function Documentation

◆ Create() [1/3]

C3D_API MeshSPtr Castor3D::MeshManager::Create ( Castor::String const &  p_name,
eMESH_TYPE  p_type 
)

Creates a mesh with the given informations.

Remarks
If a mesh with the given name already exists, it is returned and no mesh is created.
Parameters
[in]p_typeMesh type.
[in]p_nameThe wanted name.
Returns
The created mesh.

◆ Create() [2/3]

C3D_API MeshSPtr Castor3D::MeshManager::Create ( Castor::String const &  p_name,
eMESH_TYPE  p_type,
UIntArray const &  p_arrayFaces 
)

Creates a mesh with the given informations.

Remarks
If a mesh with the given name already exists, it is returned and no mesh is created.
Parameters
[in]p_typeMesh type.
[in]p_nameThe wanted name.
[in]p_arrayFacesThe array of faces (for non custom meshes).
Returns
The created mesh.

◆ Create() [3/3]

C3D_API MeshSPtr Castor3D::MeshManager::Create ( Castor::String const &  p_name,
eMESH_TYPE  p_type,
UIntArray const &  p_arrayFaces,
RealArray const &  p_arraySizes 
)

Creates a mesh with the given informations.

Remarks
If a mesh with the given name already exists, it is returned and no mesh is created.
Parameters
[in]p_typeMesh type.
[in]p_nameThe wanted name.
[in]p_arrayFacesThe array of faces (for non custom meshes).
[in]p_arraySizesThe array of dimensions (for non custom meshes).
Returns
The created mesh.

◆ Load()

C3D_API bool Castor3D::MeshManager::Load ( Castor::BinaryFile &  p_file)

Loads all meshes contained in the given file.

Parameters
[in]p_fileThe file
Returns
true if ok

◆ Save()

C3D_API bool Castor3D::MeshManager::Save ( Castor::BinaryFile &  p_file)

Saves in a file all currently loaded meshes.

Parameters
[out]p_fileThe file
Returns
true if ok

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