Castor3D 0.15.0
Multiplatform 3D engine
Types publics | Fonctions membres publiques | Liste de tous les membres
Référence de la classe castor3d::ObjectCacheT< SceneNode, castor::String, SceneNodeCacheTraits >

Cache de SceneNode. Plus de détails...

#include <SceneNodeCache.hpp>

Graphe d'héritage de castor3d::ObjectCacheT< SceneNode, castor::String, SceneNodeCacheTraits >:
Inheritance graph
[légende]
Graphe de collaboration de castor3d::ObjectCacheT< SceneNode, castor::String, SceneNodeCacheTraits >:
Collaboration graph
[légende]

Types publics

using ElementT = SceneNode
 
using ElementKeyT = castor::String
 
using ElementCacheTraitsT = SceneNodeCacheTraits
 
using ElementObjectCacheT = ObjectCacheBaseT< ElementT, ElementKeyT, ElementCacheTraitsT >
 
using ElementPtrT = typename ElementObjectCacheT::ElementPtrT
 
using ElementContT = typename ElementObjectCacheT::ElementContT
 
using ElementInitialiserT = typename ElementObjectCacheT::ElementInitialiserT
 
using ElementCleanerT = typename ElementObjectCacheT::ElementCleanerT
 
using ElementMergerT = typename ElementObjectCacheT::ElementMergerT
 
using ElementAttacherT = typename ElementObjectCacheT::ElementAttacherT
 
using ElementDetacherT = typename ElementObjectCacheT::ElementDetacherT
 
- Types publics hérités de castor3d::ObjectCacheBaseT< SceneNode, castor::String, SceneNodeCacheTraits >
using OnChangedFunction = std::function< void() >
 
using OnChanged = castor::SignalT< OnChangedFunction >
 

Fonctions membres publiques

C3D_API ObjectCacheT (Scene &scene, ElementInitialiserT initialise, ElementCleanerT clean, ElementMergerT merge, ElementAttacherT attach, ElementDetacherT detach)
 Constructeur.
 
C3D_API ~ObjectCacheT () override=default
 Destructeur.
 
C3D_API ElementObsT add (ElementKeyT const &name, ElementPtrT &element, bool initialise=true)
 Version journalisante de tryAdd.
 
C3D_API ElementObsT add (ElementKeyT const &name)
 Version journalisante de tryAdd.
 
- Fonctions membres publiques hérités de castor3d::ObjectCacheBaseT< SceneNode, castor::String, SceneNodeCacheTraits >
void mergeInto (ElementObjectCacheT &destination)
 Met les éléments de ce cache dans ceux de celui donné.
 
EnginegetEngine () const
 
castor::String const & getObjectTypeName () const
 

Membres hérités additionnels

- Attributs publics hérités de castor3d::ObjectCacheBaseT< SceneNode, castor::String, SceneNodeCacheTraits >
OnChanged onChanged
 
- Types protégés hérités de castor3d::ObjectCacheBaseT< SceneNode, castor::String, SceneNodeCacheTraits >
using ElementT = SceneNode
 
using ElementKeyT = castor::String
 
using ElementCacheTraitsT = SceneNodeCacheTraits
 
using ElementCacheT = castor::ResourceCacheBaseT< ElementT, ElementKeyT, ElementCacheTraitsT >
 
using ElementCacheBaseT = ElementCacheT
 
using ElementObjectCacheT = ObjectCacheBaseT< ElementT, ElementKeyT, ElementCacheTraitsT >
 
using ElementPtrT = ObjectPtrT< ElementT, ElementKeyT >
 
using ElementObsT = ObjectObsT< ElementT, ElementKeyT >
 
using ElementContT = ObjectContT< ElementT, ElementKeyT >
 
using ElementInitialiserT = ObjectInitialiserT< ElementT, ElementKeyT >
 
using ElementCleanerT = ObjectCleanerT< ElementT, ElementKeyT >
 
using ElementMergerT = ObjectMergerT< ElementT, ElementKeyT >
 
using ElementAttacherT = ObjectAttacherT< ElementT, ElementKeyT >
 
using ElementDetacherT = ObjectDetacherT< ElementT, ElementKeyT >
 
