Man page - xevigetvisualinfo(3)

Packages contains this manual

Manual

XEVI

NAME
SYNOPSIS
DESCRIPTION
ERRORS

NAME

XeviQueryExtension, XeviQueryVersion, XeviGetVisualInfo - X Extended Visual Information functions

SYNOPSIS

#include <X11/extensions/XEVI.h>

Bool XeviQueryExtension (Display *dpy);

Bool XeviQueryVersion (Display *dpy,
int *major_version_return,
int *minor_version_return);

int XeviGetVisualInfo (Display *dpy, VisualID *visual,
int n_visual, ExtendedVisualInfo ** evi_return,
int * n_info_return);

DESCRIPTION

The X11 Extended Visual Information extension (EVI) allows a client to determine information about core X visuals beyond what the core protocol provides.

The EVI application programming library contains the interfaces described below. With the exception of XeviQueryExtension, if any of these routines are called with a display that does not support the extension, the ExtensionErrorHandler (which can be set with XSetExtensionErrorHandler and functions the same way as XSetErrorHandler ) will be called and the function will then return.

XeviQueryExtension returns True if the Extended Visual Information extension is available on the given display. A client must call XeviQueryExtension before calling any other EVI function in order to negotiate a compatible protocol version; otherwise the client will get undefined behavior (EVI may or may not work).

XeviQueryVersion returns True if the request succeeded; the values of the major and minor protocol version supported by the server are returned in major_version_return and minor_version_return.

XeviGetVisualInfo returns a list of ExtendedVisualInfo structures that describe visual information beyond that supported by the core protocol. This includes layer information relevant for systems supporting overlays and/or underlay planes, and information that allows applications better to determine the level of hardware support for multiple colormaps. XeviGetVisualInfo returns Success if successful, or an X error otherwise. If the argument visual is NULL, then information for all visuals of all screens is returned. Otherwise, it’s a pointer to a list of visuals for which extended visual information is desired. n_visual is the number of elements in the array visual. evi_return returns a pointer to a list of ExtendedVisualInfo. When done, the client should free the list using XFree. n_info_return returns the number of elements in the array evi_return.

The ExtendedVisualInfo structure has the following fields:

VisualID

core_visual_id

int

screen

int

level

unsigned int

transparency_type

unsigned int

transparency_value

unsigned int

min_hw_colormaps

unsigned int

max_hw_colormaps

unsigned int

num_colormap_conflicts

VisualID *

colormap_conflicts

The combination of core_visual_id and screen number uniquely specify the visual being described.

level returns the level number for the visual, 0 for normal planes, > 0 for overlays, < 0 for underlays.

transparency_type returns the type of transparency supported by the visual. XEVI_TRANSPARENCY_NONE if there are no transparent pixels, XEVI_TRANSPARENCY_PIXEL if the visual supports a transparent pixel, XEVI_TRANSPARENCY_MASK if the visual supports transparent plane(s).

transparency_value returns the pixel/plane value to set for transparency if transparency_type isn’t XEVI_TRANSPARENCY_NONE.

min_hw_colormaps and max_hw_colormaps return the minimum and maximum number of hardware colormaps backing up the visual.

num_colormap_conflicts returns the number of elements in colormap_conflicts. This array returns a list of visuals that may cause conflicts in the use of the hardware colormap. For example, if a 12-bit hardware colormap is overloaded to support 8-bit colormaps, the corresponding 8-bit visuals would conflict with the 12-bit visuals.

ERRORS

XeviGetVisualInfo will return BadValue if passed an illegal visual ID, BadAccess if the X server does not respond, BadAlloc if there is a memory allocation failure.