![]() |
PURE API 0.5
PR00F's Ultimate Rendering Engine full documentation
|
3D mesh manager class. More...
3D mesh manager class.
Definition at line 126 of file PureMesh3DManager.h.
#include <PureMesh3DManager.h>
Classes | |
class | PureMesh3DManagerImpl |
Public Member Functions | |
PureMesh3DManager (PureMaterialManager &matMgr) | |
virtual | ~PureMesh3DManager () |
CConsole & | getConsole () const |
Returns access to console preset with logger module name as this class. | |
TPureBool | isInitialized () const |
Tells whether the object is correctly initialized or not. | |
TPureBool | isMinimalIndexStorageEnabled () const |
Tells whether storage of indices is minimalized or not. | |
void | SetMinimalIndexStorageEnabled (TPureBool state) |
Sets whether storage of indices is minimalized or not. | |
PureMesh3D * | createPlane (TPureFloat a, TPureFloat b) |
Creates a new plane with the given sizes. | |
PureMesh3D * | createBox (TPureFloat a, TPureFloat b, TPureFloat c) |
Creates a new box with the given sizes. | |
PureMesh3D * | createCube (TPureFloat a) |
Creates a new cube with the given sizes. | |
PureMesh3D * | createFromFile (const char *filename) |
Creates object from the given file. | |
virtual void | WriteList () const |
From PureFiledManager, adding logging mesh data. | |
![]() | |
PureFiledManager () | |
virtual | ~PureFiledManager () |
CConsole & | getConsole () const |
Returns access to console preset with logger module name as this class. | |
PureFiledManaged * | getByFilename (const char *filename) const |
Gets the FiledManaged by the specified filename. | |
![]() | |
PureManager () | |
virtual | ~PureManager () |
CConsole & | getConsole () const |
Returns access to console preset with logger module name as this class. | |
TPureInt | getCount () const |
Gets the number of managed objects. | |
TPureBool | isEmpty () const |
Is the number of manageds 0? | |
TPureInt | getSize () const |
Gets the number of allocated slots for managed objects; getSize() >= getCount(). | |
PureManaged * | getAttachedAt (TPureInt ind) const |
Gets the pointer to the managed at the given index. | |
TPureInt | getAttachedIndex (const PureManaged &m) const |
Gets the index of the given managed. | |
void | PreAlloc (TPureInt count) |
Allocates count free slots for manageds. | |
TPureBool | hasAttached (const PureManaged &m) const |
Gets whether the given managed is managed by this manager. | |
virtual void | Attach (PureManaged &m) |
Adds the given managed to the manager, if the managed has no manager yet. | |
virtual void | Detach (PureManaged &m) |
Removes the given managed from the manager, so the managed will have no manager. | |
void | DeleteAttachedInstance (PureManaged &m) |
Removes the given managed from the manager and destructs it. | |
void | DeleteAll () |
Removes and destructs every managed element in the manager. | |
virtual void | HandleManagedPropertyChanged (PureManaged &m) |
Should be invoked when a managed's property got changed from a different kind of manager or managed. | |
virtual TPureUInt | getUsedSystemMemory () const |
Gets the amount of allocated system memory for all manageds owner by this manager. | |
Static Public Member Functions | |
static const char * | getLoggerModuleName () |
Returns the logger module name of this class. | |
![]() | |
static const char * | getLoggerModuleName () |
Returns the logger module name of this class. | |
![]() | |
static const char * | getLoggerModuleName () |
Returns the logger module name of this class. | |
Protected Member Functions | |
PureMesh3DManager () | |
PureMesh3DManager (const PureMesh3DManager &) | |
PureMesh3DManager & | operator= (const PureMesh3DManager &) |
virtual void | WriteListCallback (const PureManaged &mngd) const |
From PureManager, printing filename. | |
![]() | |
PureFiledManager (const PureFiledManager &) | |
PureFiledManager & | operator= (const PureFiledManager &) |
![]() | |
PureManager (const PureManager &other) | |
PureManager & | operator= (const PureManager &) |
Private Attributes | |
PureMesh3DManagerImpl * | pImpl |
Friends | |
class | PureObject3DManager |
class | SampleManagerForDescendantFromVertexTransfer |
PureMesh3DManager::PureMesh3DManager | ( | PureMaterialManager & | matMgr | ) |
matMgr | A MaterialManager instance to be used for creating materials used by Object3D instances. |
std::bad_alloc | - This class or its ancestor dynamically allocates memory with operator new, in case of failure the exception is not handled but propagated to caller. |
Definition at line 1442 of file PureMesh3DManager.cpp.
|
virtual |
Definition at line 1448 of file PureMesh3DManager.cpp.
|
protected |
Definition at line 1743 of file PureMesh3DManager.cpp.
|
protected |
Definition at line 1749 of file PureMesh3DManager.cpp.
PureMesh3D * PureMesh3DManager::createBox | ( | TPureFloat | a, |
TPureFloat | b, | ||
TPureFloat | c ) |
Creates a new box with the given sizes.
Creates a new box mesh with the given sizes.
This box consists of quads instead of triangles and has 24 vertices. Every vertex has a normal, a color, and texture uvw-coordinates in separate arrays. All faces are defined counter-clockwise starting from the lower left vertex, thus the order of texture uvw-coordinates are the same for each face. Order of faces is: front face towards the viewer, back, left, right, top, bottom.
a | Length of box (size on X-axis). |
b | Height of box (size on Y-axis). |
c | Depth of box (size on Z-axis). |
Definition at line 1584 of file PureMesh3DManager.cpp.
PureMesh3D * PureMesh3DManager::createCube | ( | TPureFloat | a | ) |
Creates a new cube with the given sizes.
Creates a new cube mesh with the given sizes.
Equivalent to createBox(a, a, a).
a | Length of edges. |
Definition at line 1634 of file PureMesh3DManager.cpp.
|
virtual |
Creates object from the given file.
Creates 3D mesh from the given file.
filename | The model file to be loaded to be an Object3D instance. |
Reimplemented from PureFiledManager.
Reimplemented in PureObject3DManager.
Definition at line 1660 of file PureMesh3DManager.cpp.
PureMesh3D * PureMesh3DManager::createPlane | ( | TPureFloat | a, |
TPureFloat | b ) |
Creates a new plane with the given sizes.
Creates a new plane mesh with the given sizes.
a | Length of plane (size on X-axis). |
b | Height of plane (size on Y-axis). |
Definition at line 1527 of file PureMesh3DManager.cpp.
CConsole & PureMesh3DManager::getConsole | ( | ) | const |
Returns access to console preset with logger module name as this class.
Intentionally not virtual, so the getConsole() in derived class should hide this instead of overriding.
Definition at line 1461 of file PureMesh3DManager.cpp.
|
static |
Returns the logger module name of this class.
Intentionally not virtual, so derived class should hide this instead of overriding. Not even private, so user can also access this from outside, for any reason like controlling log filtering per logger module name.
Definition at line 1474 of file PureMesh3DManager.cpp.
TPureBool PureMesh3DManager::isInitialized | ( | ) | const |
Tells whether the object is correctly initialized or not.
Definition at line 1484 of file PureMesh3DManager.cpp.
TPureBool PureMesh3DManager::isMinimalIndexStorageEnabled | ( | ) | const |
Tells whether storage of indices is minimalized or not.
Minimalized storage of indices means that the software always tries to pack geometry indices into as small storage types as possible. This can happen in both system and video memory. If enabled, geometry indices generally take less memory and rendering may be faster. Enabled by default.
Definition at line 1497 of file PureMesh3DManager.cpp.
|
protected |
Definition at line 1755 of file PureMesh3DManager.cpp.
void PureMesh3DManager::SetMinimalIndexStorageEnabled | ( | TPureBool | state | ) |
Sets whether storage of indices is minimalized or not.
Minimalized storage of indices means that the software always tries to pack geometry indices into as small storage types as possible. This can happen in both system or video memory. If enabled, geometry indices generally take less memory and rendering may be faster. Enabled by default.
Note: disabling is unimplemented currently!
Definition at line 1512 of file PureMesh3DManager.cpp.
|
virtual |
From PureFiledManager, adding logging mesh data.
Reimplemented from PureFiledManager.
Reimplemented in PureObject3DManager.
Definition at line 1730 of file PureMesh3DManager.cpp.
|
protectedvirtual |
From PureManager, printing filename.
Reimplemented from PureFiledManager.
Reimplemented in PureObject3DManager.
Definition at line 1761 of file PureMesh3DManager.cpp.
|
friend |
Definition at line 172 of file PureMesh3DManager.h.
|
friend |
Definition at line 173 of file PureMesh3DManager.h.
|
private |
Definition at line 170 of file PureMesh3DManager.h.