GLGETBUFFERPARAMETER(3G)

    .SH "NAME" glGetBufferParameter - return parameters of a buffer object
    .SH "C SPECIFICATION"

            .HP u void glGetBufferParameteriv(GLenum target, GLenum value, GLint * data);

            .HP u void glGetBufferParameteri64v(GLenum target, GLenum value, GLint64 * data);

    .SH "PARAMETERS"

        .PP target

                    Specifies the target to which the buffer object is bound for glGetBufferParameteriv and glGetBufferParameteri64v. Must be one of the buffer binding targets in the following table:
                    <xi:include></xi:include>

            .RE
            .PP value

                        Specifies the symbolic name of a buffer object parameter. Accepted values are GL_BUFFER_ACCESS_FLAGS, GL_BUFFER_MAPPED, GL_BUFFER_MAP_LENGTH, GL_BUFFER_MAP_OFFSET, GL_BUFFER_SIZE, or GL_BUFFER_USAGE.

                .RE
                .PP data

                            Returns the requested parameter.

                    .RE

                .SH "DESCRIPTION"
                    .PP glGetBufferParameteriv and glGetBufferParameteri64v return in data a selected parameter of the buffer object specified by target.
                    .PP value names a specific buffer object parameter, as follows:

                        .PP GL_BUFFER_ACCESS_FLAGS

                                    params returns the access policy set while mapping the buffer object.

                            .RE
                            .PP GL_BUFFER_MAPPED

                                        params returns a flag indicating whether the buffer object is currently mapped. The initial value is GL_FALSE.

                                .RE
                                .PP GL_BUFFER_MAP_LENGTH

                                            params returns the length of the buffer object mapping, measured in bytes. The initial value is 0.

                                    .RE
                                    .PP GL_BUFFER_MAP_OFFSET

                                                params returns the offset (start) of the buffer object mapping, measured in bytes. The initial value is 0.

                                        .RE
                                        .PP GL_BUFFER_SIZE

                                                    params returns the size of the buffer object, measured in bytes. The initial value is 0.

                                            .RE
                                            .PP GL_BUFFER_USAGE

                                                        params returns the buffer object's usage pattern.

                                                .RE

                                        .SH "NOTES"
                                            .PP If an error is generated, no change is made to the contents of data.
                                            .PP If glGetBufferParameteriv is used to query a value of GL_BUFFER_SIZE, values greater than or equal to 2 31 will be clamped to 2 31 - 1.
                                            .PP The GL_COPY_READ_BUFFER, GL_COPY_WRITE_BUFFER, GL_PIXEL_PACK_BUFFER,GL_PIXEL_UNPACK_READ_BUFFER, GL_TRANSFORM_FEEDBACK_BUFFER and GL_UNIFORM_BUFFER targets are available only if the GL ES version is 3.0 or greater.
                                            .PP The GL_ATOMIC_COUNTER_BUFFER, GL_DISPATCH_INDIRECT_BUFFER, GL_DRAW_INDIRECT_BUFFER and GL_SHADER_STORAGE_BUFFER targets are available only if the GL ES version is 3.1 or greater.
                                            .PP The GL_TEXTURE_BUFFER target is available only if the GL ES version is 3.2 or greater.

                                        .SH "ERRORS"
                                            .PP GL_INVALID_ENUM is generated if target or value is not an accepted value.
                                            .PP GL_INVALID_OPERATION is generated if the reserved buffer object name 0 is bound to target.
                                            .PP GL_INVALID_ENUM is generated if glGetBufferParameteri64v is used to query a value of GL_BUFFER_ACCESS_FLAGS, GL_BUFFER_MAPPED or GL_BUFFER_USAGE.
                                            .PP GL_INVALID_ENUM is generated if glGetBufferParameteriv is used to query a value of GL_BUFFER_MAP_LENGTH or GL_BUFFER_MAP_OFFSET.

                                        .SH "API VERSION SUPPORT"

                                            .TS allbox tab(:); l l l l l l l l l l. T{ glGetBufferParameteriv T}:T{ T}:T{ T}:T{ T}:T{ T} T{ glGetBufferParameteri64v T}:T{ T}:T{ T}:T{ T}:T{ T}

                                        .SH "SEE ALSO"
                                            .PP glBindBuffer(), glBufferData(), glMapBufferRange(), glUnmapBuffer()

                                        .SH "COPYRIGHT"
                                            .PP Copyright © 2005 Addison-Wesley. Copyright © 2010-2015 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/.

COPYRIGHT
Copyright © 2005 Sams Publishing
Copyright © 2010-2015 Khronos Group