1 /* $Xorg: panoramiXproto.h,v 1.4 2000/08/18 04:05:45 coskrey Exp $ */
2 /*****************************************************************
3 Copyright (c) 1991, 1997 Digital Equipment Corporation, Maynard, Massachusetts.
4 Permission is hereby granted, free of charge, to any person obtaining a copy
5 of this software and associated documentation files (the "Software"), to deal
6 in the Software without restriction, including without limitation the rights
7 to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 copies of the Software.
10 The above copyright notice and this permission notice shall be included in
11 all copies or substantial portions of the Software.
13 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
16 DIGITAL EQUIPMENT CORPORATION BE LIABLE FOR ANY CLAIM, DAMAGES, INCLUDING,
17 BUT NOT LIMITED TO CONSEQUENTIAL OR INCIDENTAL DAMAGES, OR OTHER LIABILITY,
18 WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
19 IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21 Except as contained in this notice, the name of Digital Equipment Corporation
22 shall not be used in advertising or otherwise to promote the sale, use or other
23 dealings in this Software without prior written authorization from Digital
24 Equipment Corporation.
25 ******************************************************************/
26 /* $XFree86: xc/include/extensions/panoramiXproto.h,v 3.6 2001/01/17 17:53:22 dawes Exp $ */
28 /* THIS IS NOT AN X PROJECT TEAM SPECIFICATION */
30 #ifndef _PANORAMIXPROTO_H_
31 #define _PANORAMIXPROTO_H_
33 #define PANORAMIX_PROTOCOL_NAME "XINERAMA"
35 #define X_PanoramiXQueryVersion 0
36 #define X_PanoramiXGetState 1
37 #define X_PanoramiXGetScreenCount 2
38 #define X_PanoramiXGetScreenSize 3
40 #define X_XineramaIsActive 4
41 #define X_XineramaQueryScreens 5
43 typedef struct _PanoramiXQueryVersion {
44 CARD8 reqType; /* always PanoramiXReqCode */
45 CARD8 panoramiXReqType; /* always X_PanoramiXQueryVersion */
50 } xPanoramiXQueryVersionReq;
52 #define sz_xPanoramiXQueryVersionReq 8
55 CARD8 type; /* must be X_Reply */
56 CARD8 pad1; /* unused */
57 CARD16 sequenceNumber B16; /* last sequence number */
58 CARD32 length B32; /* 0 */
59 CARD16 majorVersion B16;
60 CARD16 minorVersion B16;
61 CARD32 pad2 B32; /* unused */
62 CARD32 pad3 B32; /* unused */
63 CARD32 pad4 B32; /* unused */
64 CARD32 pad5 B32; /* unused */
65 CARD32 pad6 B32; /* unused */
66 } xPanoramiXQueryVersionReply;
68 #define sz_xPanoramiXQueryVersionReply 32
71 typedef struct _PanoramiXGetState {
72 CARD8 reqType; /* always PanoramiXReqCode */
73 CARD8 panoramiXReqType; /* always X_PanoramiXGetState */
76 } xPanoramiXGetStateReq;
77 #define sz_xPanoramiXGetStateReq 8
82 CARD16 sequenceNumber B16;
85 CARD32 pad1 B32; /* unused */
86 CARD32 pad2 B32; /* unused */
87 CARD32 pad3 B32; /* unused */
88 CARD32 pad4 B32; /* unused */
89 CARD32 pad5 B32; /* unused */
90 } xPanoramiXGetStateReply;
92 #define sz_panoramiXGetStateReply 32
94 typedef struct _PanoramiXGetScreenCount {
95 CARD8 reqType; /* always PanoramiXReqCode */
96 CARD8 panoramiXReqType; /* always X_PanoramiXGetScreenCount */
99 } xPanoramiXGetScreenCountReq;
100 #define sz_xPanoramiXGetScreenCountReq 8
105 CARD16 sequenceNumber B16;
108 CARD32 pad1 B32; /* unused */
109 CARD32 pad2 B32; /* unused */
110 CARD32 pad3 B32; /* unused */
111 CARD32 pad4 B32; /* unused */
112 CARD32 pad5 B32; /* unused */
113 } xPanoramiXGetScreenCountReply;
114 #define sz_panoramiXGetScreenCountReply 32
116 typedef struct _PanoramiXGetScreenSize {
117 CARD8 reqType; /* always PanoramiXReqCode */
118 CARD8 panoramiXReqType; /* always X_PanoramiXGetState */
122 } xPanoramiXGetScreenSizeReq;
123 #define sz_xPanoramiXGetScreenSizeReq 12
128 CARD16 sequenceNumber B16;
134 CARD32 pad2 B32; /* unused */
135 CARD32 pad3 B32; /* unused */
136 } xPanoramiXGetScreenSizeReply;
137 #define sz_panoramiXGetScreenSizeReply 32
139 /************ Alternate protocol ******************/
143 CARD8 panoramiXReqType;
145 } xXineramaIsActiveReq;
146 #define sz_xXineramaIsActiveReq 4
151 CARD16 sequenceNumber B16;
159 } xXineramaIsActiveReply;
160 #define sz_XineramaIsActiveReply 32
165 CARD8 panoramiXReqType;
167 } xXineramaQueryScreensReq;
168 #define sz_xXineramaQueryScreensReq 4
173 CARD16 sequenceNumber B16;
181 } xXineramaQueryScreensReply;
182 #define sz_XineramaQueryScreensReply 32
189 } xXineramaScreenInfo;
190 #define sz_XineramaScreenInfo 8