Castor3D  ..
Fonctions membres publiques | Liste de tous les membres
Référence du modèle de la classe Castor3D::GpuBuffer< T >abstract

Classe de base pour les tampons dépendants du renderer. Plus de détails...

+ Graphe d'héritage de Castor3D::GpuBuffer< T >:
+ Graphe de collaboration de Castor3D::GpuBuffer< T >:

Fonctions membres publiques

 GpuBuffer (RenderSystem &p_renderSystem)
 Constructeur. Plus de détails...
 
virtual ~GpuBuffer ()
 Destructeur. Plus de détails...
 
virtual bool Create ()=0
 Fonction de création. Plus de détails...
 
virtual void Destroy ()=0
 Fonction de destruction. Plus de détails...
 
virtual void InitialiseStorage (uint32_t p_count, BufferAccessType p_type, BufferAccessNature p_nature) const =0
 Initialise le stockage GPU du tampon. Plus de détails...
 
virtual void SetBindingPoint (uint32_t p_index) const =0
 Définit le point d'attache du tampon. Plus de détails...
 
virtual T * Lock (uint32_t p_offset, uint32_t p_count, AccessTypes const &p_flags) const =0
 Locke le tampon, càd le mappe en mémoire ram afin d'y autoriser des modifications. Plus de détails...
 
virtual void Unlock () const =0
 Un locke le tampon, càd l'unmappe de la mémoire ram afin de ne plus autoriser de modifications dessus. Plus de détails...
 
virtual void Bind () const =0
 Fonction d'activation, pour dire au GPU qu'il est activé. Plus de détails...
 
virtual void Bind (bool p_instantiated) const
 Fonction d'activation, pour dire au GPU qu'il est activé. Plus de détails...
 
virtual void Unbind () const =0
 Fonction de désactivation, pour dire au GPU qu'il est désactivé. Plus de détails...
 
virtual void Copy (GpuBuffer< T > const &p_src, uint32_t p_size) const =0
 Copie les données du tampon donné dans celui-ci. Plus de détails...
 
virtual void Upload (uint32_t p_offset, uint32_t p_count, T const *p_buffer) const =0
 Transfère des données au tampon GPU à partir de la RAM. Plus de détails...
 
virtual void Download (uint32_t p_offset, uint32_t p_count, T *p_buffer) const =0
 Transfère des données du tampon GPU vers la RAM. Plus de détails...
 

Description détaillée

template<typename T>
class Castor3D::GpuBuffer< T >

Classe de base pour les tampons dépendants du renderer.

Auteur
Sylvain DOREMUS
Version
0.6.5.0
Date
22/10/2011
Remarques

Documentation des constructeurs et destructeur

◆ GpuBuffer()

template<typename T>
Castor3D::GpuBuffer< T >::GpuBuffer ( RenderSystem p_renderSystem)
inlineexplicit

Constructeur.

◆ ~GpuBuffer()

template<typename T>
virtual Castor3D::GpuBuffer< T >::~GpuBuffer ( )
inlinevirtual

Destructeur.

Documentation des fonctions membres

◆ Bind() [1/2]

template<typename T>
virtual void Castor3D::GpuBuffer< T >::Bind ( ) const
pure virtual

Fonction d'activation, pour dire au GPU qu'il est activé.

Référencé par Castor3D::GpuBuffer< uint8_t >::~GpuBuffer().

+ Voici le graphe des appelants de cette fonction :

◆ Bind() [2/2]

template<typename T>
virtual void Castor3D::GpuBuffer< T >::Bind ( bool  p_instantiated) const
inlinevirtual

Fonction d'activation, pour dire au GPU qu'il est activé.

Remarques
Utilisé pour l'instanciation.
Paramètres
[in]p_instantiatedDit si le tampon est instantié.

◆ Copy()

template<typename T>
virtual void Castor3D::GpuBuffer< T >::Copy ( GpuBuffer< T > const &  p_src,
uint32_t  p_size 
) const
pure virtual

Copie les données du tampon donné dans celui-ci.

Paramètres
[in]p_srcLe tampon source.
[in]p_sizeLe nombre d'éléments à copier.

Référencé par Castor3D::GpuBuffer< uint8_t >::Bind().

+ Voici le graphe des appelants de cette fonction :

◆ Create()

template<typename T>
virtual bool Castor3D::GpuBuffer< T >::Create ( )
pure virtual

Fonction de création.

Renvoie
true si tout s'est bien passé.

