Castor3D
..
|
Cache de Light. Plus de détails...
Types publics | |
using | MyObjectCache = ObjectCacheBase< Light, Castor::String > |
using | MyObjectCacheTraits = typename MyObjectCacheType::MyObjectCacheTraits |
using | Element = typename MyObjectCacheType::Element |
using | Key = typename MyObjectCacheType::Key |
using | Collection = typename MyObjectCacheType::Collection |
using | ElementPtr = typename MyObjectCacheType::ElementPtr |
using | Producer = typename MyObjectCacheType::Producer |
using | Initialiser = typename MyObjectCacheType::Initialiser |
using | Cleaner = typename MyObjectCacheType::Cleaner |
using | Merger = typename MyObjectCacheType::Merger |
using | Attacher = typename MyObjectCacheType::Attacher |
using | Detacher = typename MyObjectCacheType::Detacher |
Types publics hérités de Castor3D::ObjectCacheBase< Light, Castor::String > | |
using | OnChangedFunction = std::function< void() > |
using | OnChanged = Castor::Signal< OnChangedFunction > |
Fonctions membres publiques | |
C3D_API | ObjectCache (Engine &p_engine, Scene &p_scene, SceneNodeSPtr p_rootNode, SceneNodeSPtr p_rootCameraNode, SceneNodeSPtr p_rootObjectNode, Producer &&p_produce, Initialiser &&p_initialise=Initialiser{}, Cleaner &&p_clean=Cleaner{}, Merger &&p_merge=Merger{}, Attacher &&p_attach=Attacher{}, Detacher &&p_detach=Detacher{}) |
Constructeur. Plus de détails... | |
C3D_API | ~ObjectCache () |
Destructeur. Plus de détails... | |
C3D_API void | Initialise () |
Initialise la texture de lumières. Plus de détails... | |
C3D_API void | Cleanup () |
Met tous les éléments à nettoyer. Plus de détails... | |
ElementPtr | Add (Key const &p_name, SceneNodeSPtr p_parent, LightType p_type) |
Crée un objet. Plus de détails... | |
C3D_API void | UpdateLights () const |
Met à jour la texture de sources lumineuses. Plus de détails... | |
C3D_API void | BindLights () const |
Active la texture de sources lumineuses. Plus de détails... | |
C3D_API void | UnbindLights () const |
Désactive la texture de sources lumineuses. Plus de détails... | |
uint32_t | GetLightsCount (LightType p_type) const |
Récupère le nombre de lumières du type donné. Plus de détails... | |
LightsArray | GetLights (LightType p_type) const |
Récupère les lumières du type donné. Plus de détails... | |
Fonctions membres publiques hérités de Castor3D::ObjectCacheBase< Light, Castor::String > | |
ObjectCacheBase (Engine &p_engine, Scene &p_scene, SceneNodeSPtr p_rootNode, SceneNodeSPtr p_rootCameraNode, SceneNodeSPtr p_rootObjectNode, Producer &&p_produce, Initialiser &&p_initialise=Initialiser{}, Cleaner &&p_clean=Cleaner{}, Merger &&p_merge=Merger{}, Attacher &&p_attach=Attacher{}, Detacher &&p_detach=Detacher{}) | |
Constructeur. Plus de détails... | |
~ObjectCacheBase () | |
Destructeur. Plus de détails... | |
void | Cleanup () |
Met tous les éléments à nettoyer. Plus de détails... | |
void | Clear () |
Vide la collection. Plus de détails... | |
bool | IsEmpty () |
ElementPtr | Add (Key const &p_name, ElementPtr p_element) |
Ajoute un objet. Plus de détails... | |
ElementPtr | Add (Key const &p_name, SceneNodeSPtr p_parent, Parameters &&... p_parameters) |
Crée un objet. Plus de détails... | |
void | Remove (Key const &p_name) |
Retire un objet à partir d'un nom. Plus de détails... | |
void | MergeInto (MyObjectCacheType &p_destination) |
void | ForEach (FuncType p_func) const |
Applique une fonction à tous les éléments de ce cache. Plus de détails... | |
void | ForEach (FuncType p_func) |
Applique une fonction à tous les éléments de ce cache. Plus de détails... | |
uint32_t | GetObjectCount () const |
Scene * | GetScene () const |
Engine * | GetEngine () const |
Castor::String const & | GetObjectTypeName () const |
bool | Has (Key const &p_name) const |
ElementPtr | Find (Key const &p_name) const |
Cherche un élément par son nom. Plus de détails... | |
void | lock () const |
Locke le mutex de la collection. Plus de détails... | |
void | unlock () const |
Délocke le mutex de la collection. Plus de détails... | |
auto | begin () |
Renvoie un itérateur sur le premier élément de la collection. Plus de détails... | |
auto | begin () const |
Renvoie un itérateur constant sur le premier élément de la collection. Plus de détails... | |
auto | end () |
Renvoie un itérateur sur l'après dernier élément de la collection. Plus de détails... | |
auto | end () const |
Renvoie un itérateur constant sur l'après dernier élément de la collection. Plus de détails... | |
using Castor3D::ObjectCache< Light, Castor::String >::Attacher = typename MyObjectCacheType::Attacher |
using Castor3D::ObjectCache< Light, Castor::String >::Cleaner = typename MyObjectCacheType::Cleaner |
using Castor3D::ObjectCache< Light, Castor::String >::Collection = typename MyObjectCacheType::Collection |
using Castor3D::ObjectCache< Light, Castor::String >::Detacher = typename MyObjectCacheType::Detacher |
using Castor3D::ObjectCache< Light, Castor::String >::Element = typename MyObjectCacheType::Element |
using Castor3D::ObjectCache< Light, Castor::String >::ElementPtr = typename MyObjectCacheType::ElementPtr |
using Castor3D::ObjectCache< Light, Castor::String >::Initialiser = typename MyObjectCacheType::Initialiser |
using Castor3D::ObjectCache< Light, Castor::String >::Key = typename MyObjectCacheType::Key |
using Castor3D::ObjectCache< Light, Castor::String >::Merger = typename MyObjectCacheType::Merger |
using Castor3D::ObjectCache< Light, Castor::String >::MyObjectCache = ObjectCacheBase< Light, Castor::String > |
using Castor3D::ObjectCache< Light, Castor::String >::MyObjectCacheTraits = typename MyObjectCacheType::MyObjectCacheTraits |
using Castor3D::ObjectCache< Light, Castor::String >::Producer = typename MyObjectCacheType::Producer |
C3D_API Castor3D::ObjectCache< Light, Castor::String >::ObjectCache | ( | Engine & | p_engine, |
Scene & | p_scene, | ||
SceneNodeSPtr | p_rootNode, | ||
SceneNodeSPtr | p_rootCameraNode, | ||
SceneNodeSPtr | p_rootObjectNode, | ||
Producer && | p_produce, | ||
Initialiser && | p_initialise = Initialiser{} , |
||
Cleaner && | p_clean = Cleaner{} , |
||
Merger && | p_merge = Merger{} , |
||
Attacher && | p_attach = Attacher{} , |
||
Detacher && | p_detach = Detacher{} |
||
) |
Constructeur.
[in] | p_engine | Le moteur. |
[in] | p_scene | La scène. |
[in] | p_rootNode | Le noeud racine. |
[in] | p_rootCameraNode | Le noeud racine des caméras. |
[in] | p_rootObjectNode | Le noeud racine des objets. |
[in] | p_produce | Le créateur d'objet. |
[in] | p_initialise | L'initialiseur d'objet. |
[in] | p_clean | Le nettoyeur d'objet. |
[in] | p_merge | Le fusionneur de collection d'objets. |
[in] | p_attach | L'attacheur d'objet (à un noeud de scène). |
[in] | p_detach | Le détacheur d'objet (d'un noeud de scène). |
C3D_API Castor3D::ObjectCache< Light, Castor::String >::~ObjectCache | ( | ) |
Destructeur.
|
inline |
Crée un objet.
[in] | p_name | Le nom d'objet. |
[in] | p_parent | Le noeud de scène parent. |
[in] | p_type | Le type de source lumineuse. |
Références C3D_API.
C3D_API void Castor3D::ObjectCache< Light, Castor::String >::BindLights | ( | ) | const |
Active la texture de sources lumineuses.
C3D_API void Castor3D::ObjectCache< Light, Castor::String >::Cleanup | ( | ) |
Met tous les éléments à nettoyer.
|
inline |
Récupère les lumières du type donné.
[in] | p_type | Le type de lumière. |
|
inline |
Récupère le nombre de lumières du type donné.
[in] | p_type | Le type de lumière. |
C3D_API void Castor3D::ObjectCache< Light, Castor::String >::Initialise | ( | ) |
Initialise la texture de lumières.
C3D_API void Castor3D::ObjectCache< Light, Castor::String >::UnbindLights | ( | ) | const |
Désactive la texture de sources lumineuses.
C3D_API void Castor3D::ObjectCache< Light, Castor::String >::UpdateLights | ( | ) | const |
Met à jour la texture de sources lumineuses.