XeviQueryExtension, XeviQueryVersion, XeviGetVisualInfo - X Extended Visual Information functions


#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);


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:







unsigned int


unsigned int


unsigned int


unsigned int


unsigned int


VisualID *


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.


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.

More Linux Commands

trunc(3) - round to integer, toward zero - Linux man page...
These functions round x to the nearest integer not larger in absolute value. RETURN VALUE These functions return the rounded integer value. If x is integral, in

svnmucc(1) Multiple URL Command Client for Subversion.......
svnmucc.1 - Subversion is a version control system, which allows you to keep old versions of files and directories (usually source code), keep a log of who, whe

SDL_GetMouseState(3) - Retrieve the current state of the mou
The current button state is returned as a button bitmask, which can be tested using the SDL_BUTTON(X) macros, and x and y are set to the current mouse cursor po

wineboot(1) - perform Wine initialization, startup, and shut
wineboot performs the initial creation and setup of a WINEPREFIX for wine(1). It can also perform a simulated reboot or shutdown to any applications running wit

getresuid(2) - get real, effective and saved user/group IDs
getresuid() returns the real UID, the effective UID, and the saved set-user-ID of the calling process, in the arguments ruid, euid, and suid, respectively. getr

grub2-mknetdir(1) prepare a GRUB netboot directory..........
--compress[=no,xz,gz,lzo] compress GRUB files [optional] -d, --directory=DIR use images and modules under DIR [default=/usr/lib/grub2/&lt;platform&gt;] --fonts=FONTS

gnutls_pkcs11_token_set_pin(3) - API function (Man Page)....
This function will modify or set a users PIN for the given token. If it is called to set a user pin for first time the oldpin must be NULL. RETURNS On success,

startproc(8) - Start processes identified by path name......
startproc and the LSB variant start_daemon check for all processes of the specified executable and starts it if no processes are found. Note that startproc is d

Module::Build::Platform::VOS(3pm) - Builder class for VOS pl
Module::Build::Platform::VOS.3pm - The sole purpose of this module is to inherit from Module::Build::Base. Please see the Module::Build for the docs. AUTHOR Ken

git-cat-file(1) - Provide content or type and size informati
In its first form, the command provides the content or the type of an object in the repository. The type is required unless -t or -p is used to find the object

index(1) - netpbm library overview - Linux manual page......
Netpbm is a package of graphics programs and a programming library. There are over 220 separate programs in the package, most of which have pbm, pgm, ......

spufs(7) - SPU file system (Miscellaneous - Linux man page)
The SPU filesystem is used on PowerPC machines that implement the Cell Broadband Engine Architecture in order to access Synergistic Processor Units (SPUs). The

We can't live, work or learn in freedom unless the software we use is free.