eglGetConfigAttrib - EGL Reference Pages

## Name

eglGetConfigAttrib — return information about an EGL frame buffer configuration

## C Specification

`EGLBoolean eglGetConfigAttrib(` | EGLDisplay display,
| EGLConfig config,
| EGLint attribute,
| EGLint * value`)`;

## Parameters

`display`

  Specifies the EGL display connection.

`config`

  Specifies the EGL frame buffer configuration to be queried.

`attribute`

  Specifies the EGL rendering context attribute to be returned.

`value`

  Returns the requested value.

## Description

`eglGetConfigAttrib` returns in `value` the value of `attribute` for `config` (config attributes are described in more detail in the eglChooseConfig reference page). `attribute` can be one of the following:

`EGL_ALPHA_SIZE`

  Returns the number of bits of alpha stored in the color buffer.

`EGL_ALPHA_MASK_SIZE`

  Returns the number of bits in the alpha mask buffer.

`EGL_BIND_TO_TEXTURE_RGB`

  Returns `EGL_TRUE` if color buffers can be bound to an RGB texture, `EGL_FALSE` otherwise.

`EGL_BIND_TO_TEXTURE_RGBA`

  Returns `EGL_TRUE` if color buffers can be bound to an RGBA texture, `EGL_FALSE` otherwise.

`EGL_BLUE_SIZE`

  Returns the number of bits of blue stored in the color buffer.

`EGL_BUFFER_SIZE`

  Returns the depth of the color buffer. It is the sum of `EGL_RED_SIZE`, `EGL_GREEN_SIZE`, `EGL_BLUE_SIZE`, and `EGL_ALPHA_SIZE`.

`EGL_COLOR_BUFFER_TYPE`

  Returns the color buffer type. Possible types are `EGL_RGB_BUFFER` and `EGL_LUMINANCE_BUFFER`.

`EGL_CONFIG_CAVEAT`

  Returns the caveats for the frame buffer configuration. Possible caveat values are `EGL_NONE`, `EGL_SLOW_CONFIG`, and `EGL_NON_CONFORMANT`.

`EGL_CONFIG_ID`

  Returns the ID of the frame buffer configuration.

`EGL_CONFORMANT`

  Returns a bitmask indicating which client API contexts created with respect to this config are conformant.

`EGL_DEPTH_SIZE`

  Returns the number of bits in the depth buffer.

`EGL_GREEN_SIZE`

  Returns the number of bits of green stored in the color buffer.

`EGL_LEVEL`

  Returns the frame buffer level. Level zero is the default frame buffer. Positive levels correspond to frame buffers that overlay the default buffer and negative levels correspond to frame buffers that underlay the default buffer.

`EGL_LUMINANCE_SIZE`

  Returns the number of bits of luminance stored in the luminance buffer.

`EGL_MAX_PBUFFER_WIDTH`

  Returns the maximum width of a pixel buffer surface in pixels.

`EGL_MAX_PBUFFER_HEIGHT`

  Returns the maximum height of a pixel buffer surface in pixels.

`EGL_MAX_PBUFFER_PIXELS`

  Returns the maximum size of a pixel buffer surface in pixels.

`EGL_MAX_SWAP_INTERVAL`

  Returns the maximum value that can be passed to eglSwapInterval.

`EGL_MIN_SWAP_INTERVAL`

  Returns the minimum value that can be passed to eglSwapInterval.

`EGL_NATIVE_RENDERABLE`

  Returns `EGL_TRUE` if native rendering APIs can render into the surface, `EGL_FALSE` otherwise.

`EGL_NATIVE_VISUAL_ID`

  Returns the ID of the associated native visual.

`EGL_NATIVE_VISUAL_TYPE`

  Returns the type of the associated native visual.

`EGL_RED_SIZE`

  Returns the number of bits of red stored in the color buffer.

`EGL_RENDERABLE_TYPE`

  Returns a bitmask indicating the types of supported client API contexts.

`EGL_SAMPLE_BUFFERS`

  Returns the number of multisample buffers.

`EGL_SAMPLES`

  Returns the number of samples per pixel.

`EGL_STENCIL_SIZE`

  Returns the number of bits in the stencil buffer.

`EGL_SURFACE_TYPE`

  Returns a bitmask indicating the types of supported EGL surfaces.

`EGL_TRANSPARENT_TYPE`

  Returns the type of supported transparency. Possible transparency values are: `EGL_NONE`, and `EGL_TRANSPARENT_RGB`.

`EGL_TRANSPARENT_RED_VALUE`

  Returns the transparent red value.

`EGL_TRANSPARENT_GREEN_VALUE`

  Returns the transparent green value.

`EGL_TRANSPARENT_BLUE_VALUE`

  Returns the transparent blue value.

## Notes

`EGL_CONFORMANT` is supported only if the EGL version is 1.3 or greater.

`EGL_ALPHA_MASK_SIZE`, `EGL_COLOR_BUFFER_TYPE`, `EGL_LUMINANCE_SIZE`, and `EGL_RENDERABLE_TYPE` are supported only if the EGL version is 1.2 or greater.

While `EGL_MATCH_NATIVE_PIXMAP` can be specified in the attribute list passed to eglChooseConfig, it is not an attribute of the resulting config and cannot be queried using `eglGetConfigAttrib`.

## Errors

`EGL_FALSE` is returned on failure, `EGL_TRUE` otherwise. `value` is not modified when `EGL_FALSE` is returned.

`EGL_BAD_DISPLAY` is generated if `display` is not an EGL display connection.

`EGL_NOT_INITIALIZED` is generated if `display` has not been initialized.

`EGL_BAD_CONFIG` is generated if `config` is not an EGL frame buffer configuration.

`EGL_BAD_ATTRIBUTE` is generated if `attribute` is not a valid frame buffer configuration attribute.

## See Also

eglChooseConfig, eglGetConfigs

Copyright © 2003-2014 The Khronos Group Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and/or associated documentation files (the "Materials"), to deal in the Materials without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Materials, and to permit persons to whom the Materials are furnished to do so, subject to the condition that this copyright notice and permission notice shall be included in all copies or substantial portions of the Materials.