Référencé par Castor3D::GpuBuffer< uint8_t >::~GpuBuffer().

+ Voici le graphe des appelants de cette fonction :

◆ Destroy()

template<typename T>
virtual void Castor3D::GpuBuffer< T >::Destroy ( )
pure virtual

Fonction de destruction.

Référencé par Castor3D::GpuBuffer< uint8_t >::~GpuBuffer().

+ Voici le graphe des appelants de cette fonction :

◆ Download()

template<typename T>
virtual void Castor3D::GpuBuffer< T >::Download ( uint32_t  p_offset,
uint32_t  p_count,
T *  p_buffer 
) const
pure virtual

Transfère des données du tampon GPU vers la RAM.

Remarques
Transfère les données de tampon[p_offset*sizeof( T )] à tampon[(p_offset+p_count-1) * sizeof( T )].
Paramètres
[in]p_offsetL'offset de départ.
[in]p_countNombre d'éléments.
[out]p_bufferLes données.

Référencé par Castor3D::GpuBuffer< uint8_t >::Bind().

+ Voici le graphe des appelants de cette fonction :

◆ InitialiseStorage()

template<typename T>
virtual void Castor3D::GpuBuffer< T >::InitialiseStorage ( uint32_t  p_count,
BufferAccessType  p_type,
BufferAccessNature  p_nature 
) const
pure virtual

Initialise le stockage GPU du tampon.

Paramètres
[in]p_countLe nombre d'éléments du tampon.
[in]p_typeType d'accès du tampon.
[in]p_natureNature d'accès du tampon.

Référencé par Castor3D::GpuBuffer< uint8_t >::~GpuBuffer().

+ Voici le graphe des appelants de cette fonction :

◆ Lock()

template<typename T>
virtual T* Castor3D::GpuBuffer< T >::Lock ( uint32_t  p_offset,
uint32_t  p_count,
AccessTypes const &  p_flags 
) const
pure virtual

Locke le tampon, càd le mappe en mémoire ram afin d'y autoriser des modifications.

Remarques
Mappe de tampon[p_offset*sizeof( T )] à tampon[(p_offset+p_count-1) * sizeof( T )].
Paramètres
[in]p_offsetL'offset de départ.
[in]p_countLe nombre d'éléments à mapper.
[in]p_flagsLes flags de lock.
Renvoie
L'adresse du tampon mappé.

Référencé par Castor3D::GpuBuffer< uint8_t >::~GpuBuffer().

+ Voici le graphe des appelants de cette fonction :

◆ SetBindingPoint()

template<typename T>
virtual void Castor3D::GpuBuffer< T >::SetBindingPoint ( uint32_t  p_index) const
pure virtual

Définit le point d'attache du tampon.

Paramètres
[in]p_indexLe point d'attache.

Référencé par Castor3D::GpuBuffer< uint8_t >::~GpuBuffer().

+ Voici le graphe des appelants de cette fonction :

◆ Unbind()

template<typename T>
virtual void Castor3D::GpuBuffer< T >::Unbind ( ) const
pure virtual

Fonction de désactivation, pour dire au GPU qu'il est désactivé.

Référencé par Castor3D::GpuBuffer< uint8_t >::Bind().

+ Voici le graphe des appelants de cette fonction :

◆ Unlock()

template<typename T>
virtual void Castor3D::GpuBuffer< T >::Unlock ( ) const
pure virtual

Un locke le tampon, càd l'unmappe de la mémoire ram afin de ne plus autoriser de modifications dessus.

Remarques
Toutes les modifications qui avaient été effectuées sur le tampon mappé sont rapatriées dans la mémoire GPU.

Référencé par Castor3D::GpuBuffer< uint8_t >::~GpuBuffer().

+ Voici le graphe des appelants de cette fonction :

◆ Upload()

template<typename T>
virtual void Castor3D::GpuBuffer< T >::Upload ( uint32_t  p_offset,
uint32_t  p_count,
T const *  p_buffer 
) const
pure virtual

Transfère des données au tampon GPU à partir de la RAM.

Remarques
Transfère les données de tampon[p_offset*sizeof( T )] à tampon[(p_offset+p_count-1) * sizeof( T )].
Paramètres
[in]p_offsetL'offset de départ.
[in]p_countNombre d'éléments.
[in]p_bufferLes données.

Référencé par Castor3D::GpuBuffer< uint8_t >::Bind().

+ Voici le graphe des appelants de cette fonction :

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