Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
GLXCHOOSEVISUAL()					     GLXCHOOSEVISUAL()

NAME
       glXChooseVisual - return	a visual that matches specified	attributes

C SPECIFICATION
       XVisualInfo* glXChooseVisual( Display *dpy,
				     int screen,
				     int *attribList )

       delim $$

PARAMETERS
       dpy	   Specifies the connection to the X server.

       screen	   Specifies the screen	number.

       attribList  Specifies  a	 list of boolean attributes and	integer	attri-
		   bute/value pairs.  The last attribute must be None.

DESCRIPTION
       glXChooseVisual returns a pointer to an XVisualInfo structure  describ-
       ing  the	 visual	 that best meets a minimum specification.  The boolean
       GLX attributes of the visual that is returned will match	the  specified
       values,	and  the integer GLX attributes	will meet or exceed the	speci-
       fied minimum values.  If	all  other  attributes	are  equivalent,  then
       TrueColor  and  PseudoColor  visuals have priority over DirectColor and
       StaticColor visuals, respectively.  If  no  conforming  visual  exists,
       NULL  is	 returned.   To	 free  the data	returned by this function, use
       XFree.

       All boolean GLX attributes default to False  except  GLX_USE_GL,	 which
       defaults	to True.  All integer GLX attributes default to	zero.  Default
       specifications are superseded by	 attributes  included  in  attribList.
       Boolean	attributes  included  in attribList are	understood to be True.
       Integer attributes and enumerated type attributes are followed  immedi-
       ately  by the corresponding desired or minimum value.  The list must be
       terminated with None.

       The interpretations of the various GLX visual attributes	 are  as  fol-
       lows:

       GLX_USE_GL	     Ignored.	Only visuals that can be rendered with
			     GLX are considered.

       GLX_BUFFER_SIZE	     Must be followed by a  nonnegative	 integer  that
			     indicates	the  desired  color index buffer size.
			     The smallest index	buffer of at least the	speci-
			     fied  size	 is preferred.	Ignored	if GLX_RGBA is
			     asserted.

       GLX_LEVEL	     Must be followed by an integer buffer-level spec-
			     ification.	  This	specification  is  honored ex-
			     actly.  Buffer level zero corresponds to the main
			     frame buffer of the display.  Buffer level	one is
			     the first overlay frame  buffer,  level  two  the
			     second overlay frame buffer, and so on.  Negative
			     buffer levels correspond to underlay  frame  buf-
			     fers.

       GLX_RGBA		     If	 present, only TrueColor and DirectColor visu-
			     als are considered.  Otherwise, only  PseudoColor
			     and StaticColor visuals are considered.

       GLX_DOUBLEBUFFER	     If	present, only double-buffered visuals are con-
			     sidered.	Otherwise, only	single-buffered	 visu-
			     als are considered.

       GLX_STEREO	     If	 present,  only	stereo visuals are considered.
			     Otherwise,	only monoscopic	 visuals  are  consid-
			     ered.

       GLX_AUX_BUFFERS	     Must  be  followed	 by a nonnegative integer that
			     indicates the desired number  of  auxiliary  buf-
			     fers.   Visuals with the  smallest	number of aux-
			     iliary buffers that meets or exceeds  the	speci-
			     fied number are preferred.

       GLX_RED_SIZE	     Must  be  followed	 by a nonnegative minimum size
			     specification.  If	this value is zero, the	small-
			     est  available  red  buffer is preferred.	Other-
			     wise, the largest	available  red	buffer	of  at
			     least the minimum size is preferred.

       GLX_GREEN_SIZE	     Must  be  followed	 by a nonnegative minimum size
			     specification.  If	this value is zero, the	small-
			     est  available green buffer is preferred.	Other-
			     wise, the largest available green	buffer	of  at
			     least the minimum size is preferred.

       GLX_BLUE_SIZE	     Must  be  followed	 by a nonnegative minimum size
			     specification.  If	this value is zero, the	small-
			     est  available  blue buffer is preferred.	Other-
			     wise, the largest available  blue	buffer	of  at
			     least the minimum size is preferred.

       GLX_ALPHA_SIZE	     Must  be  followed	 by a nonnegative minimum size
			     specification.  If	this value is zero, the	small-
			     est  available alpha buffer is preferred.	Other-
			     wise, the largest available alpha	buffer	of  at
			     least the minimum size is preferred.

       GLX_DEPTH_SIZE	     Must  be  followed	 by a nonnegative minimum size
			     specification.  If	this value  is	zero,  visuals
			     with  no  depth buffer are	preferred.  Otherwise,
			     the largest available depth buffer	 of  at	 least
			     the minimum size is preferred.

       GLX_STENCIL_SIZE	     Must  be  followed	 by a nonnegative integer that
			     indicates the  desired  number  of	 stencil  bit-
			     planes.   The smallest stencil buffer of at least
			     the specified size	is preferred.  If the  desired
			     value is zero, visuals with no stencil buffer are
			     preferred.

       GLX_ACCUM_RED_SIZE    Must be followed by a  nonnegative	 minimum  size
			     specification.   If  this	value is zero, visuals
			     with no red accumulation  buffer  are  preferred.
			     Otherwise,	 the largest possible red accumulation
			     buffer of at least	the minimum size is preferred.

       GLX_ACCUM_GREEN_SIZE  Must be followed by a  nonnegative	 minimum  size
			     specification.   If  this	value is zero, visuals
			     with no green accumulation	buffer are  preferred.
			     Otherwise,	 the  largest possible green accumula-
			     tion buffer of at least the minimum size is  pre-
			     ferred.

       GLX_ACCUM_BLUE_SIZE   Must  be  followed	 by a nonnegative minimum size
			     specification.  If	this value  is	zero,  visuals
			     with  no  blue accumulation buffer	are preferred.
			     Otherwise,	the largest possible blue accumulation
			     buffer of at least	the minimum size is preferred.

       GLX_ACCUM_ALPHA_SIZE  Must  be  followed	 by a nonnegative minimum size
			     specification.  If	this value  is	zero,  visuals
			     with  no alpha accumulation buffer	are preferred.
			     Otherwise,	the largest possible  alpha  accumula-
			     tion  buffer of at	least the minimum size is pre-
			     ferred.

