Initial commit
[xorg_rtime.git] / libXext-1.0.2 / man / Xevi.man
blob5270f76742488cabfc900e6d40396d5d0c96c3a1
1 .\" $Xorg: Xevi.man,v 1.3 2000/08/17 19:41:54 cpqbld Exp $
2 .\"
3 .\" Copyright (c) 1997  Silicon Graphics, Inc.
4 .\" 
5 .\" Permission is hereby granted, free of charge, to any person obtaining a
6 .\" copy of this software and associated documentation files (the "Software"), 
7 .\" to deal in the Software without restriction, including without limitation 
8 .\" the rights to use, copy, modify, merge, publish, distribute, sublicense, 
9 .\" and/or sell copies of the Software, and to permit persons to whom the 
10 .\" Software furnished to do so, subject to the following conditions:
11 .\" 
12 .\" The above copyright notice and this permission notice shall be included in
13 .\" all copies or substantial portions of the Software.
14 .\" 
15 .\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 .\" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 .\" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL 
18 .\" SILICON GRAPHICS, INC. BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 
19 .\" WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF 
20 .\" OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 
21 .\" SOFTWARE.
22 .\" 
23 .\" Except as contained in this notice, the name of Silicon Graphics, Inc. shall not 
24 .\" be used in advertising or otherwise to promote the sale, use or other 
25 .\" dealing in this Software without prior written authorization from
26 .\" Silicon Graphics, Inc.
27 .\"
28 .\" $XFree86: xc/doc/man/Xext/Xevi.man,v 1.2 2001/01/27 18:20:19 dawes Exp $
29 .\"
30 .TH XEVI __libmansuffix__ __xorgversion__ "X FUNCTIONS"
31 .SH NAME
32 XeviQueryExtension, XeviQueryVersion, XeviGetVisualInfo - X Extended Visual Information functions
33 .SH SYNOPSIS
34 \&#include <X11/extensions/XEVI.h>
36 Bool
37 XeviQueryExtension (Display *dpy);
38 .LP
39 Bool
40 XeviQueryVersion (Display *dpy, 
41     int *major_version_return,
42     int *minor_version_return);
43 .LP
44 int
45 XeviGetVisualInfo (Display *dpy, VisualID *visual,
46     int n_visual, ExtendedVisualInfo ** evi_return,
47     int * n_info_return);
48 .fi
49 .SH DESCRIPTION
50 The
51 X11 Extended Visual Information extension (EVI) allows a client to determine
52 information about core X visuals beyond what the core protocol provides.
54 The EVI application programming library contains the interfaces described below.
55 With the exception of
56 .BR XeviQueryExtension,
57 if any of these routines are
58 called with a display that does not support the extension, the
59 ExtensionErrorHandler (which can be set with
60 .BR XSetExtensionErrorHandler
61 and functions the same way as
62 .BR XSetErrorHandler )
63 will be called and the function will then return.
64 .PP
65 .BR XeviQueryExtension
66 returns 
67 .BR True
68 if the Extended Visual Information extension is available on the given display.
69 A client must call
70 .BR XeviQueryExtension
71 before calling any other EVI
72 function in order to negotiate a compatible protocol version; otherwise
73 the client will get undefined behavior (EVI may or may not work).
74 .PP
75 .BR XeviQueryVersion
76 returns
77 .BR True
78 if the request succeeded; the values of the major and minor protocol
79 version supported by the server are returned in
80 .I major_version_return
81 and
82 .I minor_version_return.
83 .PP
84 .BR XeviGetVisualInfo
85 returns a list of ExtendedVisualInfo structures that describe
86 visual information beyond that supported by the core protocol. This includes 
87 layer information relevant for systems supporting overlays and/or underlay
88 planes, and information that allows applications better to determine the level
89 of hardware support for multiple colormaps. XeviGetVisualInfo returns 
90 .BR Success 
91 if successful, or an X error otherwise.
92 If the argument
93 .I visual
94 is NULL, then information for all visuals of all 
95 screens is returned. Otherwise, it's a pointer to a list of visuals for which
96 extended visual information is desired.
97 .I n_visual
98 is the number of elements in the array visual.
99 .I evi_return
100 returns a pointer to a list of ExtendedVisualInfo. When done, the client
101 should free the list using XFree\.
102 .I n_info_return
103 returns the number of elements in the array evi_return.
106 .BR ExtendedVisualInfo
107 structure has the following fields:
108 .in +.5i
110 .ta 1.6i
111 VisualID        \fIcore_visual_id\fR    
112 int     \fIscreen\fR            
113 int     \fIlevel\fR             
114 unsigned int    \fItransparency_type\fR 
115 unsigned int    \fItransparency_value\fR 
116 unsigned int    \fImin_hw_colormaps\fR
117 unsigned int    \fImax_hw_colormaps\fR
118 unsigned int    \fInum_colormap_conflicts\fR
119 VisualID *      \fIcolormap_conflicts\fR
122 The combination of 
123 .I core_visual_id
125 .I screen
126 number uniquely specify the visual being described.
128 .I level
129 returns the level number for the visual, 0 for normal planes, > 0 for
130 overlays, < 0 for underlays.
133 transparency_type
134 returns the type of transparency supported by the visual. XEVI_TRANSPARENCY_NONE if
135 there are no transparent pixels, XEVI_TRANSPARENCY_PIXEL if the visual supports
136 a transparent pixel, XEVI_TRANSPARENCY_MASK if the visual supports transparent
137 plane(s).
139 .I transparency_value
140 returns the pixel/plane value to set for transparency if transparency_type isn't
141 XEVI_TRANSPARENCY_NONE.
143 .I min_hw_colormaps
145 .I max_hw_colormaps
146 return the minimum and maximum number of hardware colormaps backing up the
147 visual. 
149 .I num_colormap_conflicts
150 returns the number of elements in 
151 .I colormap_conflicts.
152 This array returns a list of visuals that may cause conflicts in the use of the
153 hardware colormap. For example, if a 12-bit hardware colormap is overloaded to
154 support 8-bit colormaps, the corresponding 8-bit visuals would conflict with the
155 12-bit visuals.
157 .SH ERRORS
158 .BR XeviGetVisualInfo
159 will return
160 .I BadValue
161 if passed an illegal visual ID,
162 .I BadAccess
163 if the X server does not respond,
164 .I BadAlloc
165 if there is a memory allocation failure.