manpagez: man pages & more
man glXGetConfig(3)
Home | html | info | man
GLXGETCONFIG()                                                  GLXGETCONFIG()




NAME

       glXGetConfig - return information about GLX visuals



C SPECIFICATION

       int glXGetConfig( Display *dpy,
                         XVisualInfo *vis,
                         int attrib,
                         int *value )

       delim $$


PARAMETERS

       dpy     Specifies the connection to the X server.

       vis     Specifies the visual to be queried.  It is a pointer to an XVi-
               sualInfo structure, not a visual ID or a pointer to a Visual.

       attrib  Specifies the visual attribute to be returned.

       value   Returns the requested value.


DESCRIPTION

       glXGetConfig sets value to the attrib value of windows or  GLX  pixmaps
       created  with respect to vis.  glXGetConfig returns an error code if it
       fails for any reason.  Otherwise, zero is returned.

       attrib is one of the following:


       GLX_USE_GL            True if OpenGL rendering  is  supported  by  this
                             visual, False otherwise.

       GLX_BUFFER_SIZE       Number  of bits per color buffer.  For RGBA visu-
                             als, GLX_BUFFER_SIZE is the sum of  GLX_RED_SIZE,
                             GLX_GREEN_SIZE,         GLX_BLUE_SIZE,        and
                             GLX_ALPHA_SIZE.    For   color   index   visuals,
                             GLX_BUFFER_SIZE is the size of the color indexes.

       GLX_LEVEL             Frame buffer level of the visual.  Level zero  is
                             the default frame buffer.  Positive levels corre-
                             spond to frame buffers that overlay  the  default
                             buffer,  and  negative levels correspond to frame
                             buffers that underlay the default buffer.

       GLX_RGBA              True if color buffers store red, green, blue, and
                             alpha values.  False if they store color indexes.

       GLX_DOUBLEBUFFER      True if color buffers exist in  front/back  pairs
                             that can be swapped, False otherwise.

       GLX_STEREO            True  if color buffers exist in left/right pairs,
                             False otherwise.

       GLX_AUX_BUFFERS       Number of auxiliary color buffers that are avail-
                             able.   Zero  indicates  that  no auxiliary color
                             buffers exist.

       GLX_RED_SIZE          Number of  bits  of  red  stored  in  each  color
                             buffer.  Undefined if GLX_RGBA is False.

       GLX_GREEN_SIZE        Number  of  bits  of  green  stored in each color
                             buffer.  Undefined if GLX_RGBA is False.

       GLX_BLUE_SIZE         Number of bits  of  blue  stored  in  each  color
                             buffer.  Undefined if GLX_RGBA is False.

       GLX_ALPHA_SIZE        Number  of  bits  of  alpha  stored in each color
                             buffer.  Undefined if GLX_RGBA is False.

       GLX_DEPTH_SIZE        Number of bits in the depth buffer.

       GLX_STENCIL_SIZE      Number of bits in the stencil buffer.

       GLX_ACCUM_RED_SIZE    Number of bits of red stored in the  accumulation
                             buffer.

       GLX_ACCUM_GREEN_SIZE  Number  of  bits of green stored in the accumula-
                             tion buffer.

       GLX_ACCUM_BLUE_SIZE   Number of bits of blue stored in the accumulation
                             buffer.

       GLX_ACCUM_ALPHA_SIZE  Number  of  bits of alpha stored in the accumula-
                             tion buffer.

       The X protocol allows a single visual ID to be instantiated  with  dif-
       ferent  numbers of bits per pixel.  Windows or GLX pixmaps that will be
       rendered with OpenGL, however, must be instantiated with a color buffer
       depth of GLX_BUFFER_SIZE.

       Although  a  GLX implementation can export many visuals that support GL
       rendering, it must support at least one RGBA visual. This  visual  must
       have  at  least one color buffer, a stencil buffer of at least 1 bit, a
       depth buffer of at least 12 bits, and an  accumulation  buffer.   Alpha
       bitplanes  are optional in this visual.  However, its color buffer size
       must be as great as that of the deepest TrueColor, DirectColor, Pseudo-
       Color,  or  StaticColor  visual  supported  on  level zero, and it must
       itself be made available on level zero.

       In addition, if the X  server  exports  a  PseudoColor  or  StaticColor
       visual on framebuffer level 0, a color index visual is also required on
       that level.  It must have at least one color buffer, a  stencil  buffer
       of at least 1 bit, and a depth buffer of at least 12 bits.  This visual
       must have as many color bitplanes as the deepest PseudoColor or Static-
       Color visual supported on level 0.

       Applications  are  best  written to select the visual that most closely
       meets their requirements.  Creating windows or GLX pixmaps with  unnec-
       essary  buffers  can result in reduced rendering performance as well as
       poor resource allocation.


NOTES

       XVisualInfo is defined in Xutil.h.  It is  a  structure  that  includes
       visual, visualID, screen, and depth elements.


ERRORS

       GLX_NO_EXTENSION is returned if dpy does not support the GLX extension.

       GLX_BAD_SCREEN is returned if the screen of vis does not correspond  to
       a screen.

       GLX_BAD_ATTRIBUTE is returned if attrib is not a valid GLX attribute.

       GLX_BAD_VISUAL  is returned if vis doesn't support GLX and an attribute
       other than GLX_USE_GL is requested.


SEE ALSO

       glXChooseVisual(3), glXCreateContext(3)




                                                                GLXGETCONFIG()

Mac OS X 10.4 X11 - Generated Sat Apr 30 05:14:14 CDT 2005
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.