EXAMPLES
       attribList =
		   {GLX_RGBA,	 GLX_RED_SIZE,	  4,	GLX_GREEN_SIZE,	    4,
		   GLX_BLUE_SIZE, 4, None};

       Specifies  a single-buffered RGB	visual in the normal frame buffer, not
       an overlay or underlay buffer.  The returned visual supports  at	 least
       four  bits each of red, green, and blue,	and possibly no	bits of	alpha.
       It does not support color index mode, double-buffering, or stereo  dis-
       play.   It  may	or may not have	one or more auxiliary color buffers, a
       depth buffer, a stencil buffer, or an accumulation buffer.

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

       glXChooseVisual	is  implemented	 as  a	client-side utility using only
       XGetVisualInfo and glXGetConfig.	 Calls to these	two  routines  can  be
       used  to	 implement selection algorithms	other than the generic one im-
       plemented by glXChooseVisual.

       GLX implementers	are strongly discouraged,  but	not  proscribed,  from
       changing	 the  selection	algorithm used by glXChooseVisual.  Therefore,
       selections may change from release to release of	 the  client-side  li-
       brary.

       There  is  no  direct filter for	picking	only visuals that support GLX-
       Pixmaps.	 GLXPixmaps are	supported for visuals whose GLX_BUFFER_SIZE is
       one of the pixmap depths	supported by the X server.

ERRORS
       NULL is returned	if an undefined	GLX attribute is encountered in	attri-
       bList.

SEE ALSO
       glXCreateContext, glXGetConfig

							     GLXCHOOSEVISUAL()

NAME | C SPECIFICATION | PARAMETERS | DESCRIPTION | EXAMPLES | NOTES | ERRORS | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=glXChooseVisual&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help