VirtualBox

source: vbox/trunk/src/VBox/Additions/x11/x11include/xextproto-7.1.1/X11/extensions/multibufproto.h@ 37801

最後變更 在這個檔案從37801是 22660,由 vboxsync 提交於 16 年 前

export more X11 stuff to OSE

  • 屬性 svn:eol-style 設為 native
檔案大小: 8.8 KB
 
1/*
2Copyright 1989, 1998 The Open Group
3
4Permission to use, copy, modify, distribute, and sell this software and its
5documentation for any purpose is hereby granted without fee, provided that
6the above copyright notice appear in all copies and that both that
7copyright notice and this permission notice appear in supporting
8documentation.
9
10The above copyright notice and this permission notice shall be included in
11all copies or substantial portions of the Software.
12
13THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
17AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
18CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
19
20Except as contained in this notice, the name of The Open Group shall not be
21used in advertising or otherwise to promote the sale, use or other dealings
22in this Software without prior written authorization from The Open Group.
23 */
24
25#ifndef _MULTIBUFPROTO_H_
26#define _MULTIBUFPROTO_H_
27
28#include <X11/extensions/multibufconst.h>
29
30/*
31 * Protocol requests constants and alignment values
32 */
33
34#define Window CARD32
35#define Drawable CARD32
36#define VisualID CARD32
37#define Multibuffer CARD32
38
39#define X_MbufGetBufferVersion 0
40#define X_MbufCreateImageBuffers 1
41#define X_MbufDestroyImageBuffers 2
42#define X_MbufDisplayImageBuffers 3
43#define X_MbufSetMBufferAttributes 4
44#define X_MbufGetMBufferAttributes 5
45#define X_MbufSetBufferAttributes 6
46#define X_MbufGetBufferAttributes 7
47#define X_MbufGetBufferInfo 8
48#define X_MbufCreateStereoWindow 9
49#define X_MbufClearImageBufferArea 10
50
51
52typedef struct xMbufBufferInfo {
53 CARD32 visualID B32; /* associated visual */
54 CARD16 maxBuffers B16; /* maximum supported buffers */
55 CARD8 depth; /* depth of visual (redundant) */
56 CARD8 unused;
57} xMbufBufferInfo;
58#define sz_xMbufBufferInfo 8
59
60typedef struct {
61 BYTE type;
62 BYTE unused;
63 CARD16 sequenceNumber B16;
64 CARD32 buffer B32; /* affected buffer */
65 BYTE state; /* current status */
66 CARD8 unused1;
67 CARD16 unused2 B16;
68 CARD32 unused3 B32;
69 CARD32 unused4 B32;
70 CARD32 unused5 B32;
71 CARD32 unused6 B32;
72 CARD32 unused7 B32;
73} xMbufClobberNotifyEvent;
74
75typedef struct {
76 BYTE type;
77 BYTE unused;
78 CARD16 sequenceNumber B16;
79 CARD32 buffer B32; /* affected buffer */
80 CARD32 timeStamp B32; /* update time */
81 CARD32 unused1 B32;
82 CARD32 unused2 B32;
83 CARD32 unused3 B32;
84 CARD32 unused4 B32;
85 CARD32 unused5 B32;
86 CARD32 unused6 B32;
87} xMbufUpdateNotifyEvent;
88
89typedef struct {
90 CARD8 reqType; /* always codes->major_opcode */
91 CARD8 mbufReqType; /* always X_MbufGetBufferVersion */
92 CARD16 length B16;
93} xMbufGetBufferVersionReq;
94#define sz_xMbufGetBufferVersionReq 4
95
96typedef struct {
97 BYTE type; /* X_Reply */
98 CARD8 unused; /* not used */
99 CARD16 sequenceNumber B16;
100 CARD32 length B32;
101 CARD8 majorVersion; /* major version of Multi-Buffering protocol */
102 CARD8 minorVersion; /* minor version of Multi-Buffering protocol */
103 CARD16 pad1 B16;
104 CARD32 pad2 B32;
105 CARD32 pad3 B32;
106 CARD32 pad4 B32;
107 CARD32 pad5 B32;
108 CARD32 pad6 B32;
109} xMbufGetBufferVersionReply;
110#define sz_xMbufGetBufferVersionReply 32
111
112typedef struct {
113 CARD8 reqType; /* always codes->major_opcode */
114 CARD8 mbufReqType; /* always X_MbufCreateImageBuffers */
115 CARD16 length B16;
116 CARD32 window B32; /* associated window */
117 CARD8 updateAction; /* action at update */
118 CARD8 updateHint; /* hint as to frequency of updates */
119 CARD16 unused;
120} xMbufCreateImageBuffersReq; /* followed by buffer ids */
121#define sz_xMbufCreateImageBuffersReq 12
122
123typedef struct {
124 BYTE type; /* X_Reply */
125 CARD8 unused; /* not used */
126 CARD16 sequenceNumber B16;
127 CARD32 length B32;
128 CARD16 numberBuffer B16; /* number successfully allocated */
129 CARD16 unused1 B16;
130 CARD32 unused2 B32;
131 CARD32 unused3 B32;
132 CARD32 unused4 B32;
133 CARD32 unused5 B32;
134 CARD32 unused6 B32;
135} xMbufCreateImageBuffersReply;
136#define sz_xMbufCreateImageBuffersReply 32
137
138typedef struct {
139 CARD8 reqType; /* always codes->major_opcode */
140 CARD8 mbufReqType; /* always X_MbufDestroyImageBuffers */
141 CARD16 length B16;
142 CARD32 window B32; /* associated window */
143} xMbufDestroyImageBuffersReq;
144#define sz_xMbufDestroyImageBuffersReq 8
145
146typedef struct {
147 CARD8 reqType; /* always codes->major_opcode */
148 CARD8 mbufReqType; /* always X_MbufDisplayImageBuffers */
149 CARD16 length B16;
150 CARD16 minDelay B16; /* minimum time between last update and now */
151 CARD16 maxDelay B16; /* maximum time between last update and now */
152} xMbufDisplayImageBuffersReq; /* followed by list of buffers */
153#define sz_xMbufDisplayImageBuffersReq 8
154
155typedef struct {
156 CARD8 reqType; /* always codes->major_opcode */
157 CARD8 mbufReqType; /* always X_MbufSetMBufferAttributes */
158 CARD16 length B16;
159 CARD32 window B32; /* associated window */
160 CARD32 valueMask B32; /* modified entries */
161} xMbufSetMBufferAttributesReq; /* followed by values */
162#define sz_xMbufSetMBufferAttributesReq 12
163
164typedef struct {
165 CARD8 reqType; /* always codes->major_opcode */
166 CARD8 mbufReqType; /* always X_MbufGetMBufferAttributes */
167 CARD16 length B16;
168 CARD32 window B32; /* associated window */
169} xMbufGetMBufferAttributesReq;
170#define sz_xMbufGetMBufferAttributesReq 8
171
172typedef struct {
173 BYTE type; /* X_Reply */
174 CARD8 unused; /* not used */
175 CARD16 sequenceNumber B16;
176 CARD32 length B32;
177 CARD16 displayedBuffer B16; /* currently visible buffer */
178 CARD8 updateAction;
179 CARD8 updateHint;
180 CARD8 windowMode;
181 CARD8 unused0;
182 CARD16 unused1 B16;
183 CARD32 unused2 B32;
184 CARD32 unused3 B32;
185 CARD32 unused4 B32;
186 CARD32 unused5 B32;
187} xMbufGetMBufferAttributesReply;
188#define sz_xMbufGetMBufferAttributesReply 32
189
190typedef struct {
191 CARD8 reqType; /* always codes->major_opcode */
192 CARD8 mbufReqType; /* always X_MbufSetBufferAttributes */
193 CARD16 length B16;
194 CARD32 buffer B32;
195 CARD32 valueMask B32;
196} xMbufSetBufferAttributesReq; /* followed by values */
197#define sz_xMbufSetBufferAttributesReq 12
198
199typedef struct {
200 CARD8 reqType; /* always codes->major_opcode */
201 CARD8 mbufReqType; /* always X_MbufGetBufferAttributes */
202 CARD16 length B16;
203 CARD32 buffer B32;
204} xMbufGetBufferAttributesReq;
205#define sz_xMbufGetBufferAttributesReq 8
206
207typedef struct {
208 BYTE type; /* X_Reply */
209 CARD8 unused; /* not used */
210 CARD16 sequenceNumber B16;
211 CARD32 length B32;
212 CARD32 window B32;
213 CARD32 eventMask B32;
214 CARD16 bufferIndex B16;
215 CARD8 side;
216 CARD8 unused0;
217 CARD32 unused1 B32;
218 CARD32 unused2 B32;
219 CARD32 unused3 B32;
220} xMbufGetBufferAttributesReply;
221#define sz_xMbufGetBufferAttributesReply 32
222
223typedef struct {
224 CARD8 reqType; /* always codes->major_opcode */
225 CARD8 mbufReqType; /* always X_MbufGetBufferInfo */
226 CARD16 length B16;
227 Drawable drawable B32;
228} xMbufGetBufferInfoReq;
229#define sz_xMbufGetBufferInfoReq 8
230
231typedef struct {
232 BYTE type; /* X_Reply */
233 CARD8 unused; /* not used */
234 CARD16 sequenceNumber B16;
235 CARD32 length B32;
236 CARD16 normalInfo B16;
237 CARD16 stereoInfo B16;
238 CARD32 unused1 B32;
239 CARD32 unused2 B32;
240 CARD32 unused3 B32;
241 CARD32 unused4 B32;
242 CARD32 unused5 B32;
243} xMbufGetBufferInfoReply; /* followed by buffer infos */
244#define sz_xMbufGetBufferInfoReply 32
245
246
247typedef struct {
248 CARD8 reqType; /* always codes->major_opcode */
249 CARD8 mbufReqType; /* always X_MbufCreateStereoWindow */
250 CARD16 length B16;
251 CARD8 unused0;
252 CARD8 unused1;
253 CARD8 unused2;
254 CARD8 depth;
255 Window wid B32;
256 Window parent B32;
257 Multibuffer left B32; /* associated buffers */
258 Multibuffer right B32;
259 INT16 x B16;
260 INT16 y B16;
261 CARD16 width B16;
262 CARD16 height B16;
263 CARD16 borderWidth B16;
264#if defined(__cplusplus) || defined(c_plusplus)
265 CARD16 c_class B16;
266#else
267 CARD16 class B16;
268#endif
269 VisualID visual B32;
270 CARD32 mask B32;
271} xMbufCreateStereoWindowReq; /* followed by value list */
272#define sz_xMbufCreateStereoWindowReq 44
273
274typedef struct {
275 CARD8 reqType; /* always codes->major_opcode */
276 CARD8 mbufReqType; /* always X_MbufClearImageBufferArea */
277 CARD16 length B16;
278 Multibuffer buffer B32;
279 INT16 x B16;
280 INT16 y B16;
281 CARD16 width B16;
282 CARD16 height B16;
283 CARD8 unused0;
284 CARD8 unused1;
285 CARD8 unused2;
286 BOOL exposures;
287} xMbufClearImageBufferAreaReq;
288#define sz_xMbufClearImageBufferAreaReq 20
289
290#undef Window
291#undef Drawable
292#undef VisualID
293#undef Multibuffer
294
295#endif /* _MULTIBUFPROTO_H_ */
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette