Provided by: opengl-4-man-doc_1.0~svn33624-1_all bug

NAME

       glGetActiveAtomicCounterBufferiv - retrieve information about the set of active atomic
       counter buffers for a program

C SPECIFICATION

       void glGetActiveAtomicCounterBufferiv(Gluint program, GLuint bufferIndex, GLenum pname,
                                             GLint *params);

PARAMETERS

       program
           The name of a program object from which to retrieve information.

       bufferIndex
           Specifies index of an active atomic counter buffer.

       pname
           Specifies which parameter of the atomic counter buffer to retrieve.

       params
           Specifies the address of a variable into which to write the retrieved information.

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

       ┌─────────────────────────────────┬───────────────────────────────────────────────────────────────────────┐
       │                                 │                OpenGL Version                                         │
       ├─────────────────────────────────┼─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┤
       │Function2.02.13.03.13.23.34.04.14.24.34.44.5 │
       │/                                │     │     │     │     │     │     │     │     │     │     │     │     │
       │Feature                          │     │     │     │     │     │     │     │     │     │     │     │     │
       │Name                             │     │     │     │     │     │     │     │     │     │     │     │     │
       ├─────────────────────────────────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┤
       │glGetActiveAtomicCounterBufferiv │  -  │  -  │  -  │  -  │  -  │  -  │  -  │  -  │  ✔  │  ✔  │  ✔  │  ✔  │
       └─────────────────────────────────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┘

SEE ALSO

       glGetProgram(), glGetActiveSubroutineUniform(), glGetActiveSubroutineUniformName(),
       glGetUniformLocation()

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/.

COPYRIGHT

       Copyright © 2011-2014 Khronos Group.

[FIXME: source]                             01/03/2018                   GLGETACTIVEATOMICCOU(3G)