|
void | mergeInto (ElementObjectCacheT &destination) |
| Met les éléments de ce cache dans ceux de celui donné.
|
|
Engine * | getEngine () const noexcept |
|
castor::String const & | getObjectTypeName () const noexcept |
|
Scene * | getOwner () const |
| L'objet propriétaire.
|
|
| ResourceCacheBaseT (ResourceCacheBaseT const &)=delete |
|
| ResourceCacheBaseT (ResourceCacheBaseT &&) noexcept=delete |
|
ResourceCacheBaseT & | operator= (ResourceCacheBaseT const &)=delete |
|
ResourceCacheBaseT & | operator= (ResourceCacheBaseT &&) noexcept=delete |
|
void | cleanup () noexcept |
| Met tous les éléments à nettoyer.
|
|
void | clear () noexcept |
| Vide la collection.
|
|
ElementPtrT | create (ElementKeyT const &name, ParametersT &&... parameters) const |
| Crée un élément.
|
|
ElementObsT | tryAdd (ElementKeyT const &name, ElementPtrT &element, bool initialise=false) |
| Ajoute un élément.
|
|
ElementObsT | tryAdd (ElementKeyT const &name, bool initialise, ElementObsT &created, ParametersT &&... parameters) |
| Ajoute un élément, construict sur place.
|
|
ElementObsT | tryAddNoLock (ElementKeyT const &name, ElementPtrT &element, bool initialise=false) |
| Ajoute un élément.
|
|
ElementObsT | tryAddNoLock (ElementKeyT const &name, bool initialise, ElementObsT &created, ParametersT &&... parameters) |
| Ajoute un élément, construict sur place.
|
|
ElementObsT | add (ElementKeyT const &name, ElementPtrT &element, bool initialise=true) |
| Version journalisante de tryAdd.
|
|
ElementObsT | add (ElementKeyT const &name, ParametersT &&... parameters) |
| Version journalisante de tryAdd.
|
|
ElementObsT | addNoLock (ElementKeyT const &name, ElementPtrT &element, bool initialise=true) |
| Version journalisante de tryAdd.
|
|
ElementObsT | addNoLock (ElementKeyT const &name, ParametersT &&... parameters) |
| Version journalisante de tryAdd.
|
|
ElementPtrT | tryRemove (ElementKeyT const &name, bool cleanup=false) noexcept |
| Retire un élément à partir d'un nom.
|
|
ElementPtrT | tryRemoveNoLock (ElementKeyT const &name, bool cleanup=false) noexcept |
| Retire un élément à partir d'un nom.
|
|
ElementPtrT | remove (ElementKeyT const &name, bool cleanup=false) noexcept |
| Version journalisante de tryAdd.
|
|
ElementPtrT | removeNoLock (ElementKeyT const &name, bool cleanup=false) noexcept |
| Version journalisante de tryAdd.
|
|
void | rename (ElementKeyT const &oldName, ElementKeyT const &newName) |
| Renomme une ressource.
|
|
ElementObsT | tryFind (ElementKeyT const &name) const noexcept |
| Cherche un élément par son nom.
|
|
ElementObsT | tryFindNoLock (ElementKeyT const &name) const noexcept |
| Cherche un élément par son nom.
|
|
ElementObsT | find (ElementKeyT const &name) const |
| Version journalisante de tryAdd.
|
|
ElementObsT | findNoLock (ElementKeyT const &name) const |
| Version journalisante de tryAdd.
|
|
void | mergeInto (ElementCacheBaseT &destination) |
| Met les éléments de ce cache dans ceux de celui donné.
|
|
void | forEach (FuncType func) const |
|
void | forEach (FuncType func) |
|
uint32_t | getObjectCount () const noexcept |
|
uint32_t | getObjectCountNoLock () const noexcept |
|
String const & | getObjectTypeName () const noexcept |
|
bool | has (ElementKeyT const &name) const noexcept |
|
bool | hasNoLock (ElementKeyT const &name) const noexcept |
|
bool | isEmpty () const noexcept |
|
bool | isEmptyNoLock () const noexcept |
|
void | lock () const |
|
void | unlock () const noexcept |
|
auto | begin () noexcept |
|
auto | begin () const noexcept |
|
auto | end () noexcept |
|
auto | end () const noexcept |
|
void | reportCreation (String const &name) const |
|
void | reportAdded (String const &name) const |
|
void | reportDuplicate (String const &name) const |
|
void | reportNull () const |
|
void | reportUnknown (String const &name) const |
|
|
| ObjectCacheBaseT (Scene &scene, SceneNodeRPtr rootNode, SceneNodeRPtr rootCameraNode, SceneNodeRPtr rootObjectNode, ElementInitialiserT initialise=ElementInitialiserT{}, ElementCleanerT clean=ElementCleanerT{}, ElementMergerT merge=ElementMergerT{}, ElementAttacherT attach=ElementAttacherT{}, ElementDetacherT detach=ElementDetacherT{}) |
| Constructeur.
|
|
| OwnedBy (Scene &owner) |
| Constructeur.
|
|
void | doCleanupNoLock () const noexcept |
|
void | doClearNoLock () noexcept |
|
ElementPtrT | doCreateT (ElementKeyT const &name, ParametersT &&... parameters) const |
|
ElementObsT | doTryAddNoLock (ElementKeyT const &name, ElementPtrT &element, bool initialise=true) |
|
ElementObsT | doAddNoLock (ElementKeyT const &name, ElementPtrT &element, bool initialise=true) |
|
ElementObsT | doTryAddNoLockT (ElementKeyT const &name, bool initialise, ElementObsT &created, ParametersT &&... parameters) |
|
ElementObsT | doAddNoLockT (ElementKeyT const &name, ParametersT &&... parameters) |
|
ElementPtrT | doTryRemoveNoLock (ElementKeyT const &name, bool cleanup=false) noexcept |
|
ElementObsT | doTryFindNoLock (ElementKeyT const &name) const noexcept |
|
| ResourceCacheBaseT (LoggerInstance &logger, ElementInitialiserT initialise=ElementInitialiserT{}, ElementCleanerT clean=ElementCleanerT{}, ElementMergerT merge=ElementMergerT{}) |
|
virtual | ~ResourceCacheBaseT () noexcept=default |
|
template<typename ObjT, typename KeyT, typename TraitsT>
class castor3d::ObjectCacheBaseT< ObjT, KeyT, TraitsT >
Classe de base pour un cache d'éléments de scène.