- Fonctions membres protégées hérités de castor3d::ObjectCacheBaseT< SceneNode, castor::String, SceneNodeCacheTraits >
 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.
 
 ~ObjectCacheBaseT () override
 Destructeur.
 
- Attributs protégés hérités de castor3d::ObjectCacheBaseT< SceneNode, castor::String, SceneNodeCacheTraits >
Enginem_engine
 
SceneNodeRPtr m_rootNode
 
SceneNodeRPtr m_rootCameraNode
 
SceneNodeRPtr m_rootObjectNode
 
ElementMergerT m_merge
 
ElementAttacherT m_attach
 
ElementDetacherT m_detach
 

Description détaillée

Cache de SceneNode.

Documentation des définitions de type membres

◆ ElementAttacherT

using castor3d::ObjectCacheT< SceneNode, castor::String, SceneNodeCacheTraits >::ElementAttacherT = typename ElementObjectCacheT::ElementAttacherT

◆ ElementCacheTraitsT

using castor3d::ObjectCacheT< SceneNode, castor::String, SceneNodeCacheTraits >::ElementCacheTraitsT = SceneNodeCacheTraits

◆ ElementCleanerT

using castor3d::ObjectCacheT< SceneNode, castor::String, SceneNodeCacheTraits >::ElementCleanerT = typename ElementObjectCacheT::ElementCleanerT

◆ ElementContT

using castor3d::ObjectCacheT< SceneNode, castor::String, SceneNodeCacheTraits >::ElementContT = typename ElementObjectCacheT::ElementContT

◆ ElementDetacherT

using castor3d::ObjectCacheT< SceneNode, castor::String, SceneNodeCacheTraits >::ElementDetacherT = typename ElementObjectCacheT::ElementDetacherT

◆ ElementInitialiserT

using castor3d::ObjectCacheT< SceneNode, castor::String, SceneNodeCacheTraits >::ElementInitialiserT = typename ElementObjectCacheT::ElementInitialiserT

◆ ElementKeyT

using castor3d::ObjectCacheT< SceneNode, castor::String, SceneNodeCacheTraits >::ElementKeyT = castor::String

◆ ElementMergerT

using castor3d::ObjectCacheT< SceneNode, castor::String, SceneNodeCacheTraits >::ElementMergerT = typename ElementObjectCacheT::ElementMergerT

◆ ElementObjectCacheT

◆ ElementPtrT

◆ ElementT

using castor3d::ObjectCacheT< SceneNode, castor::String, SceneNodeCacheTraits >::ElementT = SceneNode

Documentation des constructeurs et destructeur

◆ ObjectCacheT()

C3D_API castor3d::ObjectCacheT< SceneNode, castor::String, SceneNodeCacheTraits >::ObjectCacheT ( Scene scene,
ElementInitialiserT  initialise,
ElementCleanerT  clean,
ElementMergerT  merge,
ElementAttacherT  attach,
ElementDetacherT  detach 
)

Constructeur.

Paramètres
[in]sceneLa scène.
[in]initialiseL'initialiseur d'objet.
[in]cleanLe nettoyeur d'objet.
[in]mergeLe fusionneur de collection d'objets.
[in]attachL'attacheur d'objet (à un noeud de scène).
[in]detachLe détacheur d'objet (d'un noeud de scène).

◆ ~ObjectCacheT()

C3D_API castor3d::ObjectCacheT< SceneNode, castor::String, SceneNodeCacheTraits >::~ObjectCacheT ( )
overridedefault

Destructeur.

Documentation des fonctions membres

◆ add() [1/2]

Version journalisante de tryAdd.

Paramètres
[in]nameLe nom d'élément.
Renvoie
L'élément réel (ajouté, ou original du doublon).

◆ add() [2/2]

C3D_API ElementObsT castor3d::ObjectCacheT< SceneNode, castor::String, SceneNodeCacheTraits >::add ( ElementKeyT const &  name,
ElementPtrT element,
bool  initialise = true 
)

Version journalisante de tryAdd.

Paramètres
[in]nameLe nom de la ressource.
[in,out]elementLa ressource, vidée en cas d'ajout (le cache en prend la responsabilité).
[in]initialisetrue pour initialiser l'élément ajouté (aucun effect sur les doublons).
Renvoie
L'élément réel (ajouté, ou original du doublon).

La documentation de cette classe a été générée à partir du fichier suivant :