OLD | NEW |
(Empty) | |
| 1 /* |
| 2 * Copyright © 2008 Red Hat, Inc. |
| 3 * |
| 4 * Permission is hereby granted, free of charge, to any person obtaining a |
| 5 * copy of this software and associated documentation files (the "Soft- |
| 6 * ware"), to deal in the Software without restriction, including without |
| 7 * limitation the rights to use, copy, modify, merge, publish, distribute, |
| 8 * and/or sell copies of the Software, and to permit persons to whom the |
| 9 * Software is furnished to do so, provided that the above copyright |
| 10 * notice(s) and this permission notice appear in all copies of the Soft- |
| 11 * ware and that both the above copyright notice(s) and this permission |
| 12 * notice appear in supporting documentation. |
| 13 * |
| 14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS |
| 15 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABIL- |
| 16 * ITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY |
| 17 * RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN |
| 18 * THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSE- |
| 19 * QUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, |
| 20 * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER |
| 21 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFOR- |
| 22 * MANCE OF THIS SOFTWARE. |
| 23 * |
| 24 * Except as contained in this notice, the name of a copyright holder shall |
| 25 * not be used in advertising or otherwise to promote the sale, use or |
| 26 * other dealings in this Software without prior written authorization of |
| 27 * the copyright holder. |
| 28 * |
| 29 * Authors: |
| 30 * Kristian Høgsberg (krh@redhat.com) |
| 31 */ |
| 32 |
| 33 #ifndef _DRI2_PROTO_H_ |
| 34 #define _DRI2_PROTO_H_ |
| 35 |
| 36 #define DRI2_NAME "DRI2" |
| 37 #define DRI2_MAJOR 1 |
| 38 #define DRI2_MINOR 2 |
| 39 |
| 40 #define DRI2NumberErrors 0 |
| 41 #define DRI2NumberEvents 2 |
| 42 #define DRI2NumberRequests 13 |
| 43 |
| 44 #define X_DRI2QueryVersion 0 |
| 45 #define X_DRI2Connect 1 |
| 46 #define X_DRI2Authenticate 2 |
| 47 #define X_DRI2CreateDrawable 3 |
| 48 #define X_DRI2DestroyDrawable 4 |
| 49 #define X_DRI2GetBuffers 5 |
| 50 #define X_DRI2CopyRegion 6 |
| 51 #define X_DRI2GetBuffersWithFormat 7 |
| 52 #define X_DRI2SwapBuffers 8 |
| 53 #define X_DRI2GetMSC 9 |
| 54 #define X_DRI2WaitMSC 10 |
| 55 #define X_DRI2WaitSBC 11 |
| 56 #define X_DRI2SwapInterval 12 |
| 57 |
| 58 typedef struct { |
| 59 CARD32 attachment B32; |
| 60 CARD32 name B32; |
| 61 CARD32 pitch B32; |
| 62 CARD32 cpp B32; |
| 63 CARD32 flags B32; |
| 64 } xDRI2Buffer; |
| 65 |
| 66 typedef struct { |
| 67 CARD8 reqType; |
| 68 CARD8 dri2ReqType; |
| 69 CARD16 length B16; |
| 70 CARD32 majorVersion B32; |
| 71 CARD32 minorVersion B32; |
| 72 } xDRI2QueryVersionReq; |
| 73 #define sz_xDRI2QueryVersionReq 12 |
| 74 |
| 75 typedef struct { |
| 76 BYTE type; /* X_Reply */ |
| 77 BYTE pad1; |
| 78 CARD16 sequenceNumber B16; |
| 79 CARD32 length B32; |
| 80 CARD32 majorVersion B32; |
| 81 CARD32 minorVersion B32; |
| 82 CARD32 pad2 B32; |
| 83 CARD32 pad3 B32; |
| 84 CARD32 pad4 B32; |
| 85 CARD32 pad5 B32; |
| 86 } xDRI2QueryVersionReply; |
| 87 #define sz_xDRI2QueryVersionReply 32 |
| 88 |
| 89 typedef struct { |
| 90 CARD8 reqType; |
| 91 CARD8 dri2ReqType; |
| 92 CARD16 length B16; |
| 93 CARD32 window B32; |
| 94 CARD32 driverType B32; |
| 95 } xDRI2ConnectReq; |
| 96 #define sz_xDRI2ConnectReq 12 |
| 97 |
| 98 typedef struct { |
| 99 BYTE type; /* X_Reply */ |
| 100 BYTE pad1; |
| 101 CARD16 sequenceNumber B16; |
| 102 CARD32 length B32; |
| 103 CARD32 driverNameLength B32; |
| 104 CARD32 deviceNameLength B32; |
| 105 CARD32 pad2 B32; |
| 106 CARD32 pad3 B32; |
| 107 CARD32 pad4 B32; |
| 108 CARD32 pad5 B32; |
| 109 } xDRI2ConnectReply; |
| 110 #define sz_xDRI2ConnectReply 32 |
| 111 |
| 112 typedef struct { |
| 113 CARD8 reqType; |
| 114 CARD8 dri2ReqType; |
| 115 CARD16 length B16; |
| 116 CARD32 window B32; |
| 117 CARD32 magic B32; |
| 118 } xDRI2AuthenticateReq; |
| 119 #define sz_xDRI2AuthenticateReq 12 |
| 120 |
| 121 typedef struct { |
| 122 BYTE type; /* X_Reply */ |
| 123 BYTE pad1; |
| 124 CARD16 sequenceNumber B16; |
| 125 CARD32 length B32; |
| 126 CARD32 authenticated B32; |
| 127 CARD32 pad2 B32; |
| 128 CARD32 pad3 B32; |
| 129 CARD32 pad4 B32; |
| 130 CARD32 pad5 B32; |
| 131 CARD32 pad6 B32; |
| 132 } xDRI2AuthenticateReply; |
| 133 #define sz_xDRI2AuthenticateReply 32 |
| 134 |
| 135 typedef struct { |
| 136 CARD8 reqType; |
| 137 CARD8 dri2ReqType; |
| 138 CARD16 length B16; |
| 139 CARD32 drawable B32; |
| 140 } xDRI2CreateDrawableReq; |
| 141 #define sz_xDRI2CreateDrawableReq 8 |
| 142 |
| 143 typedef struct { |
| 144 CARD8 reqType; |
| 145 CARD8 dri2ReqType; |
| 146 CARD16 length B16; |
| 147 CARD32 drawable B32; |
| 148 } xDRI2DestroyDrawableReq; |
| 149 #define sz_xDRI2DestroyDrawableReq 8 |
| 150 |
| 151 typedef struct { |
| 152 CARD8 reqType; |
| 153 CARD8 dri2ReqType; |
| 154 CARD16 length B16; |
| 155 CARD32 drawable B32; |
| 156 CARD32 count B32; |
| 157 } xDRI2GetBuffersReq; |
| 158 #define sz_xDRI2GetBuffersReq 12 |
| 159 |
| 160 typedef struct { |
| 161 BYTE type; /* X_Reply */ |
| 162 BYTE pad1; |
| 163 CARD16 sequenceNumber B16; |
| 164 CARD32 length B32; |
| 165 CARD32 width B32; |
| 166 CARD32 height B32; |
| 167 CARD32 count B32; |
| 168 CARD32 pad2 B32; |
| 169 CARD32 pad3 B32; |
| 170 CARD32 pad4 B32; |
| 171 } xDRI2GetBuffersReply; |
| 172 #define sz_xDRI2GetBuffersReply 32 |
| 173 |
| 174 typedef struct { |
| 175 CARD8 reqType; |
| 176 CARD8 dri2ReqType; |
| 177 CARD16 length B16; |
| 178 CARD32 drawable B32; |
| 179 CARD32 region B32; |
| 180 CARD32 dest B32; |
| 181 CARD32 src B32; |
| 182 } xDRI2CopyRegionReq; |
| 183 #define sz_xDRI2CopyRegionReq 20 |
| 184 |
| 185 typedef struct { |
| 186 BYTE type; /* X_Reply */ |
| 187 BYTE pad1; |
| 188 CARD16 sequenceNumber B16; |
| 189 CARD32 length B32; |
| 190 CARD32 pad2 B32; |
| 191 CARD32 pad3 B32; |
| 192 CARD32 pad4 B32; |
| 193 CARD32 pad5 B32; |
| 194 CARD32 pad6 B32; |
| 195 CARD32 pad7 B32; |
| 196 } xDRI2CopyRegionReply; |
| 197 #define sz_xDRI2CopyRegionReply 32 |
| 198 |
| 199 typedef struct { |
| 200 CARD8 reqType; |
| 201 CARD8 dri2ReqType; |
| 202 CARD16 length B16; |
| 203 CARD32 drawable B32; |
| 204 CARD32 target_msc_hi B32; |
| 205 CARD32 target_msc_lo B32; |
| 206 CARD32 divisor_hi B32; |
| 207 CARD32 divisor_lo B32; |
| 208 CARD32 remainder_hi B32; |
| 209 CARD32 remainder_lo B32; |
| 210 } xDRI2SwapBuffersReq; |
| 211 #define sz_xDRI2SwapBuffersReq 32 |
| 212 |
| 213 typedef struct { |
| 214 BYTE type; /* X_Reply */ |
| 215 BYTE pad1; |
| 216 CARD16 sequenceNumber B16; |
| 217 CARD32 length B32; |
| 218 CARD32 swap_hi B32; |
| 219 CARD32 swap_lo B32; |
| 220 CARD32 pad2 B32; |
| 221 CARD32 pad3 B32; |
| 222 CARD32 pad4 B32; |
| 223 CARD32 pad5 B32; |
| 224 } xDRI2SwapBuffersReply; |
| 225 #define sz_xDRI2SwapBuffersReply 32 |
| 226 |
| 227 #endif |
OLD | NEW |