Table of Contents
XGetVisualInfo, XMatchVisualInfo,
XVisualIDFromVisual, XVisualInfo - obtain visual information and visual
structure 
- XVisualInfo *XGetVisualInfo(Display *display, long 
- vinfo_mask,
XVisualInfo *vinfo_template, int *nitems_return);  
- Status XMatchVisualInfo(Display
*display, int screen, int 
- depth, int class, XVisualInfo *vinfo_return);
 
- VisualID XVisualIDFromVisual(Visual *visual);  
- class
- Specifies
the class of the screen. 
- depth
- Specifies the depth of the screen. 
- display
- Specifies
the connection to the X server. 
- nitems_return
- Returns the number of matching
visual structures. 
- screen
- Specifies the screen. 
- visual
- Specifies the visual
type. 
- vinfo_mask
- Specifies the visual mask value. 
- vinfo_return
- Returns the
matched visual information. 
- vinfo_template
- Specifies the visual attributes
that are to be used in matching the visual structures. 
The XGetVisualInfo
  function returns a list of visual structures that have attributes  equal
to the attributes specified by vinfo_template. If no visual structures match
the template using the specified vinfo_mask, XGetVisualInfo   returns a
NULL. To free the data returned by this function, use XFree.
The XMatchVisualInfo
  function returns the visual information for a visual that matches the
specified depth and class for a screen. Because multiple visuals that match
the specified depth and class can exist, the exact visual chosen is undefined.
If a visual is found, XMatchVisualInfo   returns nonzero and the information
on the visual to vinfo_return. Otherwise, when a visual is not found, XMatchVisualInfo
  returns zero. 
The XVisualIDFromVisual   function returns the visual ID
for the specified visual type. 
The XVisualInfo   structure contains:
/* Visual information mask bits */ 
| #define | 
VisualNoMask   | T}    T{ | 
| 0x0 | 
| T} | 
| #define | 
VisualIDMask   | T}    T{ | 
| 0x1 | 
| T} | 
| #define | 
VisualScreenMask   | T}    T{ | 
| 0x2 | 
| T} | 
| #define | 
VisualDepthMask
  | T}    T{ | 
| 0x4 | 
| T} | 
| #define | 
VisualClassMask   | T}    T{ | 
| 0x8 | 
| T} | 
| #define | 
VisualRedMaskMask
  | T}    T{ | 
| 0x10 | 
| T} | 
| #define | 
VisualGreenMaskMask   | T}    T{ | 
| 0x20 | 
| T} | 
| #define | 
VisualBlueMaskMask
  | T}    T{ | 
| 0x40 | 
| T} | 
| #define | 
VisualColormapSizeMask   | T}    T{ | 
| 0x80 | 
| T} | 
| #define | 
VisualBitsPerRGBMask
  | T}    T{ | 
| 0x100 | 
| T} | 
| #define | 
VisualAllMask   | T}    T{ | 
| 0x1FF | 
| T} | 
  
0
0>=40 .vs 0u
0<=39 .vs 0p
/* Values */
typedef struct {
    Visual *visual;
    VisualID visualid;
    int screen;
    unsigned int depth;
    int class;
    unsigned long red_mask;
    unsigned long green_mask;
    unsigned long blue_mask;
    int colormap_size;
    int bits_per_rgb;
} XVisualInfo;
 
XFree(3X11)
 
Xlib - C Language X Interface 
Table of Contents