Content-type: text/html
XGetVisualInfo, XMatchVisualInfo, XVisualIDFromVisual, XVisualInfo - obtain visual information and visual structure
XVisualInfo
*XGetVisualInfo(display, vinfo_mask, vinfo_template, nitems_return)
Display *display;
long vinfo_mask;
XVisualInfo *vinfo_template;
int *nitems_return;
Status
XMatchVisualInfo(display, screen, depth, class, vinfo_return)
Display *display;
int screen;
int depth;
int class;
XVisualInfo *vinfo_return;
VisualID
XVisualIDFromVisual(visual)
Visual *visual;
Specifies the class of the screen.
Specifies the depth of the screen.
Specifies the connection to the X server.
Returns the number of matching visual structures.
Specifies the screen.
Specifies the visual type.
Specifies the visual mask value.
Returns the matched visual information.
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 | 0x0 |
#define | VisualIDMask | 0x1 |
#define | VisualScreenMask | 0x2 |
#define | VisualDepthMask | 0x4 |
#define | VisualClassMask | 0x8 |
#define | VisualRedMaskMask | 0x10 |
#define | VisualGreenMaskMask | 0x20 |
#define | VisualBlueMaskMask | 0x40 |
#define | VisualColormapSizeMask | 0x80 |
#define | VisualBitsPerRGBMask | 0x100 |
#define | VisualAllMask | 0x1FF |
/* 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