GLAPI/glGetBufferPointer

From OpenGL.org
Jump to: navigation, search
glGetBufferPointerv
Core in version 4.5
Core since version 1.5

glGetBufferPointerv: return the pointer to a mapped buffer object's data store

Function Definition

 void glGetBufferPointerv(GLenum target​, GLenum pname​, GLvoid ** params​);
target
Specifies the target buffer object. The symbolic constant must be GL_ARRAY_BUFFER, GL_ATOMIC_COUNTER_BUFFER, GL_COPY_READ_BUFFER, GL_COPY_WRITE_BUFFER, GL_DRAW_INDIRECT_BUFFER, GL_DISPATCH_INDIRECT_BUFFER, GL_ELEMENT_ARRAY_BUFFER, GL_PIXEL_PACK_BUFFER, GL_PIXEL_UNPACK_BUFFER, GL_QUERY_BUFFER, GL_SHADER_STORAGE_BUFFER, GL_TEXTURE_BUFFER, GL_TRANSFORM_FEEDBACK_BUFFER, or GL_UNIFORM_BUFFER.
pname
Specifies the pointer to be returned. The symbolic constant must be GL_BUFFER_MAP_POINTER.
params
Returns the pointer value specified by pname​.

Description

glGetBufferPointerv returns pointer information. pname​ is a symbolic constant indicating the pointer to be returned, which must be GL_BUFFER_MAP_POINTER, the pointer to which the buffer object's data store is mapped. If the data store is not currently mapped, NULL​ is returned. params​ is a pointer to a location in which to place the returned pointer value.

Notes

If an error is generated, no change is made to the contents of params​.

The initial value for the pointer is NULL.

The GL_ATOMIC_COUNTER_BUFER target is available only if the GL version is 4.2 or greater.

The GL_DISPATCH_INDIRECT_BUFFER and GL_SHADER_STORAGE_BUFFER targets are available only if the GL version is 4.3 or greater.

The GL_QUERY_BUFFER target is available only if the GL version is 4.4 or greater.

Errors

GL_INVALID_ENUM is generated if target​ or pname​ is not an accepted value.

GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target​.

See Also

glBindBuffer, glMapBufferRange, glMapBuffer

Copyright

Copyright © 2005 Addison-Wesley. Copyright © 2011-2013 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. http://opencontent.org/openpub/.