74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync/* $Xorg: Xdbeproto.h,v 1.3 2000/08/18 04:05:45 coskrey Exp $ */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync/******************************************************************************
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync *
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * Copyright (c) 1994, 1995 Hewlett-Packard Company
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync *
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * Permission is hereby granted, free of charge, to any person obtaining
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * a copy of this software and associated documentation files (the
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * "Software"), to deal in the Software without restriction, including
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * without limitation the rights to use, copy, modify, merge, publish,
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * distribute, sublicense, and/or sell copies of the Software, and to
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * permit persons to whom the Software is furnished to do so, subject to
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * the following conditions:
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync *
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * The above copyright notice and this permission notice shall be included
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * in all copies or substantial portions of the Software.
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync *
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * IN NO EVENT SHALL HEWLETT-PACKARD COMPANY BE LIABLE FOR ANY CLAIM,
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * THE USE OR OTHER DEALINGS IN THE SOFTWARE.
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync *
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * Except as contained in this notice, the name of the Hewlett-Packard
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * Company shall not be used in advertising or otherwise to promote the
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * sale, use or other dealings in this Software without prior written
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * authorization from the Hewlett-Packard Company.
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync *
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * Header file for Xlib-related DBE
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync *
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync *****************************************************************************/
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#ifndef XDBE_PROTO_H
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define XDBE_PROTO_H
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync/* INCLUDES */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync/* DEFINES */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync/* Values for swap_action field of XdbeSwapInfo structure */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define XdbeUndefined 0
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define XdbeBackground 1
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define XdbeUntouched 2
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define XdbeCopied 3
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#ifdef NEED_DBE_PROTOCOL
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define DBE_PROTOCOL_NAME "DOUBLE-BUFFER"
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync/* Current version numbers */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define DBE_MAJOR_VERSION 1
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define DBE_MINOR_VERSION 0
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync/* Used when adding extension; also used in Xdbe macros */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define DbeNumberEvents 0
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define DbeBadBuffer 0
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define DbeNumberErrors (DbeBadBuffer + 1)
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync/* Request values used in (S)ProcDbeDispatch() */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define X_DbeGetVersion 0
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define X_DbeAllocateBackBufferName 1
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define X_DbeDeallocateBackBufferName 2
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define X_DbeSwapBuffers 3
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define X_DbeBeginIdiom 4
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define X_DbeEndIdiom 5
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define X_DbeGetVisualInfo 6
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define X_DbeGetBackBufferAttributes 7
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef CARD8 xDbeSwapAction;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef CARD32 xDbeBackBuffer;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#endif /* NEED_DBE_PROTOCOL */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync/* TYPEDEFS */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync/* Client data types */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync/* XdbeVisualInfo and XdbeScreenVisualInfo are defined in this file,
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * "Xdbeproto.h", rather than "Xdbe.h" because the server uses these data
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync * types.
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync{
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync VisualID visual; /* one visual ID that supports double-buffering */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync int depth; /* depth of visual in bits */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync int perflevel; /* performance level of visual */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync}
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncXdbeVisualInfo;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync{
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync int count; /* number of items in visual_depth */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync XdbeVisualInfo *visinfo; /* list of visuals & depths for scrn */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync}
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsyncXdbeScreenVisualInfo;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync/* Protocol data types */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#ifdef NEED_DBE_PROTOCOL
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync{
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 window B32; /* window */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync xDbeSwapAction swapAction; /* swap action */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 pad1; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 pad2 B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xDbeSwapInfo;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync{
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 visualID B32; /* associated visual */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 depth; /* depth of visual */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 perfLevel; /* performance level hint */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 pad1 B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xDbeVisInfo;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xDbeVisInfo 8
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync{
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 n B32; /* number of visual info items in list */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xDbeScreenVisInfo; /* followed by n xDbeVisInfo items */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync{
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 window B32; /* window */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xDbeBufferAttributes;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync/* Requests and replies */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync{
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 reqType; /* major-opcode: always codes->major_opcode */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 dbeReqType; /* minor-opcode: always X_DbeGetVersion (0) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 length B16; /* request length: (2) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 majorVersion; /* client-major-version */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 minorVersion; /* client-minor-version */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 unused B16; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xDbeGetVersionReq;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xDbeGetVersionReq 8
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync{
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync BYTE type; /* Reply: X_Reply (1) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 unused; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 sequenceNumber B16; /* sequence number */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 length B32; /* reply length: (0) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 majorVersion; /* server-major-version */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 minorVersion; /* server-minor-version */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 pad1 B16; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad2 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad3 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad4 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad5 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad6 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xDbeGetVersionReply;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xDbeGetVersionReply 32
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync{
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 reqType; /* major-opcode: codes->major_opcode */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 dbeReqType; /* X_DbeAllocateBackBufferName (1) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 length B16; /* request length: (4) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 window B32; /* window */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync xDbeBackBuffer buffer B32; /* back buffer name */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync xDbeSwapAction swapAction; /* swap action hint */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 pad1; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 pad2 B16;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xDbeAllocateBackBufferNameReq;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xDbeAllocateBackBufferNameReq 16
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync{
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 reqType; /* major-opcode: codes->major_opcode */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 dbeReqType; /* X_DbeDeallocateBackBufferName (2) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 length B16; /* request length: (2) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync xDbeBackBuffer buffer B32; /* back buffer name */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xDbeDeallocateBackBufferNameReq;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xDbeDeallocateBackBufferNameReq 8
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync{
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 reqType; /* major-opcode: always codes->major_opcode */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 dbeReqType; /* minor-opcode: always X_DbeSwapBuffers (3) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 length B16; /* request length: (2+2n) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 n B32; /* n, number of window/swap action pairs */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xDbeSwapBuffersReq; /* followed by n window/swap action pairs */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xDbeSwapBuffersReq 8
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync{
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 reqType; /* major-opcode: always codes->major_opcode */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 dbeReqType; /* minor-opcode: always X_DbeBeginIdom (4) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 length B16; /* request length: (1) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xDbeBeginIdiomReq;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xDbeBeginIdiomReq 4
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync{
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 reqType; /* major-opcode: always codes->major_opcode */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 dbeReqType; /* minor-opcode: always X_DbeEndIdom (5) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 length B16; /* request length: (1) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xDbeEndIdiomReq;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xDbeEndIdiomReq 4
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync{
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 reqType; /* always codes->major_opcode */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 dbeReqType; /* always X_DbeGetVisualInfo (6) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 length B16; /* request length: (2+n) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 n B32; /* n, number of drawables in list */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xDbeGetVisualInfoReq; /* followed by n drawables */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xDbeGetVisualInfoReq 8
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync{
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync BYTE type; /* Reply: X_Reply (1) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 unused; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 sequenceNumber B16; /* sequence number */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 length B32; /* reply length */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 m; /* m, number of visual infos in list */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad1 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad2 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad3 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad4 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad5 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xDbeGetVisualInfoReply; /* followed by m visual infos */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xDbeGetVisualInfoReply 32
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync{
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 reqType; /* always codes->major_opcode */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 dbeReqType; /* X_DbeGetBackBufferAttributes (7) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 length B16; /* request length: (2) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync xDbeBackBuffer buffer B32; /* back buffer name */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xDbeGetBackBufferAttributesReq;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xDbeGetBackBufferAttributesReq 8
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsynctypedef struct
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync{
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync BYTE type; /* Reply: X_Reply (1) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD8 unused; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD16 sequenceNumber B16; /* sequence number */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 length B32; /* reply length: (0) */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 attributes; /* attributes */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad1 B32; /* unused */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad2 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad3 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad4 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync CARD32 pad5 B32;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync} xDbeGetBackBufferAttributesReply;
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#define sz_xDbeGetBackBufferAttributesReply 32
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#endif /* NEED_DBE_PROTOCOL */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync#endif /* XDBE_PROTO_H */
74fe172698ba936102e120dae998c9ebd09cfbdfvboxsync