comparison src/video/Xext/extensions/Xvproto.h @ 1662:782fd950bd46 SDL-1.3

Revamp of the video system in progress - adding support for multiple displays, multiple windows, and a full video mode selection API. WARNING: None of the video drivers have been updated for the new API yet! The API is still under design and very fluid. The code is now run through a consistent indent format: indent -i4 -nut -nsc -br -ce The headers are being converted to automatically generate doxygen documentation.
author Sam Lantinga <slouken@libsdl.org>
date Sun, 28 May 2006 13:04:16 +0000
parents eadc0746dfaf
children
comparison
equal deleted inserted replaced
1661:281d3f4870e5 1662:782fd950bd46
63 #define Time CARD32 63 #define Time CARD32
64 #define Atom CARD32 64 #define Atom CARD32
65 65
66 /* Structures */ 66 /* Structures */
67 67
68 typedef struct { 68 typedef struct
69 INT32 numerator B32; 69 {
70 INT32 denominator B32; 70 INT32 numerator B32;
71 INT32 denominator B32;
71 } xvRational; 72 } xvRational;
72 #define sz_xvRational 8 73 #define sz_xvRational 8
73 74
74 typedef struct { 75 typedef struct
75 XvPortID base_id B32; 76 {
76 CARD16 name_size B16; 77 XvPortID base_id B32;
77 CARD16 num_ports B16; 78 CARD16 name_size B16;
78 CARD16 num_formats B16; 79 CARD16 num_ports B16;
79 CARD8 type; 80 CARD16 num_formats B16;
80 CARD8 pad; 81 CARD8 type;
82 CARD8 pad;
81 } xvAdaptorInfo; 83 } xvAdaptorInfo;
82 #define sz_xvAdaptorInfo 12 84 #define sz_xvAdaptorInfo 12
83 85
84 typedef struct { 86 typedef struct
85 XvEncodingID encoding B32; 87 {
86 CARD16 name_size B16; 88 XvEncodingID encoding B32;
87 CARD16 width B16, height B16; 89 CARD16 name_size B16;
88 xvRational rate; 90 CARD16 width B16, height B16;
89 CARD16 pad B16; 91 xvRational rate;
92 CARD16 pad B16;
90 } xvEncodingInfo; 93 } xvEncodingInfo;
91 #define sz_xvEncodingInfo (12 + sz_xvRational) 94 #define sz_xvEncodingInfo (12 + sz_xvRational)
92 95
93 typedef struct { 96 typedef struct
94 VisualID visual B32; 97 {
95 CARD8 depth; 98 VisualID visual B32;
96 CARD8 pad1; 99 CARD8 depth;
97 CARD16 pad2 B16; 100 CARD8 pad1;
101 CARD16 pad2 B16;
98 } xvFormat; 102 } xvFormat;
99 #define sz_xvFormat 8 103 #define sz_xvFormat 8
100 104
101 typedef struct { 105 typedef struct
102 CARD32 flags B32; 106 {
103 INT32 min B32; 107 CARD32 flags B32;
104 INT32 max B32; 108 INT32 min B32;
105 CARD32 size B32; 109 INT32 max B32;
110 CARD32 size B32;
106 } xvAttributeInfo; 111 } xvAttributeInfo;
107 #define sz_xvAttributeInfo 16 112 #define sz_xvAttributeInfo 16
108 113
109 typedef struct { 114 typedef struct
110 CARD32 id B32; 115 {
111 CARD8 type; 116 CARD32 id B32;
112 CARD8 byte_order; 117 CARD8 type;
113 CARD16 pad1 B16; 118 CARD8 byte_order;
114 CARD8 guid[16]; 119 CARD16 pad1 B16;
115 CARD8 bpp; 120 CARD8 guid[16];
116 CARD8 num_planes; 121 CARD8 bpp;
117 CARD16 pad2 B16; 122 CARD8 num_planes;
118 CARD8 depth; 123 CARD16 pad2 B16;
119 CARD8 pad3; 124 CARD8 depth;
120 CARD16 pad4 B16; 125 CARD8 pad3;
121 CARD32 red_mask B32; 126 CARD16 pad4 B16;
122 CARD32 green_mask B32; 127 CARD32 red_mask B32;
123 CARD32 blue_mask B32; 128 CARD32 green_mask B32;
124 CARD8 format; 129 CARD32 blue_mask B32;
125 CARD8 pad5; 130 CARD8 format;
126 CARD16 pad6 B16; 131 CARD8 pad5;
127 CARD32 y_sample_bits B32; 132 CARD16 pad6 B16;
128 CARD32 u_sample_bits B32; 133 CARD32 y_sample_bits B32;
129 CARD32 v_sample_bits B32; 134 CARD32 u_sample_bits B32;
130 CARD32 horz_y_period B32; 135 CARD32 v_sample_bits B32;
131 CARD32 horz_u_period B32; 136 CARD32 horz_y_period B32;
132 CARD32 horz_v_period B32; 137 CARD32 horz_u_period B32;
133 CARD32 vert_y_period B32; 138 CARD32 horz_v_period B32;
134 CARD32 vert_u_period B32; 139 CARD32 vert_y_period B32;
135 CARD32 vert_v_period B32; 140 CARD32 vert_u_period B32;
136 CARD8 comp_order[32]; 141 CARD32 vert_v_period B32;
137 CARD8 scanline_order; 142 CARD8 comp_order[32];
138 CARD8 pad7; 143 CARD8 scanline_order;
139 CARD16 pad8 B16; 144 CARD8 pad7;
140 CARD32 pad9 B32; 145 CARD16 pad8 B16;
141 CARD32 pad10 B32; 146 CARD32 pad9 B32;
147 CARD32 pad10 B32;
142 } xvImageFormatInfo; 148 } xvImageFormatInfo;
143 #define sz_xvImageFormatInfo 128 149 #define sz_xvImageFormatInfo 128
144 150
145 151
146 /* Requests */ 152 /* Requests */
167 #define xv_ShmPutImage 19 173 #define xv_ShmPutImage 19
168 #define xv_LastRequest xv_ShmPutImage 174 #define xv_LastRequest xv_ShmPutImage
169 175
170 #define xvNumRequests (xv_LastRequest + 1) 176 #define xvNumRequests (xv_LastRequest + 1)
171 177
172 typedef struct { 178 typedef struct
173 CARD8 reqType; 179 {
174 CARD8 xvReqType; 180 CARD8 reqType;
175 CARD16 length B16; 181 CARD8 xvReqType;
182 CARD16 length B16;
176 } xvQueryExtensionReq; 183 } xvQueryExtensionReq;
177 #define sz_xvQueryExtensionReq 4 184 #define sz_xvQueryExtensionReq 4
178 185
179 typedef struct { 186 typedef struct
180 CARD8 reqType; 187 {
181 CARD8 xvReqType; 188 CARD8 reqType;
182 CARD16 length B16; 189 CARD8 xvReqType;
183 CARD32 window B32; 190 CARD16 length B16;
191 CARD32 window B32;
184 } xvQueryAdaptorsReq; 192 } xvQueryAdaptorsReq;
185 #define sz_xvQueryAdaptorsReq 8 193 #define sz_xvQueryAdaptorsReq 8
186 194
187 typedef struct { 195 typedef struct
188 CARD8 reqType; 196 {
189 CARD8 xvReqType; 197 CARD8 reqType;
190 CARD16 length B16; 198 CARD8 xvReqType;
191 CARD32 port B32; 199 CARD16 length B16;
200 CARD32 port B32;
192 } xvQueryEncodingsReq; 201 } xvQueryEncodingsReq;
193 #define sz_xvQueryEncodingsReq 8 202 #define sz_xvQueryEncodingsReq 8
194 203
195 typedef struct { 204 typedef struct
196 CARD8 reqType; 205 {
197 CARD8 xvReqType; 206 CARD8 reqType;
198 CARD16 length B16; 207 CARD8 xvReqType;
199 XvPortID port B32; 208 CARD16 length B16;
200 Drawable drawable B32; 209 XvPortID port B32;
201 GContext gc B32; 210 Drawable drawable B32;
202 INT16 vid_x B16; 211 GContext gc B32;
203 INT16 vid_y B16; 212 INT16 vid_x B16;
204 CARD16 vid_w B16; 213 INT16 vid_y B16;
205 CARD16 vid_h B16; 214 CARD16 vid_w B16;
206 INT16 drw_x B16; 215 CARD16 vid_h B16;
207 INT16 drw_y B16; 216 INT16 drw_x B16;
208 CARD16 drw_w B16; 217 INT16 drw_y B16;
209 CARD16 drw_h B16; 218 CARD16 drw_w B16;
219 CARD16 drw_h B16;
210 } xvPutVideoReq; 220 } xvPutVideoReq;
211 #define sz_xvPutVideoReq 32 221 #define sz_xvPutVideoReq 32
212 222
213 typedef struct { 223 typedef struct
214 CARD8 reqType; 224 {
215 CARD8 xvReqType; 225 CARD8 reqType;
216 CARD16 length B16; 226 CARD8 xvReqType;
217 XvPortID port B32; 227 CARD16 length B16;
218 Drawable drawable B32; 228 XvPortID port B32;
219 GContext gc B32; 229 Drawable drawable B32;
220 INT16 vid_x B16; 230 GContext gc B32;
221 INT16 vid_y B16; 231 INT16 vid_x B16;
222 CARD16 vid_w B16; 232 INT16 vid_y B16;
223 CARD16 vid_h B16; 233 CARD16 vid_w B16;
224 INT16 drw_x B16; 234 CARD16 vid_h B16;
225 INT16 drw_y B16; 235 INT16 drw_x B16;
226 CARD16 drw_w B16; 236 INT16 drw_y B16;
227 CARD16 drw_h B16; 237 CARD16 drw_w B16;
238 CARD16 drw_h B16;
228 } xvPutStillReq; 239 } xvPutStillReq;
229 #define sz_xvPutStillReq 32 240 #define sz_xvPutStillReq 32
230 241
231 typedef struct { 242 typedef struct
232 CARD8 reqType; 243 {
233 CARD8 xvReqType; 244 CARD8 reqType;
234 CARD16 length B16; 245 CARD8 xvReqType;
235 XvPortID port B32; 246 CARD16 length B16;
236 Drawable drawable B32; 247 XvPortID port B32;
237 GContext gc B32; 248 Drawable drawable B32;
238 INT16 vid_x B16; 249 GContext gc B32;
239 INT16 vid_y B16; 250 INT16 vid_x B16;
240 CARD16 vid_w B16; 251 INT16 vid_y B16;
241 CARD16 vid_h B16; 252 CARD16 vid_w B16;
242 INT16 drw_x B16; 253 CARD16 vid_h B16;
243 INT16 drw_y B16; 254 INT16 drw_x B16;
244 CARD16 drw_w B16; 255 INT16 drw_y B16;
245 CARD16 drw_h B16; 256 CARD16 drw_w B16;
257 CARD16 drw_h B16;
246 } xvGetVideoReq; 258 } xvGetVideoReq;
247 #define sz_xvGetVideoReq 32 259 #define sz_xvGetVideoReq 32
248 260
249 typedef struct { 261 typedef struct
250 CARD8 reqType; 262 {
251 CARD8 xvReqType; 263 CARD8 reqType;
252 CARD16 length B16; 264 CARD8 xvReqType;
253 XvPortID port B32; 265 CARD16 length B16;
254 Drawable drawable B32; 266 XvPortID port B32;
255 GContext gc B32; 267 Drawable drawable B32;
256 INT16 vid_x B16; 268 GContext gc B32;
257 INT16 vid_y B16; 269 INT16 vid_x B16;
258 CARD16 vid_w B16; 270 INT16 vid_y B16;
259 CARD16 vid_h B16; 271 CARD16 vid_w B16;
260 INT16 drw_x B16; 272 CARD16 vid_h B16;
261 INT16 drw_y B16; 273 INT16 drw_x B16;
262 CARD16 drw_w B16; 274 INT16 drw_y B16;
263 CARD16 drw_h B16; 275 CARD16 drw_w B16;
276 CARD16 drw_h B16;
264 } xvGetStillReq; 277 } xvGetStillReq;
265 #define sz_xvGetStillReq 32 278 #define sz_xvGetStillReq 32
266 279
267 typedef struct { 280 typedef struct
268 CARD8 reqType; 281 {
269 CARD8 xvReqType; 282 CARD8 reqType;
270 CARD16 length B16; 283 CARD8 xvReqType;
271 XvPortID port B32; 284 CARD16 length B16;
272 Time time B32; 285 XvPortID port B32;
286 Time time B32;
273 } xvGrabPortReq; 287 } xvGrabPortReq;
274 #define sz_xvGrabPortReq 12 288 #define sz_xvGrabPortReq 12
275 289
276 typedef struct { 290 typedef struct
277 CARD8 reqType; 291 {
278 CARD8 xvReqType; 292 CARD8 reqType;
279 CARD16 length B16; 293 CARD8 xvReqType;
280 XvPortID port B32; 294 CARD16 length B16;
281 Time time B32; 295 XvPortID port B32;
296 Time time B32;
282 } xvUngrabPortReq; 297 } xvUngrabPortReq;
283 #define sz_xvUngrabPortReq 12 298 #define sz_xvUngrabPortReq 12
284 299
285 typedef struct { 300 typedef struct
286 CARD8 reqType; 301 {
287 CARD8 xvReqType; 302 CARD8 reqType;
288 CARD16 length B16; 303 CARD8 xvReqType;
289 Drawable drawable B32; 304 CARD16 length B16;
290 BOOL onoff; 305 Drawable drawable B32;
291 CARD8 pad1; 306 BOOL onoff;
292 CARD16 pad2; 307 CARD8 pad1;
308 CARD16 pad2;
293 } xvSelectVideoNotifyReq; 309 } xvSelectVideoNotifyReq;
294 #define sz_xvSelectVideoNotifyReq 12 310 #define sz_xvSelectVideoNotifyReq 12
295 311
296 typedef struct { 312 typedef struct
297 CARD8 reqType; 313 {
298 CARD8 xvReqType; 314 CARD8 reqType;
299 CARD16 length B16; 315 CARD8 xvReqType;
300 XvPortID port B32; 316 CARD16 length B16;
301 BOOL onoff; 317 XvPortID port B32;
302 CARD8 pad1; 318 BOOL onoff;
303 CARD16 pad2; 319 CARD8 pad1;
320 CARD16 pad2;
304 } xvSelectPortNotifyReq; 321 } xvSelectPortNotifyReq;
305 #define sz_xvSelectPortNotifyReq 12 322 #define sz_xvSelectPortNotifyReq 12
306 323
307 typedef struct { 324 typedef struct
308 CARD8 reqType; 325 {
309 CARD8 xvReqType; 326 CARD8 reqType;
310 CARD16 length B16; 327 CARD8 xvReqType;
311 XvPortID port B32; 328 CARD16 length B16;
312 Drawable drawable B32; 329 XvPortID port B32;
330 Drawable drawable B32;
313 } xvStopVideoReq; 331 } xvStopVideoReq;
314 #define sz_xvStopVideoReq 12 332 #define sz_xvStopVideoReq 12
315 333
316 typedef struct { 334 typedef struct
317 CARD8 reqType; 335 {
318 CARD8 xvReqType; 336 CARD8 reqType;
319 CARD16 length B16; 337 CARD8 xvReqType;
320 XvPortID port B32; 338 CARD16 length B16;
321 Atom attribute B32; 339 XvPortID port B32;
322 INT32 value B32; 340 Atom attribute B32;
341 INT32 value B32;
323 } xvSetPortAttributeReq; 342 } xvSetPortAttributeReq;
324 #define sz_xvSetPortAttributeReq 16 343 #define sz_xvSetPortAttributeReq 16
325 344
326 typedef struct { 345 typedef struct
327 CARD8 reqType; 346 {
328 CARD8 xvReqType; 347 CARD8 reqType;
329 CARD16 length B16; 348 CARD8 xvReqType;
330 XvPortID port B32; 349 CARD16 length B16;
331 Atom attribute B32; 350 XvPortID port B32;
351 Atom attribute B32;
332 } xvGetPortAttributeReq; 352 } xvGetPortAttributeReq;
333 #define sz_xvGetPortAttributeReq 12 353 #define sz_xvGetPortAttributeReq 12
334 354
335 typedef struct { 355 typedef struct
336 CARD8 reqType; 356 {
337 CARD8 xvReqType; 357 CARD8 reqType;
338 CARD16 length B16; 358 CARD8 xvReqType;
339 XvPortID port B32; 359 CARD16 length B16;
340 CARD16 vid_w B16; 360 XvPortID port B32;
341 CARD16 vid_h B16; 361 CARD16 vid_w B16;
342 CARD16 drw_w B16; 362 CARD16 vid_h B16;
343 CARD16 drw_h B16; 363 CARD16 drw_w B16;
344 CARD8 motion; 364 CARD16 drw_h B16;
345 CARD8 pad1; 365 CARD8 motion;
346 CARD16 pad2 B16; 366 CARD8 pad1;
367 CARD16 pad2 B16;
347 } xvQueryBestSizeReq; 368 } xvQueryBestSizeReq;
348 #define sz_xvQueryBestSizeReq 20 369 #define sz_xvQueryBestSizeReq 20
349 370
350 typedef struct { 371 typedef struct
351 CARD8 reqType; 372 {
352 CARD8 xvReqType; 373 CARD8 reqType;
353 CARD16 length B16; 374 CARD8 xvReqType;
354 XvPortID port B32; 375 CARD16 length B16;
376 XvPortID port B32;
355 } xvQueryPortAttributesReq; 377 } xvQueryPortAttributesReq;
356 #define sz_xvQueryPortAttributesReq 8 378 #define sz_xvQueryPortAttributesReq 8
357 379
358 typedef struct { 380 typedef struct
359 CARD8 reqType; 381 {
360 CARD8 xvReqType; 382 CARD8 reqType;
361 CARD16 length B16; 383 CARD8 xvReqType;
362 XvPortID port B32; 384 CARD16 length B16;
363 Drawable drawable B32; 385 XvPortID port B32;
364 GContext gc B32; 386 Drawable drawable B32;
365 CARD32 id B32; 387 GContext gc B32;
366 INT16 src_x B16; 388 CARD32 id B32;
367 INT16 src_y B16; 389 INT16 src_x B16;
368 CARD16 src_w B16; 390 INT16 src_y B16;
369 CARD16 src_h B16; 391 CARD16 src_w B16;
370 INT16 drw_x B16; 392 CARD16 src_h B16;
371 INT16 drw_y B16; 393 INT16 drw_x B16;
372 CARD16 drw_w B16; 394 INT16 drw_y B16;
373 CARD16 drw_h B16; 395 CARD16 drw_w B16;
374 CARD16 width B16; 396 CARD16 drw_h B16;
375 CARD16 height B16; 397 CARD16 width B16;
398 CARD16 height B16;
376 } xvPutImageReq; 399 } xvPutImageReq;
377 #define sz_xvPutImageReq 40 400 #define sz_xvPutImageReq 40
378 401
379 typedef struct { 402 typedef struct
380 CARD8 reqType; 403 {
381 CARD8 xvReqType; 404 CARD8 reqType;
382 CARD16 length B16; 405 CARD8 xvReqType;
383 XvPortID port B32; 406 CARD16 length B16;
384 Drawable drawable B32; 407 XvPortID port B32;
385 GContext gc B32; 408 Drawable drawable B32;
386 ShmSeg shmseg B32; 409 GContext gc B32;
387 CARD32 id B32; 410 ShmSeg shmseg B32;
388 CARD32 offset B32; 411 CARD32 id B32;
389 INT16 src_x B16; 412 CARD32 offset B32;
390 INT16 src_y B16; 413 INT16 src_x B16;
391 CARD16 src_w B16; 414 INT16 src_y B16;
392 CARD16 src_h B16; 415 CARD16 src_w B16;
393 INT16 drw_x B16; 416 CARD16 src_h B16;
394 INT16 drw_y B16; 417 INT16 drw_x B16;
395 CARD16 drw_w B16; 418 INT16 drw_y B16;
396 CARD16 drw_h B16; 419 CARD16 drw_w B16;
397 CARD16 width B16; 420 CARD16 drw_h B16;
398 CARD16 height B16; 421 CARD16 width B16;
399 CARD8 send_event; 422 CARD16 height B16;
400 CARD8 pad1; 423 CARD8 send_event;
401 CARD16 pad2 B16; 424 CARD8 pad1;
425 CARD16 pad2 B16;
402 } xvShmPutImageReq; 426 } xvShmPutImageReq;
403 #define sz_xvShmPutImageReq 52 427 #define sz_xvShmPutImageReq 52
404 428
405 typedef struct { 429 typedef struct
406 CARD8 reqType; 430 {
407 CARD8 xvReqType; 431 CARD8 reqType;
408 CARD16 length B16; 432 CARD8 xvReqType;
409 XvPortID port B32; 433 CARD16 length B16;
434 XvPortID port B32;
410 } xvListImageFormatsReq; 435 } xvListImageFormatsReq;
411 #define sz_xvListImageFormatsReq 8 436 #define sz_xvListImageFormatsReq 8
412 437
413 typedef struct { 438 typedef struct
414 CARD8 reqType; 439 {
415 CARD8 xvReqType; 440 CARD8 reqType;
416 CARD16 length B16; 441 CARD8 xvReqType;
417 CARD32 port B32; 442 CARD16 length B16;
418 CARD32 id B32; 443 CARD32 port B32;
419 CARD16 width B16; 444 CARD32 id B32;
420 CARD16 height B16; 445 CARD16 width B16;
446 CARD16 height B16;
421 } xvQueryImageAttributesReq; 447 } xvQueryImageAttributesReq;
422 #define sz_xvQueryImageAttributesReq 16 448 #define sz_xvQueryImageAttributesReq 16
423 449
424 450
425 /* Replies */ 451 /* Replies */
426 452
427 typedef struct _QueryExtensionReply { 453 typedef struct _QueryExtensionReply
428 BYTE type; /* X_Reply */ 454 {
429 CARD8 padb1; 455 BYTE type; /* X_Reply */
430 CARD16 sequenceNumber B16; 456 CARD8 padb1;
431 CARD32 length B32; 457 CARD16 sequenceNumber B16;
432 CARD16 version B16; 458 CARD32 length B32;
433 CARD16 revision B16; 459 CARD16 version B16;
434 CARD32 padl4 B32; 460 CARD16 revision B16;
435 CARD32 padl5 B32; 461 CARD32 padl4 B32;
436 CARD32 padl6 B32; 462 CARD32 padl5 B32;
437 CARD32 padl7 B32; 463 CARD32 padl6 B32;
438 CARD32 padl8 B32; 464 CARD32 padl7 B32;
465 CARD32 padl8 B32;
439 } xvQueryExtensionReply; 466 } xvQueryExtensionReply;
440 #define sz_xvQueryExtensionReply 32 467 #define sz_xvQueryExtensionReply 32
441 468
442 typedef struct _QueryAdaptorsReply { 469 typedef struct _QueryAdaptorsReply
443 BYTE type; /* X_Reply */ 470 {
444 CARD8 padb1; 471 BYTE type; /* X_Reply */
445 CARD16 sequenceNumber B16; 472 CARD8 padb1;
446 CARD32 length B32; 473 CARD16 sequenceNumber B16;
447 CARD16 num_adaptors B16; 474 CARD32 length B32;
448 CARD16 pads3 B16; 475 CARD16 num_adaptors B16;
449 CARD32 padl4 B32; 476 CARD16 pads3 B16;
450 CARD32 padl5 B32; 477 CARD32 padl4 B32;
451 CARD32 padl6 B32; 478 CARD32 padl5 B32;
452 CARD32 padl7 B32; 479 CARD32 padl6 B32;
453 CARD32 padl8 B32; 480 CARD32 padl7 B32;
481 CARD32 padl8 B32;
454 } xvQueryAdaptorsReply; 482 } xvQueryAdaptorsReply;
455 #define sz_xvQueryAdaptorsReply 32 483 #define sz_xvQueryAdaptorsReply 32
456 484
457 typedef struct _QueryEncodingsReply { 485 typedef struct _QueryEncodingsReply
458 BYTE type; /* X_Reply */ 486 {
459 CARD8 padb1; 487 BYTE type; /* X_Reply */
460 CARD16 sequenceNumber B16; 488 CARD8 padb1;
461 CARD32 length B32; 489 CARD16 sequenceNumber B16;
462 CARD16 num_encodings B16; 490 CARD32 length B32;
463 CARD32 padl3 B32; 491 CARD16 num_encodings B16;
464 CARD32 padl4 B32; 492 CARD32 padl3 B32;
465 CARD32 padl5 B32; 493 CARD32 padl4 B32;
466 CARD32 padl6 B32; 494 CARD32 padl5 B32;
467 CARD32 padl7 B32; 495 CARD32 padl6 B32;
468 CARD32 padl8 B32; 496 CARD32 padl7 B32;
497 CARD32 padl8 B32;
469 } xvQueryEncodingsReply; 498 } xvQueryEncodingsReply;
470 #define sz_xvQueryEncodingsReply 32 499 #define sz_xvQueryEncodingsReply 32
471 500
472 typedef struct { 501 typedef struct
473 BYTE type; /* X_Reply */ 502 {
474 BYTE result; 503 BYTE type; /* X_Reply */
475 CARD16 sequenceNumber B16; 504 BYTE result;
476 CARD32 length B32; /* 0 */ 505 CARD16 sequenceNumber B16;
477 CARD32 padl3 B32; 506 CARD32 length B32; /* 0 */
478 CARD32 padl4 B32; 507 CARD32 padl3 B32;
479 CARD32 padl5 B32; 508 CARD32 padl4 B32;
480 CARD32 padl6 B32; 509 CARD32 padl5 B32;
481 CARD32 padl7 B32; 510 CARD32 padl6 B32;
482 CARD32 padl8 B32; 511 CARD32 padl7 B32;
512 CARD32 padl8 B32;
483 } xvGrabPortReply; 513 } xvGrabPortReply;
484 #define sz_xvGrabPortReply 32 514 #define sz_xvGrabPortReply 32
485 515
486 typedef struct { 516 typedef struct
487 BYTE type; /* X_Reply */ 517 {
488 BYTE padb1; 518 BYTE type; /* X_Reply */
489 CARD16 sequenceNumber B16; 519 BYTE padb1;
490 CARD32 length B32; /* 0 */ 520 CARD16 sequenceNumber B16;
491 INT32 value B32; 521 CARD32 length B32; /* 0 */
492 CARD32 padl4 B32; 522 INT32 value B32;
493 CARD32 padl5 B32; 523 CARD32 padl4 B32;
494 CARD32 padl6 B32; 524 CARD32 padl5 B32;
495 CARD32 padl7 B32; 525 CARD32 padl6 B32;
496 CARD32 padl8 B32; 526 CARD32 padl7 B32;
527 CARD32 padl8 B32;
497 } xvGetPortAttributeReply; 528 } xvGetPortAttributeReply;
498 #define sz_xvGetPortAttributeReply 32 529 #define sz_xvGetPortAttributeReply 32
499 530
500 typedef struct { 531 typedef struct
501 BYTE type; /* X_Reply */ 532 {
502 BYTE padb1; 533 BYTE type; /* X_Reply */
503 CARD16 sequenceNumber B16; 534 BYTE padb1;
504 CARD32 length B32; /* 0 */ 535 CARD16 sequenceNumber B16;
505 CARD16 actual_width B16; 536 CARD32 length B32; /* 0 */
506 CARD16 actual_height B16; 537 CARD16 actual_width B16;
507 CARD32 padl4 B32; 538 CARD16 actual_height B16;
508 CARD32 padl5 B32; 539 CARD32 padl4 B32;
509 CARD32 padl6 B32; 540 CARD32 padl5 B32;
510 CARD32 padl7 B32; 541 CARD32 padl6 B32;
511 CARD32 padl8 B32; 542 CARD32 padl7 B32;
543 CARD32 padl8 B32;
512 } xvQueryBestSizeReply; 544 } xvQueryBestSizeReply;
513 #define sz_xvQueryBestSizeReply 32 545 #define sz_xvQueryBestSizeReply 32
514 546
515 typedef struct { 547 typedef struct
516 BYTE type; /* X_Reply */ 548 {
517 BYTE padb1; 549 BYTE type; /* X_Reply */
518 CARD16 sequenceNumber B16; 550 BYTE padb1;
519 CARD32 length B32; /* 0 */ 551 CARD16 sequenceNumber B16;
520 CARD32 num_attributes B32; 552 CARD32 length B32; /* 0 */
521 CARD32 text_size B32; 553 CARD32 num_attributes B32;
522 CARD32 padl5 B32; 554 CARD32 text_size B32;
523 CARD32 padl6 B32; 555 CARD32 padl5 B32;
524 CARD32 padl7 B32; 556 CARD32 padl6 B32;
525 CARD32 padl8 B32; 557 CARD32 padl7 B32;
558 CARD32 padl8 B32;
526 } xvQueryPortAttributesReply; 559 } xvQueryPortAttributesReply;
527 #define sz_xvQueryPortAttributesReply 32 560 #define sz_xvQueryPortAttributesReply 32
528 561
529 typedef struct { 562 typedef struct
530 BYTE type; /* X_Reply */ 563 {
531 BYTE padb1; 564 BYTE type; /* X_Reply */
532 CARD16 sequenceNumber B16; 565 BYTE padb1;
533 CARD32 length B32; 566 CARD16 sequenceNumber B16;
534 CARD32 num_formats B32; 567 CARD32 length B32;
535 CARD32 padl4 B32; 568 CARD32 num_formats B32;
536 CARD32 padl5 B32; 569 CARD32 padl4 B32;
537 CARD32 padl6 B32; 570 CARD32 padl5 B32;
538 CARD32 padl7 B32; 571 CARD32 padl6 B32;
539 CARD32 padl8 B32; 572 CARD32 padl7 B32;
573 CARD32 padl8 B32;
540 } xvListImageFormatsReply; 574 } xvListImageFormatsReply;
541 #define sz_xvListImageFormatsReply 32 575 #define sz_xvListImageFormatsReply 32
542 576
543 typedef struct { 577 typedef struct
544 BYTE type; /* X_Reply */ 578 {
545 BYTE padb1; 579 BYTE type; /* X_Reply */
546 CARD16 sequenceNumber B16; 580 BYTE padb1;
547 CARD32 length B32; 581 CARD16 sequenceNumber B16;
548 CARD32 num_planes B32; 582 CARD32 length B32;
549 CARD32 data_size B32; 583 CARD32 num_planes B32;
550 CARD16 width B16; 584 CARD32 data_size B32;
551 CARD16 height B16; 585 CARD16 width B16;
552 CARD32 padl6 B32; 586 CARD16 height B16;
553 CARD32 padl7 B32; 587 CARD32 padl6 B32;
554 CARD32 padl8 B32; 588 CARD32 padl7 B32;
589 CARD32 padl8 B32;
555 } xvQueryImageAttributesReply; 590 } xvQueryImageAttributesReply;
556 #define sz_xvQueryImageAttributesReply 32 591 #define sz_xvQueryImageAttributesReply 32
557 592
558 /* DEFINE EVENT STRUCTURE */ 593 /* DEFINE EVENT STRUCTURE */
559 594
560 typedef struct { 595 typedef struct
561 union { 596 {
562 struct { 597 union
563 BYTE type; 598 {
564 BYTE detail; 599 struct
565 CARD16 sequenceNumber B16; 600 {
601 BYTE type;
602 BYTE detail;
603 CARD16 sequenceNumber B16;
604 } u;
605 struct
606 {
607 BYTE type;
608 BYTE reason;
609 CARD16 sequenceNumber B16;
610 Time time B32;
611 Drawable drawable B32;
612 XvPortID port B32;
613 CARD32 padl5 B32;
614 CARD32 padl6 B32;
615 CARD32 padl7 B32;
616 CARD32 padl8 B32;
617 } videoNotify;
618 struct
619 {
620 BYTE type;
621 BYTE padb1;
622 CARD16 sequenceNumber B16;
623 Time time B32;
624 XvPortID port B32;
625 Atom attribute B32;
626 INT32 value B32;
627 CARD32 padl6 B32;
628 CARD32 padl7 B32;
629 CARD32 padl8 B32;
630 } portNotify;
566 } u; 631 } u;
567 struct {
568 BYTE type;
569 BYTE reason;
570 CARD16 sequenceNumber B16;
571 Time time B32;
572 Drawable drawable B32;
573 XvPortID port B32;
574 CARD32 padl5 B32;
575 CARD32 padl6 B32;
576 CARD32 padl7 B32;
577 CARD32 padl8 B32;
578 } videoNotify;
579 struct {
580 BYTE type;
581 BYTE padb1;
582 CARD16 sequenceNumber B16;
583 Time time B32;
584 XvPortID port B32;
585 Atom attribute B32;
586 INT32 value B32;
587 CARD32 padl6 B32;
588 CARD32 padl7 B32;
589 CARD32 padl8 B32;
590 } portNotify;
591 } u;
592 } xvEvent; 632 } xvEvent;
593 633
594 #undef XvPortID 634 #undef XvPortID
595 #undef XvEncodingID 635 #undef XvEncodingID
596 #undef ShmSeg 636 #undef ShmSeg
599 #undef GContext 639 #undef GContext
600 #undef Time 640 #undef Time
601 #undef Atom 641 #undef Atom
602 642
603 #endif /* XVPROTO_H */ 643 #endif /* XVPROTO_H */
604 644 /* vi: set ts=4 sw=4 expandtab: */