VirtualBox

source: vbox/trunk/src/VBox/Additions/linux/x11include/7.0/X11/extensions/dmxproto.h@ 1

Last change on this file since 1 was 1, checked in by vboxsync, 55 years ago

import

File size: 13.6 KB
Line 
1/* $XFree86$ */
2/*
3 * Copyright 2002-2004 Red Hat Inc., Durham, North Carolina.
4 *
5 * All Rights Reserved.
6 *
7 * Permission is hereby granted, free of charge, to any person obtaining
8 * a copy of this software and associated documentation files (the
9 * "Software"), to deal in the Software without restriction, including
10 * without limitation on the rights to use, copy, modify, merge,
11 * publish, distribute, sublicense, and/or sell copies of the Software,
12 * and to permit persons to whom the Software is furnished to do so,
13 * subject to the following conditions:
14 *
15 * The above copyright notice and this permission notice (including the
16 * next paragraph) shall be included in all copies or substantial
17 * portions of the Software.
18 *
19 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
20 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
21 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
22 * NON-INFRINGEMENT. IN NO EVENT SHALL RED HAT AND/OR THEIR SUPPLIERS
23 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
24 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
25 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26 * SOFTWARE.
27 */
28
29/*
30 * Authors:
31 * Rickard E. (Rik) Faith <[email protected]>
32 *
33 */
34
35/** \file
36 * This file describes the structures necessary to implement the wire
37 * protocol for the DMX protocol extension. It should be included only
38 * in files that implement the client-side (or server-side) part of the
39 * protocol (i.e., client-side applications should \b not include this
40 * file). */
41
42#ifndef _DMXSTR_H_
43#define _DMXSTR_H_
44
45#define DMX_EXTENSION_NAME "DMX"
46#define DMX_EXTENSION_MAJOR 2
47#define DMX_EXTENSION_MINOR 2
48#define DMX_EXTENSION_PATCH 20040604
49
50/* These values must be larger than LastExtensionError.
51 The values in dmxext.h and dmxproto.h *MUST* match. */
52#define DMX_BAD_XINERAMA 1001
53#define DMX_BAD_VALUE 1002
54
55#define X_DMXQueryVersion 0
56#define X_DMXGetScreenCount 1
57#define X_DMXGetScreenInformationDEPRECATED 2
58#define X_DMXGetWindowAttributes 3
59#define X_DMXGetInputCount 4
60#define X_DMXGetInputAttributes 5
61#define X_DMXForceWindowCreationDEPRECATED 6
62#define X_DMXReconfigureScreenDEPRECATED 7
63#define X_DMXSync 8
64#define X_DMXForceWindowCreation 9
65#define X_DMXGetScreenAttributes 10
66#define X_DMXChangeScreensAttributes 11
67#define X_DMXAddScreen 12
68#define X_DMXRemoveScreen 13
69#define X_DMXGetDesktopAttributes 14
70#define X_DMXChangeDesktopAttributes 15
71#define X_DMXAddInput 16
72#define X_DMXRemoveInput 17
73
74/** Wire-level description of DMXQueryVersion protocol request. */
75typedef struct {
76 CARD8 reqType; /* dmxcode */
77 CARD8 dmxReqType; /* X_DMXQueryVersion */
78 CARD16 length B16;
79} xDMXQueryVersionReq;
80#define sz_xDMXQueryVersionReq 4
81
82/** Wire-level description of DMXQueryVersion protocol reply. */
83typedef struct {
84 BYTE type; /* X_Reply */
85 CARD8 ununsed;
86 CARD16 sequenceNumber B16;
87 CARD32 length B32;
88 CARD32 majorVersion B32;
89 CARD32 minorVersion B32;
90 CARD32 patchVersion B32;
91 CARD32 pad0 B32;
92 CARD32 pad1 B32;
93 CARD32 pad2 B32;
94} xDMXQueryVersionReply;
95#define sz_xDMXQueryVersionReply 32
96
97/** Wire-level description of DMXSync protocol request. */
98typedef struct {
99 CARD8 reqType; /* DMXCode */
100 CARD8 dmxReqType; /* X_DMXSync */
101 CARD16 length B16;
102} xDMXSyncReq;
103#define sz_xDMXSyncReq 4
104
105/** Wire-level description of DMXSync protocol reply. */
106typedef struct {
107 BYTE type; /* X_Reply */
108 CARD8 unused;
109 CARD16 sequenceNumber B16;
110 CARD32 length B32;
111 CARD32 status B32;
112 CARD32 pad0 B32;
113 CARD32 pad1 B32;
114 CARD32 pad2 B32;
115 CARD32 pad3 B32;
116 CARD32 pad4 B32;
117} xDMXSyncReply;
118#define sz_xDMXSyncReply 32
119
120/** Wire-level description of DMXForceWindowCreation protocol request. */
121typedef struct {
122 CARD8 reqType; /* DMXCode */
123 CARD8 dmxReqType; /* X_DMXForceWindowCreation */
124 CARD16 length B16;
125 CARD32 window B32;
126} xDMXForceWindowCreationReq;
127#define sz_xDMXForceWindowCreationReq 8
128
129/** Wire-level description of DMXForceWindowCreation protocol reply. */
130typedef struct {
131 BYTE type; /* X_Reply */
132 CARD8 unused;
133 CARD16 sequenceNumber B16;
134 CARD32 length B32;
135 CARD32 status B32;
136 CARD32 pad0 B32;
137 CARD32 pad1 B32;
138 CARD32 pad2 B32;
139 CARD32 pad3 B32;
140 CARD32 pad4 B32;
141} xDMXForceWindowCreationReply;
142#define sz_xDMXForceWindowCreationReply 32
143
144/** Wire-level description of DMXGetScreenCount protocol request. */
145typedef struct {
146 CARD8 reqType; /* DMXCode */
147 CARD8 dmxReqType; /* X_DMXGetScreenCount */
148 CARD16 length B16;
149} xDMXGetScreenCountReq;
150#define sz_xDMXGetScreenCountReq 4
151
152/** Wire-level description of DMXGetScreenCount protocol reply. */
153typedef struct {
154 BYTE type; /* X_Reply */
155 CARD8 unused;
156 CARD16 sequenceNumber B16;
157 CARD32 length B32;
158 CARD32 screenCount B32;
159 CARD32 pad0 B32;
160 CARD32 pad1 B32;
161 CARD32 pad2 B32;
162 CARD32 pad3 B32;
163 CARD32 pad4 B32;
164} xDMXGetScreenCountReply;
165#define sz_xDMXGetScreenCountReply 32
166
167/** Wire-level description of DMXGetScreenAttributes protocol request. */
168typedef struct {
169 CARD8 reqType; /* DMXCode */
170 CARD8 dmxReqType; /* X_DMXGetScreenAttributes */
171 CARD16 length B16;
172 CARD32 physicalScreen B32;
173} xDMXGetScreenAttributesReq;
174#define sz_xDMXGetScreenAttributesReq 8
175
176/** Wire-level description of DMXGetScreenAttributes protocol reply. */
177typedef struct {
178 BYTE type; /* X_Reply */
179 CARD8 unused;
180 CARD16 sequenceNumber B16;
181 CARD32 length B32;
182 CARD32 displayNameLength B32;
183 CARD32 logicalScreen B32;
184
185 CARD16 screenWindowWidth B16;
186 CARD16 screenWindowHeight B16;
187 INT16 screenWindowXoffset B16;
188 INT16 screenWindowYoffset B16;
189
190 CARD16 rootWindowWidth B16;
191 CARD16 rootWindowHeight B16;
192 INT16 rootWindowXoffset B16;
193 INT16 rootWindowYoffset B16;
194 INT16 rootWindowXorigin B16;
195 INT16 rootWindowYorigin B16;
196} xDMXGetScreenAttributesReply;
197#define sz_xDMXGetScreenAttributesReply 36
198
199/** Wire-level description of DMXChangeScreensAttributes protocol request. */
200typedef struct {
201 CARD8 reqType; /* DMXCode */
202 CARD8 dmxReqType; /* X_DMXChangeScreensAttributes */
203 CARD16 length B16;
204 CARD32 screenCount B32;
205 CARD32 maskCount B32;
206} xDMXChangeScreensAttributesReq;
207#define sz_xDMXChangeScreensAttributesReq 12
208
209/** Wire-level description of DMXChangeScreensAttributes protocol reply. */
210typedef struct {
211 BYTE type; /* X_Reply */
212 CARD8 unused;
213 CARD16 sequenceNumber B16;
214 CARD32 length B32;
215 CARD32 status B32;
216 CARD32 errorScreen B32;
217 CARD32 pad0 B32;
218 CARD32 pad1 B32;
219 CARD32 pad2 B32;
220 CARD32 pad3 B32;
221} xDMXChangeScreensAttributesReply;
222#define sz_xDMXChangeScreensAttributesReply 32
223
224/** Wire-level description of DMXAddScreen protocol request. */
225typedef struct {
226 CARD8 reqType; /* DMXCode */
227 CARD8 dmxReqType; /* X_DMXAddScreen */
228 CARD16 length B16;
229 CARD32 displayNameLength B32;
230 CARD32 physicalScreen B32;
231 CARD32 valueMask B32;
232} xDMXAddScreenReq;
233#define sz_xDMXAddScreenReq 16
234
235/** Wire-level description of DMXAddScreen protocol reply. */
236typedef struct {
237 BYTE type; /* X_Reply */
238 CARD8 unused;
239 CARD16 sequenceNumber B16;
240 CARD32 length B32;
241 CARD32 status B32;
242 CARD32 physicalScreen B32;
243 CARD32 pad0 B32;
244 CARD32 pad1 B32;
245 CARD32 pad2 B32;
246 CARD32 pad3 B32;
247} xDMXAddScreenReply;
248#define sz_xDMXAddScreenReply 32
249
250/** Wire-level description of DMXRemoveScreen protocol request. */
251typedef struct {
252 CARD8 reqType; /* DMXCode */
253 CARD8 dmxReqType; /* X_DMXRemoveScreen */
254 CARD16 length B16;
255 CARD32 physicalScreen B32;
256} xDMXRemoveScreenReq;
257#define sz_xDMXRemoveScreenReq 8
258
259/** Wire-level description of DMXRemoveScreen protocol reply. */
260typedef struct {
261 BYTE type; /* X_Reply */
262 CARD8 unused;
263 CARD16 sequenceNumber B16;
264 CARD32 length B32;
265 CARD32 status B32;
266 CARD32 pad0 B32;
267 CARD32 pad1 B32;
268 CARD32 pad2 B32;
269 CARD32 pad3 B32;
270 CARD32 pad4 B32;
271} xDMXRemoveScreenReply;
272#define sz_xDMXRemoveScreenReply 32
273
274/** Wire-level description of DMXGetWindowAttributes protocol request. */
275typedef struct {
276 CARD8 reqType; /* DMXCode */
277 CARD8 dmxReqType; /* X_DMXGetWindowAttributes */
278 CARD16 length B16;
279 CARD32 window B32;
280} xDMXGetWindowAttributesReq;
281#define sz_xDMXGetWindowAttributesReq 8
282
283/** Wire-level description of DMXGetWindowAttributes protocol reply. */
284typedef struct {
285 BYTE type; /* X_Reply */
286 CARD8 unused;
287 CARD16 sequenceNumber B16;
288 CARD32 length B32;
289 CARD32 screenCount B32;
290 CARD32 pad0 B32;
291 CARD32 pad1 B32;
292 CARD32 pad2 B32;
293 CARD32 pad3 B32;
294 CARD32 pad4 B32;
295} xDMXGetWindowAttributesReply;
296#define sz_xDMXGetWindowAttributesReply 32
297
298/** Wire-level description of DMXGetDesktopAttributes protocol request. */
299typedef struct {
300 CARD8 reqType; /* DMXCode */
301 CARD8 dmxReqType; /* X_DMXGetDesktopAttributes */
302 CARD16 length B16;
303} xDMXGetDesktopAttributesReq;
304#define sz_xDMXGetDesktopAttributesReq 4
305
306/** Wire-level description of DMXGetDesktopAttributes protocol reply. */
307typedef struct {
308 BYTE type; /* X_Reply */
309 CARD8 unused;
310 CARD16 sequenceNumber B16;
311 CARD32 length B32;
312 INT16 width;
313 INT16 height;
314 INT16 shiftX;
315 INT16 shiftY;
316 CARD32 pad0 B32;
317 CARD32 pad1 B32;
318 CARD32 pad2 B32;
319 CARD32 pad3 B32;
320} xDMXGetDesktopAttributesReply;
321#define sz_xDMXGetDesktopAttributesReply 32
322
323/** Wire-level description of DMXChangeDesktopAttributes protocol request. */
324typedef struct {
325 CARD8 reqType; /* DMXCode */
326 CARD8 dmxReqType; /* X_DMXChangeDesktopAttributes */
327 CARD16 length B16;
328 CARD32 valueMask B32;
329} xDMXChangeDesktopAttributesReq;
330#define sz_xDMXChangeDesktopAttributesReq 8
331
332/** Wire-level description of DMXChangeDesktopAttributes protocol reply. */
333typedef struct {
334 BYTE type; /* X_Reply */
335 CARD8 unused;
336 CARD16 sequenceNumber B16;
337 CARD32 length B32;
338 CARD32 status B32;
339 CARD32 pad0 B32;
340 CARD32 pad1 B32;
341 CARD32 pad2 B32;
342 CARD32 pad3 B32;
343 CARD32 pad4 B32;
344} xDMXChangeDesktopAttributesReply;
345#define sz_xDMXChangeDesktopAttributesReply 32
346
347/** Wire-level description of DMXGetInputCount protocol request. */
348typedef struct {
349 CARD8 reqType; /* DMXCode */
350 CARD8 dmxReqType; /* X_DMXGetInputCount */
351 CARD16 length B16;
352} xDMXGetInputCountReq;
353#define sz_xDMXGetInputCountReq 4
354
355/** Wire-level description of DMXGetInputCount protocol reply. */
356typedef struct {
357 BYTE type; /* X_Reply */
358 CARD8 unused;
359 CARD16 sequenceNumber B16;
360 CARD32 length B32;
361 CARD32 inputCount B32;
362 CARD32 pad0 B32;
363 CARD32 pad1 B32;
364 CARD32 pad2 B32;
365 CARD32 pad3 B32;
366 CARD32 pad4 B32;
367} xDMXGetInputCountReply;
368#define sz_xDMXGetInputCountReply 32
369
370/** Wire-level description of DMXGetInputAttributes protocol request. */
371typedef struct {
372 CARD8 reqType; /* DMXCode */
373 CARD8 dmxReqType; /* X_DMXGetInputAttributes */
374 CARD16 length B16;
375 CARD32 deviceId B32;
376} xDMXGetInputAttributesReq;
377#define sz_xDMXGetInputAttributesReq 8
378
379/** Wire-level description of DMXGetInputAttributes protocol reply. */
380typedef struct {
381 BYTE type; /* X_Reply */
382 CARD8 unused;
383 CARD16 sequenceNumber B16;
384 CARD32 length B32;
385 CARD32 inputType B32;
386 CARD32 physicalScreen B32;
387 CARD32 physicalId B32;
388 CARD32 nameLength B32;
389 BOOL isCore;
390 BOOL sendsCore;
391 BOOL detached;
392 CARD8 pad0;
393 CARD32 pad1 B32;
394} xDMXGetInputAttributesReply;
395#define sz_xDMXGetInputAttributesReply 32
396
397/** Wire-level description of DMXAddInput protocol request. */
398typedef struct {
399 CARD8 reqType; /* DMXCode */
400 CARD8 dmxReqType; /* X_DMXAddInput */
401 CARD16 length B16;
402 CARD32 displayNameLength B32;
403 CARD32 valueMask;
404} xDMXAddInputReq;
405#define sz_xDMXAddInputReq 12
406
407/** Wire-level description of DMXAddInput protocol reply. */
408typedef struct {
409 BYTE type; /* X_Reply */
410 CARD8 unused;
411 CARD16 sequenceNumber B16;
412 CARD32 length B32;
413 CARD32 status B32;
414 CARD32 physicalId B32;
415 CARD32 pad0 B32;
416 CARD32 pad1 B32;
417 CARD32 pad2 B32;
418 CARD32 pad3 B32;
419} xDMXAddInputReply;
420#define sz_xDMXAddInputReply 32
421
422/** Wire-level description of DMXRemoveInput protocol request. */
423typedef struct {
424 CARD8 reqType; /* DMXCode */
425 CARD8 dmxReqType; /* X_DMXRemoveInput */
426 CARD16 length B16;
427 CARD32 physicalId B32;
428} xDMXRemoveInputReq;
429#define sz_xDMXRemoveInputReq 8
430
431/** Wire-level description of DMXRemoveInput protocol reply. */
432typedef struct {
433 BYTE type;
434 CARD8 unused;
435 CARD16 sequenceNumber B16;
436 CARD32 length B32;
437 CARD32 status B32;
438 CARD32 pad0 B32;
439 CARD32 pad1 B32;
440 CARD32 pad2 B32;
441 CARD32 pad3 B32;
442 CARD32 pad4 B32;
443} xDMXRemoveInputReply;
444#define sz_xDMXRemoveInputReply 32
445
446#endif
Note: See TracBrowser for help on using the repository browser.

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