Signature
glGetActiveAtomicCounterBufferiv(
GLuint (
program
)
,
GLuint (
bufferIndex
)
,
GLenum (
pname
)
,
GLint *(
params
)
)-> void
Parameters
Description
glGetActiveAtomicCounterBufferiv
retrieves information about the set of active
atomic counter buffers for a program object.
program
is the name of a program
object for which the command
glLinkProgram
has been issued in the past. It is not necessary for
program
to have been linked
successfully. The link may have failed because the number of active atomic counters exceeded the limits.
bufferIndex
specifies the index of an active atomic counter buffer and must be in
the range zero to the value of
GL_ACTIVE_ATOMIC_COUNTER_BUFFERS
minus one. The value
of
GL_ACTIVE_ATOMIC_COUNTER_BUFFERS
for
program
indicates the
number of active atomic counter buffer and can be queried with
glGetProgram
.
If no error occurs, the parameter(s) specified by
pname
are returned in
params
.
If an error is generated, the contents of
params
are not modified.
If
pname
is
GL_ATOMIC_COUNTER_BUFFER_BINDING
, then the index of the
counter buffer binding point associated with the active atomic counter buffer
bufferIndex
for
program
is returned.
If
pname
is
GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE
, then the implementation-dependent
minimum total buffer object size, in baseic machine units, required to hold all active atomic counters in the
atomic counter binding point identified by
bufferIndex
is returned.
If
pname
is
GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS
, then the number of active
atomic counters for the atomic counter buffer identified by
bufferIndex
is returned.
If
pname
is
GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES
,
then a list of the active atomic counter indices for the atomic counter buffer identified by
bufferIndex
is returned. The number of elements that will be written into
params
is the value of
GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS
for
bufferIndex
.
If
pname
is
GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER
,
GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER
,
GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER
,
GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER
,
GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER
,
GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER
then a boolean value indicating
whether the atomic counter buffer identified by
bufferIndex
is referenced by the vertex,
tessellation control, tessellation evaluation, geometry, fragment or compute processing stages of
program
,
respectively, is returned.
Notes
glGetActiveAtomicCounterBufferiv
is available only if the
GL version is 4.2 or higher.
GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER
is available
only of the GL version is 4.3 or higher.
Errors
GL_INVALID_VALUE
is generated if
program
is not the name of a program
object for which
glLinkProgram
has been called in the past.
GL_INVALID_VALUE
is generated if
bufferIndex
is greater than or equal to
the value of
GL_ACTIVE_ATOMIC_COUNTER_BUFFERS
for
program
.
GL_INVALID_ENUM
is generated if
pname
is not one of the accepted tokens.
Version Support
glGetActiveAtomicCounterBufferiv |
See Also
Copyright
Copyright
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.
http://opencontent.org/openpub/
.