utilisation interne. representation d'un buffer openGL. More...
#include <TPBuffer.h>
Public Member Functions | |
GLBuffer (const GLenum target, const unsigned int count, const unsigned int length, const void *data, const GLenum usage=GL_STATIC_DRAW) | |
constructeur d'un buffer, un tableau de vecteurs de 'count' elements. | |
int | clear (const GLenum target) |
efface le contenu du buffer. | |
int | update (const GLenum target, const unsigned long int offset, const unsigned long int length, const void *data) |
modifie le contenu d'une partie du buffer. | |
void * | map (const GLenum target, const unsigned long int offset, const unsigned int length, const GLbitfield access) |
mappe le contenu du buffer en memoire host. | |
int | unmap (const GLenum target) |
int | flush (const GLenum target, const unsigned long int offset, const unsigned int length) |
virtual | ~GLBuffer () |
destructeur. | |
int | createGLResource () |
creation de la ressource openGL. | |
int | releaseGLResource () |
destruction de la ressource openGL. | |
unsigned int | count () const |
renvoie le nombre de vecteurs alloues (valeur passee au contructeur, cf GLBuffer()). | |
unsigned long int | length () const |
renvoie le nombre d'octets alloues. | |
GLuint | name () const |
renvoie l'identifiant de l'objet openGL. | |
Protected Attributes | |
GLenum | m_usage |
unsigned int | m_length |
unsigned int | m_count |
GLuint | m_name |
utilisation interne. representation d'un buffer openGL.
gk::GLBuffer::GLBuffer | ( | const GLenum | target, |
const unsigned int | count, | ||
const unsigned int | length, | ||
const void * | data, | ||
const GLenum | usage = GL_STATIC_DRAW |
||
) | [inline] |
constructeur d'un buffer, un tableau de vecteurs de 'count' elements.
count | nombre de vecteurs, |
length | longueur totale du buffer en OCTETS, |
data | pointeur sur les donnees a transferer dans le buffer, ou NULL pour initialiser un buffer vide, |
usage | decrit le type d'utilisation du buffer, cf glBufferData(). |
int gk::GLBuffer::clear | ( | const GLenum | target | ) | [inline] |
efface le contenu du buffer.
int gk::GLBuffer::update | ( | const GLenum | target, |
const unsigned long int | offset, | ||
const unsigned long int | length, | ||
const void * | data | ||
) | [inline] |
modifie le contenu d'une partie du buffer.
offset | position du premier octet a modifier, |
length | nombre d'octets a modifier. |
void* gk::GLBuffer::map | ( | const GLenum | target, |
const unsigned long int | offset, | ||
const unsigned int | length, | ||
const GLbitfield | access | ||
) | [inline] |
mappe le contenu du buffer en memoire host.
cf. glMapBufferRange() pour les flags 'access'.