1/* $XFree86: xc/include/extensions/xf86rushstr.h,v 1.4 2000/02/29 03:09:02 dawes Exp $ */ 2/* 3 4Copyright (c) 1998 Daryll Strauss 5 6*/ 7 8#ifndef _XF86RUSHSTR_H_ 9#define _XF86RUSHSTR_H_ 10 11#include <X11/extensions/xf86rush.h> 12 13#define XF86RUSHNAME "XFree86-Rush" 14 15#define XF86RUSH_MAJOR_VERSION 1 /* current version numbers */ 16#define XF86RUSH_MINOR_VERSION 1 17 18typedef struct _XF86RushQueryVersion { 19 CARD8 reqType; /* always RushReqCode */ 20 CARD8 rushReqType; /* always X_RushQueryVersion */ 21 CARD16 length; 22} xXF86RushQueryVersionReq; 23#define sz_xXF86RushQueryVersionReq 4 24 25typedef struct { 26 BYTE type; /* X_Reply */ 27 BOOL pad1; 28 CARD16 sequenceNumber; 29 CARD32 length; 30 CARD16 majorVersion; /* major version of Rush protocol */ 31 CARD16 minorVersion; /* minor version of Rush protocol */ 32 CARD32 pad2; 33 CARD32 pad3; 34 CARD32 pad4; 35 CARD32 pad5; 36 CARD32 pad6; 37} xXF86RushQueryVersionReply; 38#define sz_xXF86RushQueryVersionReply 32 39 40typedef struct _XF86RushLockPixmap { 41 CARD8 reqType; /* always RushReqCode */ 42 CARD8 rushReqType; /* always X_RushLockPixmap */ 43 CARD16 length; 44 CARD16 screen; 45 CARD16 pad; 46 CARD32 pixmap; 47} xXF86RushLockPixmapReq; 48#define sz_xXF86RushLockPixmapReq 12 49 50typedef struct { 51 BYTE type; 52 BOOL pad1; 53 CARD16 sequenceNumber; 54 CARD32 length; 55 CARD32 addr; 56 CARD32 pad2; 57 CARD32 pad3; 58 CARD32 pad4; 59 CARD32 pad5; 60 CARD32 pad6; 61} xXF86RushLockPixmapReply; 62#define sz_xXF86RushLockPixmapReply 32 63 64typedef struct _XF86RushUnlockPixmap { 65 CARD8 reqType; /* always RushReqCode */ 66 CARD8 rushReqType; /* always X_RushUnlockPixmap */ 67 CARD16 length; 68 CARD16 screen; 69 CARD16 pad; 70 CARD32 pixmap; 71} xXF86RushUnlockPixmapReq; 72#define sz_xXF86RushUnlockPixmapReq 12 73 74typedef struct _XF86RushUnlockAllPixmaps { 75 CARD8 reqType; /* always RushReqCode */ 76 CARD8 rushReqType; /* always X_RushUnlockAllPixmaps */ 77 CARD16 length; 78} xXF86RushUnlockAllPixmapsReq; 79#define sz_xXF86RushUnlockAllPixmapsReq 4 80 81typedef struct _XF86RushSetCopyMode { 82 CARD8 reqType; /* always RushReqCode */ 83 CARD8 rushReqType; /* always X_RushSetCopyMode */ 84 CARD16 length; 85 CARD16 screen; 86 CARD16 pad; 87 CARD32 CopyMode; 88} xXF86RushSetCopyModeReq; 89#define sz_xXF86RushSetCopyModeReq 12 90 91 92typedef struct _XF86RushSetPixelStride { 93 CARD8 reqType; /* always RushReqCode */ 94 CARD8 rushReqType; /* always X_RushSetCopyMode */ 95 CARD16 length; 96 CARD16 screen; 97 CARD16 pad; 98 CARD32 PixelStride; 99} xXF86RushSetPixelStrideReq; 100#define sz_xXF86RushSetPixelStrideReq 12 101 102typedef struct { 103 CARD8 reqType; /* always RushReqCode */ 104 CARD8 rushReqType; /* always X_RushOverlayPixmap */ 105 CARD16 length; 106 XvPortID port; 107 Drawable drawable; 108 GContext gc; 109 Pixmap pixmap; 110 CARD32 id; 111 INT16 src_x; 112 INT16 src_y; 113 CARD16 src_w; 114 CARD16 src_h; 115 INT16 drw_x; 116 INT16 drw_y; 117 CARD16 drw_w; 118 CARD16 drw_h; 119} xXF86RushOverlayPixmapReq; 120#define sz_xXF86RushOverlayPixmapReq 40 121 122typedef struct _XF86RushStatusRegOffset { 123 CARD8 reqType; /* always RushReqCode */ 124 CARD8 rushReqType; /* always X_RushStatusRegOffset */ 125 CARD16 length; 126 CARD16 screen; 127 CARD16 pad; 128} xXF86RushStatusRegOffsetReq; 129#define sz_xXF86RushStatusRegOffsetReq 8 130 131typedef struct { 132 BYTE type; /* X_Reply */ 133 BOOL pad1; 134 CARD16 sequenceNumber; 135 CARD32 length; 136 CARD32 offset; /* Offset of Rush status reg in mem */ 137 CARD32 pad2; 138 CARD32 pad3; 139 CARD32 pad4; 140 CARD32 pad5; 141 CARD32 pad6; 142} xXF86RushStatusRegOffsetReply; 143#define sz_xXF86RushStatusRegOffsetReply 32 144 145typedef struct _XF86RushAT3DEnableRegs { 146 CARD8 reqType; /* always RushReqCode */ 147 CARD8 rushReqType; /* always X_RushAT3DEnableRegs */ 148 CARD16 length; 149 CARD16 screen; 150 CARD16 pad; 151} xXF86RushAT3DEnableRegsReq; 152#define sz_xXF86RushAT3DEnableRegsReq 8 153 154typedef struct _XF86RushAT3DDisableRegs { 155 CARD8 reqType; /* always RushReqCode */ 156 CARD8 rushReqType; /* always X_RushAT3DDisableRegs */ 157 CARD16 length; 158 CARD16 screen; 159 CARD16 pad; 160} xXF86RushAT3DDisableRegsReq; 161#define sz_xXF86RushAT3DDisableRegsReq 8 162 163#endif /* _XF86RUSHSTR_H_ */ 164