Castor3D  ..
Types publics | Fonctions membres publiques | Liste de tous les membres
Référence du modèle de la classe Castor3D::ObjectCache< Light, Castor::String >

Cache de Light. Plus de détails...

+ Graphe d'héritage de Castor3D::ObjectCache< Light, Castor::String >:
+ Graphe de collaboration de Castor3D::ObjectCache< Light, Castor::String >:

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
 
SceneGetScene () const
 
EngineGetEngine () 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...
 

Membres hérités additionnels

- Attributs publics hérités de Castor3D::ObjectCacheBase< Light, Castor::String >
OnChanged onChanged
 
- Types protégés hérités de Castor3D::ObjectCacheBase< Light, Castor::String >
using MyObjectCacheType = ObjectCacheBase< Light, Castor::String >
 
using MyObjectCacheTraits = ObjectCacheTraits< Light, Castor::String >
 
using Element = Light
 
using Key = Castor::String
 
using Collection = Castor::Collection< Element, Key >
 
using ElementPtr = std::shared_ptr< Element >
 
using Producer = typename MyObjectCacheTraits::Producer
 
using Merger = typename MyObjectCacheTraits::Merger
 
using Initialiser = ElementInitialiser< Element >
 
using Cleaner = ElementCleaner< Element >
 
using Attacher = ElementAttacher< Element >
 
using Detacher = ElementDetacher< Element >
 
- Attributs protégés hérités de Castor3D::ObjectCacheBase< Light, Castor::String >
Enginem_engine
 
Scenem_scene
 
SceneNodeWPtr m_rootNode
 
SceneNodeWPtr m_rootCameraNode
 
SceneNodeWPtr m_rootObjectNode
 
Collection m_elements
 
Producer m_produce
 
Initialiser m_initialise
 
Cleaner m_clean
 
Merger m_merge
 
Attacher m_attach
 
Detacher m_detach
 

Description détaillée

template<>
class Castor3D::ObjectCache< Light, Castor::String >

Cache de Light.

Auteur
Sylvain DOREMUS
Date
29/01/2016
Version
0.8.0

Documentation des définitions de type membres

◆ Attacher

using Castor3D::ObjectCache< Light, Castor::String >::Attacher = typename MyObjectCacheType::Attacher

◆ Cleaner

using Castor3D::ObjectCache< Light, Castor::String >::Cleaner = typename MyObjectCacheType::Cleaner

◆ Collection

◆ Detacher

using Castor3D::ObjectCache< Light, Castor::String >::Detacher = typename MyObjectCacheType::Detacher

◆ Element

using Castor3D::ObjectCache< Light, Castor::String >::Element = typename MyObjectCacheType::Element

◆ ElementPtr

◆ Initialiser

◆ Key

using Castor3D::ObjectCache< Light, Castor::String >::Key = typename MyObjectCacheType::Key

◆ Merger

using Castor3D::ObjectCache< Light, Castor::String >::Merger = typename MyObjectCacheType::Merger

◆ MyObjectCache

using Castor3D::ObjectCache< Light, Castor::String >::MyObjectCache = ObjectCacheBase< Light, Castor::String >

◆ MyObjectCacheTraits

◆ Producer

using Castor3D::ObjectCache< Light, Castor::String >::Producer = typename MyObjectCacheType::Producer

Documentation des constructeurs et destructeur

◆ ObjectCache()

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.

Paramètres
[in]p_engineLe moteur.
[in]p_sceneLa scène.
[in]p_rootNodeLe noeud racine.
[in]p_rootCameraNodeLe noeud racine des caméras.
[in]p_rootObjectNodeLe noeud racine des objets.
[in]p_produceLe créateur d'objet.
[in]p_initialiseL'initialiseur d'objet.
[in]p_cleanLe nettoyeur d'objet.
[in]p_mergeLe fusionneur de collection d'objets.
[in]p_attachL'attacheur d'objet (à un noeud de scène).
[in]p_detachLe détacheur d'objet (d'un noeud de scène).

◆ ~ObjectCache()

C3D_API Castor3D::ObjectCache< Light, Castor::String >::~ObjectCache ( )

Destructeur.

Documentation des fonctions membres

◆ Add()

ElementPtr Castor3D::ObjectCache< Light, Castor::String >::Add ( Key const &  p_name,
SceneNodeSPtr  p_parent,
LightType  p_type 
)
inline

Crée un objet.

Paramètres
[in]p_nameLe nom d'objet.
[in]p_parentLe noeud de scène parent.
[in]p_typeLe type de source lumineuse.
Renvoie
L'objet créé.

Références C3D_API.

◆ BindLights()

C3D_API void Castor3D::ObjectCache< Light, Castor::String >::BindLights ( ) const

Active la texture de sources lumineuses.

◆ Cleanup()

C3D_API void Castor3D::ObjectCache< Light, Castor::String >::Cleanup ( )

Met tous les éléments à nettoyer.

◆ GetLights()

LightsArray Castor3D::ObjectCache< Light, Castor::String >::GetLights ( LightType  p_type) const
inline

Récupère les lumières du type donné.

Paramètres
[in]p_typeLe type de lumière.
Renvoie
Les lumières.

◆ GetLightsCount()

uint32_t Castor3D::ObjectCache< Light, Castor::String >::GetLightsCount ( LightType  p_type) const
inline

Récupère le nombre de lumières du type donné.

Paramètres
[in]p_typeLe type de lumière.
Renvoie
Le compte.

◆ Initialise()

C3D_API void Castor3D::ObjectCache< Light, Castor::String >::Initialise ( )

Initialise la texture de lumières.

◆ UnbindLights()

C3D_API void Castor3D::ObjectCache< Light, Castor::String >::UnbindLights ( ) const

Désactive la texture de sources lumineuses.

◆ UpdateLights()

C3D_API void Castor3D::ObjectCache< Light, Castor::String >::UpdateLights ( ) const

Met à jour la texture de sources lumineuses.


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