The Query Commands
In addition to the basic commands, such as glGetIntegerv() and glIsEnabled(), to obtain the values of simple state variables, there are other specialized commands to return more complex state variables. The prototypes for these specialized commands are listed here. Some of these routines, such as glGetError() and glGetString(), were discussed in more detail in Chapter 1.
void glGetActiveAtomicCounterBufferiv(GLuint program, GLuint bufferIndex, GLenum pname, GLint *params);
void glGetActiveAttrib ...