glGetInternalFormativ(3) retrieve information about implementation-dependent support for internal formats

C SPECIFICATION

void glGetInternalFormativ(GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint *params);

PARAMETERS

target

Indicates the usage of the internal format. target must be GL_RENDERBUFFER, GL_TEXTURE_2D_MULTISAMPLE or GL_TEXTURE_2D_MULTISAMPLE_ARRAY.

internalformat

Specifies the internal format about which to retrieve information.

pname

Specifies the type of information to query.

bufSize

Specifies the maximum number of basic machine units that may be written to params by the function.

params

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

DESCRIPTION

glGetInternalFormativ retrieves information about implementation-dependent support for internal formats. target indicates the target with which the internal format will be used and must be one of GL_RENDERBUFFER, GL_TEXTURE_2D_MULTISAMPLE, or GL_TEXTURE_2D_MULTISAMPLE_ARRAY, corresponding to usage as a renderbuffer, two-dimensional multisample texture or two-dimensional multisample array texture, respectively.

internalformat specifies the internal format about which to retrieve information and must be a color-renderable, depth-renderable or stencil-renderable format.

The information retrieved will be written to memory addressed by the pointer specified in params. No more than bufSize basic machine units will be written to this memory.

If pname is GL_NUM_SAMPLE_COUNTS, the number of sample counts that would be returned by querying GL_SAMPLES will be returned in params.

If pname is GL_SAMPLES, the sample counts supported for internalformat and target are written into params in descending numeric order. Only positive values are returned. Querying GL_SAMPLES with bufSize of one will return just the maximum supported number of samples for this format. The maximum value in GL_SAMPLES is guaranteed to be at least the lowest of the following:

• The value of GL_MAX_INTEGER_SAMPLES if internalformat is a signed or unsigned integer format..RE

• The value of GL_MAX_DEPTH_TEXTURE_SAMPLES if internalformat is a depth- or stencil-renderable format and
                target is GL_TEXTURE_2D_MULTISAMPLEGL_TEXTURE_2D_MULTISAMPLE_ARRAY..RE

• The value of GL_MAX_COLOR_TEXTURE_SAMPLES if internalformat is a color-renderable format and
                target is GL_TEXTURE_2D_MULTISAMPLE or GL_TEXTURE_2D_MULTISAMPLE_ARRAY..RE

• The value of GL_MAX_SAMPLES..RE

NOTES

glGetInternalFormativ is available only if the GL version is 4.2 or higher.

ERRORS

GL_INVALID_VALUE is generated if bufSize is negative.

GL_INVALID_ENUM is generated if pname is not GL_SAMPLES or GL_NUM_SAMPLE_COUNTS.

GL_INVALID_ENUM is generated if internalformat is not color-, depth-, or stencil-renderable.

GL_INVALID_ENUM is generated if target is not one of GL_TEXTURE_2D_MULTISAMPLE, GL_TEXTURE_2D_MULTISAMPLE_ARRAY or GL_RENDERBUFFER.

COPYRIGHT

Copyright © 2011 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]http://opencontent.org/openpub/m[].