74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync/* $Xorg: panoramiXproto.h,v 1.4 2000/08/18 04:05:45 coskrey Exp $ */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync/*****************************************************************
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncCopyright (c) 1991, 1997 Digital Equipment Corporation, Maynard, Massachusetts.
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncPermission is hereby granted, free of charge, to any person obtaining a copy
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncof this software and associated documentation files (the "Software"), to deal
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncin the Software without restriction, including without limitation the rights
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncto use, copy, modify, merge, publish, distribute, sublicense, and/or sell
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynccopies of the Software.
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncThe above copyright notice and this permission notice shall be included in
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncall copies or substantial portions of the Software.
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncDIGITAL EQUIPMENT CORPORATION BE LIABLE FOR ANY CLAIM, DAMAGES, INCLUDING,
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncBUT NOT LIMITED TO CONSEQUENTIAL OR INCIDENTAL DAMAGES, OR OTHER LIABILITY,
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncWHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncIN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncExcept as contained in this notice, the name of Digital Equipment Corporation
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncshall not be used in advertising or otherwise to promote the sale, use or other
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncdealings in this Software without prior written authorization from Digital
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncEquipment Corporation.
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync******************************************************************/
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync/* $XFree86: xc/include/extensions/panoramiXproto.h,v 3.6 2001/01/17 17:53:22 dawes Exp $ */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync/* THIS IS NOT AN X PROJECT TEAM SPECIFICATION */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#ifndef _PANORAMIXPROTO_H_
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define _PANORAMIXPROTO_H_
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define PANORAMIX_PROTOCOL_NAME "XINERAMA"
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define X_PanoramiXQueryVersion 0
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define X_PanoramiXGetState 1
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define X_PanoramiXGetScreenCount 2
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define X_PanoramiXGetScreenSize 3
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define X_XineramaIsActive 4
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define X_XineramaQueryScreens 5
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct _PanoramiXQueryVersion {
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 reqType; /* always PanoramiXReqCode */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 panoramiXReqType; /* always X_PanoramiXQueryVersion */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 length B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 clientMajor;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 clientMinor;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 unused B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xPanoramiXQueryVersionReq;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xPanoramiXQueryVersionReq 8
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct {
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 type; /* must be X_Reply */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 pad1; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 sequenceNumber B16; /* last sequence number */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 length B32; /* 0 */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 majorVersion B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 minorVersion B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad2 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad3 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad4 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad5 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad6 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xPanoramiXQueryVersionReply;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xPanoramiXQueryVersionReply 32
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct _PanoramiXGetState {
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 reqType; /* always PanoramiXReqCode */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 panoramiXReqType; /* always X_PanoramiXGetState */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 length B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 window B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xPanoramiXGetStateReq;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xPanoramiXGetStateReq 8
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct {
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync BYTE type;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync BYTE state;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 sequenceNumber B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 length B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 window B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad1 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad2 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad3 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad4 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad5 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xPanoramiXGetStateReply;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_panoramiXGetStateReply 32
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct _PanoramiXGetScreenCount {
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 reqType; /* always PanoramiXReqCode */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 panoramiXReqType; /* always X_PanoramiXGetScreenCount */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 length B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 window B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xPanoramiXGetScreenCountReq;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xPanoramiXGetScreenCountReq 8
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct {
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync BYTE type;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync BYTE ScreenCount;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 sequenceNumber B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 length B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 window B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad1 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad2 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad3 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad4 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad5 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xPanoramiXGetScreenCountReply;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_panoramiXGetScreenCountReply 32
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct _PanoramiXGetScreenSize {
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 reqType; /* always PanoramiXReqCode */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 panoramiXReqType; /* always X_PanoramiXGetState */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 length B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 window B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 screen B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xPanoramiXGetScreenSizeReq;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xPanoramiXGetScreenSizeReq 12
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct {
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync BYTE type;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 pad1;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 sequenceNumber B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 length B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 width B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 height B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 window B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 screen B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad2 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad3 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xPanoramiXGetScreenSizeReply;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_panoramiXGetScreenSizeReply 32
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync/************ Alternate protocol ******************/
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct {
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 reqType;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 panoramiXReqType;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 length B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xXineramaIsActiveReq;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xXineramaIsActiveReq 4
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct {
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync BYTE type;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 pad1;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 sequenceNumber B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 length B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 state B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad2 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad3 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad4 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad5 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad6 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xXineramaIsActiveReply;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_XineramaIsActiveReply 32
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct {
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 reqType;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 panoramiXReqType;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 length B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xXineramaQueryScreensReq;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xXineramaQueryScreensReq 4
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct {
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync BYTE type;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 pad1;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 sequenceNumber B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 length B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 number B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad2 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad3 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad4 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad5 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad6 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xXineramaQueryScreensReply;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_XineramaQueryScreensReply 32
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct {
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync INT16 x_org B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync INT16 y_org B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 width B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 height B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xXineramaScreenInfo;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_XineramaScreenInfo 8
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#endif