Castor3D
..
|
Interface de tampon de compteur atomique. Plus de détails...
Fonctions membres publiques | |
C3D_API | AtomicCounterBuffer (Castor::String const &p_name, ShaderProgram &p_program) |
Constructeur. Plus de détails... | |
virtual C3D_API | ~AtomicCounterBuffer () |
Destructeur. Plus de détails... | |
C3D_API bool | Initialise (uint32_t p_size, uint32_t p_index) |
Initialise le tampon GPU. Plus de détails... | |
C3D_API void | Cleanup () |
Nettoie toutes les variables et le tampon GPU associé. Plus de détails... | |
C3D_API uint32_t * | Lock (uint32_t p_offset, uint32_t p_count, AccessTypes const &p_flags) |
Locke le tampon, càd le mappe en mémoire ram afin d'y autoriser des modifications. Plus de détails... | |
C3D_API void | Unlock () |
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... | |
C3D_API void | Upload (uint32_t p_offset, uint32_t p_count, uint32_t const *p_buffer) |
Transfère des données au tampon GPU à partir de la RAM. Plus de détails... | |
C3D_API void | Download (uint32_t p_offset, uint32_t p_count, uint32_t *p_buffer) |
Transfère des données du tampon GPU vers la RAM. Plus de détails... | |
C3D_API void | Bind () |
Fonction d'activation, pour dire au GPU qu'il est activé. Plus de détails... | |
C3D_API void | Unbind () |
Fonction de désactivation, pour dire au GPU qu'il est désactivé. Plus de détails... | |
C3D_API void | Copy (GpuBuffer< uint32_t > const &p_src, uint32_t p_size) |
Copie les données du tampon donné dans celui-ci. Plus de détails... | |
GpuBuffer< uint32_t > const & | GetGpuBuffer () const |
Attributs protégés | |
GpuBufferUPtr | m_gpuBuffer |
Interface de tampon de compteur atomique.
C3D_API Castor3D::AtomicCounterBuffer::AtomicCounterBuffer | ( | Castor::String const & | p_name, |
ShaderProgram & | p_program | ||
) |
Constructeur.
[in] | p_name | Le nom du tampon. |
[in] | p_program | Le programme parent. |
|
virtual |
Destructeur.
C3D_API void Castor3D::AtomicCounterBuffer::Bind | ( | ) |
Fonction d'activation, pour dire au GPU qu'il est activé.
C3D_API void Castor3D::AtomicCounterBuffer::Cleanup | ( | ) |
Nettoie toutes les variables et le tampon GPU associé.
C3D_API void Castor3D::AtomicCounterBuffer::Copy | ( | GpuBuffer< uint32_t > const & | p_src, |
uint32_t | p_size | ||
) |
Copie les données du tampon donné dans celui-ci.
[in] | p_src | Le tampon source. |
[in] | p_size | Le nombre d'éléments à copier. |
true
si tout s'est bien passé. C3D_API void Castor3D::AtomicCounterBuffer::Download | ( | uint32_t | p_offset, |
uint32_t | p_count, | ||
uint32_t * | p_buffer | ||
) |
Transfère des données du tampon GPU vers la RAM.
[in] | p_offset | L'offset de départ. |
[in] | p_count | Nombre d'éléments. |
[in] | p_buffer | Les données. |
|
inline |
Références m_gpuBuffer.
C3D_API bool Castor3D::AtomicCounterBuffer::Initialise | ( | uint32_t | p_size, |
uint32_t | p_index | ||
) |
Initialise le tampon GPU.
[in] | p_size | Taille du tampon. |
[in] | p_index | Le point d'attache du tampon. |
false
if any problem occured. C3D_API uint32_t* Castor3D::AtomicCounterBuffer::Lock | ( | uint32_t | p_offset, |
uint32_t | p_count, | ||
AccessTypes const & | p_flags | ||
) |
Locke le tampon, càd le mappe en mémoire ram afin d'y autoriser des modifications.
[in] | p_offset | L'offset de départ. |
[in] | p_count | Le nombre d'éléments à mapper. |
[in] | p_flags | Les flags de lock. |
C3D_API void Castor3D::AtomicCounterBuffer::Unbind | ( | ) |
Fonction de désactivation, pour dire au GPU qu'il est désactivé.
true
si tout s'est bien passé. C3D_API void Castor3D::AtomicCounterBuffer::Unlock | ( | ) |
Un locke le tampon, càd l'unmappe de la mémoire ram afin de ne plus autoriser de modifications dessus.
C3D_API void Castor3D::AtomicCounterBuffer::Upload | ( | uint32_t | p_offset, |
uint32_t | p_count, | ||
uint32_t const * | p_buffer | ||
) |
Transfère des données au tampon GPU à partir de la RAM.
[in] | p_offset | L'offset de départ. |
[in] | p_count | Nombre d'éléments. |
[in] | p_buffer | Les données. |
|
protected |
Le tampon GPU.
Référencé par GetGpuBuffer().