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

  
 
  

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  at-
		 tribute/value pairs.  The last attribute must be None.

DESCRIPTION
     glXChooseVisual returns a pointer to an  XVisualInfo  structure  describing
     the  visual  that	best meets a minimum specification.  The boolean GLX at-
     tributes of the visual that is returned will match  the  specified  values,
     and  the  integer	GLX attributes will meet or exceed the specified minimum
     values.  If all other attributes are equivalent, then TrueColor and Pseudo-
     Color visuals have priority over DirectColor and StaticColor  visuals,  re-
     spectively.  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 de-
     faults to True.  All integer GLX attributes default to zero.  Default spec-
     ifications are superseded by attributes included  in  attribList.	 Boolean
     attributes  included  in attribList are understood to be True.  Integer at-
     tributes and enumerated type attributes are  followed  immediately  by  the
     corresponding  desired  or minimum value.	The list must be terminated with
     None.

     The interpretations of the various GLX visual attributes are as follows:

     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 indi-
			   cates the  desired  color  index  buffer  size.   The
			   smallest  index buffer of at least the specified size
			   is preferred.  Ignored if GLX_RGBA is asserted.

     GLX_LEVEL		   Must be followed by an integer buffer-level	specifi-
			   cation.    This  specification  is  honored	exactly.
			   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 cor-
			   respond to underlay frame buffers.

     GLX_RGBA		   If present, only TrueColor  and  DirectColor  visuals
			   are considered.  Otherwise, only PseudoColor and Sta-
			   ticColor visuals are considered.

     GLX_DOUBLEBUFFER	   If  present, only double-buffered visuals are consid-
			   ered.  Otherwise, only  single-buffered  visuals  are
			   considered.

     GLX_STEREO 	   If present, only stereo visuals are considered.  Oth-
			   erwise, only monoscopic visuals are considered.

     GLX_AUX_BUFFERS	   Must  be followed by a nonnegative integer that indi-
			   cates the desired number of auxiliary buffers.  Visu-
			   als with the smallest  number  of  auxiliary  buffers
			   that  meets	or exceeds the specified number are pre-
			   ferred.

     GLX_RED_SIZE	   Must be followed by a nonnegative minimum size speci-
			   fication.  If this value is zero, the smallest avail-
			   able red buffer is preferred.  Otherwise, the largest
			   available red buffer of at least the minimum size  is
			   preferred.

     GLX_GREEN_SIZE	   Must be followed by a nonnegative minimum size speci-
			   fication.  If this value is zero, the smallest avail-
			   able  green	buffer	is  preferred.	 Otherwise,  the
			   largest available green buffer of at least the  mini-
			   mum size is preferred.

     GLX_BLUE_SIZE	   Must be followed by a nonnegative minimum size speci-
			   fication.  If this value is zero, the smallest avail-
			   able   blue	buffer	is  preferred.	 Otherwise,  the
			   largest available blue buffer of at least the minimum
			   size is preferred.

     GLX_ALPHA_SIZE	   Must be followed by a nonnegative minimum size speci-
			   fication.  If this value is zero, the smallest avail-
			   able  alpha	buffer	is  preferred.	 Otherwise,  the
			   largest  available alpha buffer of at least the mini-
			   mum size is preferred.

     GLX_DEPTH_SIZE	   Must be followed by a nonnegative minimum size speci-
			   fication.  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 indi-
			   cates the desired number of stencil	bitplanes.   The
			   smallest  stencil  buffer  of  at least the specified
			   size is preferred.  If the desired value is zero, vi-
			   suals with no stencil buffer are preferred.

     GLX_ACCUM_RED_SIZE    Must be followed by a nonnegative minimum size speci-
			   fication.  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 speci-
			   fication.  If this value is	zero,  visuals	with  no
			   green  accumulation buffer are preferred.  Otherwise,
			   the largest possible green accumulation buffer of  at
			   least the minimum size is preferred.

     GLX_ACCUM_BLUE_SIZE   Must be followed by a nonnegative minimum size speci-
			   fication.   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 speci-
			   fication.  If this value is zero, visuals with no al-
			   pha accumulation buffer  are  preferred.   Otherwise,
			   the	largest possible alpha accumulation buffer of at
			   least the minimum size is preferred.

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 display.  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  XGetVi-
     sualInfo  and glXGetConfig.  Calls to these two routines can be used to im-
     plement selection algorithms other than the generic one implemented by glX-
     ChooseVisual.

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

     There is no direct filter for picking only visuals that support GLXPixmaps.
     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  attrib-
     List.

SEE ALSO
     glXCreateContext, glXGetConfig

							       GLXCHOOSEVISUAL()

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

home | help