'\" t .\" Title: glGetBufferSubData .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author] .\" Generator: DocBook XSL Stylesheets v1.78.1 .\" Date: 05/21/2015 .\" Manual: [FIXME: manual] .\" Source: [FIXME: source] .\" Language: English .\" .TH "GLGETBUFFERSUBDATA" "3G" "05/21/2015" "[FIXME: source]" "[FIXME: manual]" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" glGetBufferSubData, glGetNamedBufferSubData \- returns a subset of a buffer object\*(Aqs data store .SH "C SPECIFICATION" .HP \w'void\ glGetBufferSubData('u .BI "void glGetBufferSubData(GLenum\ " "target" ", GLintptr\ " "offset" ", GLsizeiptr\ " "size" ", GLvoid\ *\ " "data" ");" .HP \w'void\ glGetNamedBufferSubData('u .BI "void glGetNamedBufferSubData(GLuint\ " "buffer" ", GLintptr\ " "offset" ", GLsizei\ " "size" ", void\ *" "data" ");" .SH "PARAMETERS" .PP \fItarget\fR .RS 4 Specifies the target to which the buffer object is bound for \fBglGetBufferSubData\fR, which must be one of the buffer binding targets in the following table: .TS allbox tab(:); lB lB. T{ \fBBuffer Binding Target\fR T}:T{ \fBPurpose\fR T} .T& l l l l l l l l l l l l l l l l l l l l l l l l l l l l. T{ \fBGL_ARRAY_BUFFER\fR T}:T{ Vertex attributes T} T{ \fBGL_ATOMIC_COUNTER_BUFFER\fR T}:T{ Atomic counter storage T} T{ \fBGL_COPY_READ_BUFFER\fR T}:T{ Buffer copy source T} T{ \fBGL_COPY_WRITE_BUFFER\fR T}:T{ Buffer copy destination T} T{ \fBGL_DISPATCH_INDIRECT_BUFFER\fR T}:T{ Indirect compute dispatch commands T} T{ \fBGL_DRAW_INDIRECT_BUFFER\fR T}:T{ Indirect command arguments T} T{ \fBGL_ELEMENT_ARRAY_BUFFER\fR T}:T{ Vertex array indices T} T{ \fBGL_PIXEL_PACK_BUFFER\fR T}:T{ Pixel read target T} T{ \fBGL_PIXEL_UNPACK_BUFFER\fR T}:T{ Texture data source T} T{ \fBGL_QUERY_BUFFER\fR T}:T{ Query result buffer T} T{ \fBGL_SHADER_STORAGE_BUFFER\fR T}:T{ Read\-write storage for shaders T} T{ \fBGL_TEXTURE_BUFFER\fR T}:T{ Texture data buffer T} T{ \fBGL_TRANSFORM_FEEDBACK_BUFFER\fR T}:T{ Transform feedback buffer T} T{ \fBGL_UNIFORM_BUFFER\fR T}:T{ Uniform block storage T} .TE .sp .RE .PP \fIbuffer\fR .RS 4 Specifies the name of the buffer object for \fBglGetNamedBufferSubData\fR\&. .RE .PP \fIoffset\fR .RS 4 Specifies the offset into the buffer object\*(Aqs data store from which data will be returned, measured in bytes\&. .RE .PP \fIsize\fR .RS 4 Specifies the size in bytes of the data store region being returned\&. .RE .PP \fIdata\fR .RS 4 Specifies a pointer to the location where buffer object data is returned\&. .RE .SH "DESCRIPTION" .PP \fBglGetBufferSubData\fR and \fBglGetNamedBufferSubData\fR return some or all of the data contents of the data store of the specified buffer object\&. Data starting at byte offset \fIoffset\fR and extending for \fIsize\fR bytes is copied from the buffer object\*(Aqs data store to the memory pointed to by \fIdata\fR\&. An error is thrown if the buffer object is currently mapped, or if \fIoffset\fR and \fIsize\fR together define a range beyond the bounds of the buffer object\*(Aqs data store\&. .SH "NOTES" .PP If an error is generated, no change is made to the contents of \fIdata\fR\&. .PP The \fBGL_ATOMIC_COUNTER_BUFFER\fR target is available only if the GL version is 4\&.2 or greater\&. .PP The \fBGL_DISPATCH_INDIRECT_BUFFER\fR and \fBGL_SHADER_STORAGE_BUFFER\fR targets are available only if the GL version is 4\&.3 or greater\&. .PP The \fBGL_QUERY_BUFFER\fR target is available only if the GL version is 4\&.4 or greater\&. .SH "ERRORS" .PP \fBGL_INVALID_ENUM\fR is generated by \fBglGetBufferSubData\fR if \fItarget\fR is not one of the generic buffer binding targets\&. .PP \fBGL_INVALID_OPERATION\fR is generated by \fBglGetBufferSubData\fR if zero is bound to \fItarget\fR\&. .PP \fBGL_INVALID_OPERATION\fR is generated by \fBglGetNamedBufferSubData\fR if \fIbuffer\fR is not the name of an existing buffer object\&. .PP \fBGL_INVALID_VALUE\fR is generated if \fIoffset\fR or \fIsize\fR is negative, or if $offset + size$ is greater than the value of \fBGL_BUFFER_SIZE\fR for the buffer object\&. .PP \fBGL_INVALID_OPERATION\fR is generated if the buffer object is mapped with \fBglMapBufferRange\fR() or \fBglMapBuffer\fR(), unless it was mapped with the \fBGL_MAP_PERSISTENT_BIT\fR bit set in the \fBglMapBufferRange\fR\fIaccess\fR flags\&. .SH "VERSION SUPPORT" .TS allbox tab(:); lB cB s s s s s s s s s s s lB cB cB cB cB cB cB cB cB cB cB cB cB. T{ T}:T{ \fBOpenGL Version\fR T} T{ \fBFunction / Feature Name\fR T}:T{ \fB2\&.0\fR T}:T{ \fB2\&.1\fR T}:T{ \fB3\&.0\fR T}:T{ \fB3\&.1\fR T}:T{ \fB3\&.2\fR T}:T{ \fB3\&.3\fR T}:T{ \fB4\&.0\fR T}:T{ \fB4\&.1\fR T}:T{ \fB4\&.2\fR T}:T{ \fB4\&.3\fR T}:T{ \fB4\&.4\fR T}:T{ \fB4\&.5\fR T} .T& l c c c c c c c c c c c c l c c c c c c c c c c c c. T{ \fBglGetBufferSubData\fR T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T}:T{ ✔ T} T{ \fBglGetNamedBufferSubData\fR T}:T{ \- T}:T{ \- T}:T{ \- T}:T{ \- T}:T{ \- T}:T{ \- T}:T{ \- T}:T{ \- T}:T{ \- T}:T{ \- T}:T{ \- T}:T{ ✔ T} .TE .sp .SH "SEE ALSO" .PP \fBglBindBuffer\fR(), \fBglBufferData\fR(), \fBglBufferSubData\fR(), \fBglMapBuffer\fR(), \fBglUnmapBuffer\fR() .SH "COPYRIGHT" .PP Copyright \(co 2005 Addison\-Wesley\&. Copyright \(co 2011\-2014 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\&. \m[blue]\fBhttp://opencontent\&.org/openpub/\fR\m[]\&. .SH "COPYRIGHT" .br Copyright \(co 2005 Sams Publishing .br Copyright \(co 2011-2014 Khronos Group .br