xvmc.c revision 1.1 1 /*
2 * This file generated automatically from xvmc.xml by c_client.py.
3 * Edit at your peril.
4 */
5
6 #include <string.h>
7 #include <assert.h>
8 #include "xcbext.h"
9 #include "xvmc.h"
10 #include "xproto.h"
11 #include "shm.h"
12 #include "xv.h"
13
14 xcb_extension_t xcb_xvmc_id = { "XVideo-MotionCompensation", 0 };
15
16
17 /*****************************************************************************
18 **
19 ** void xcb_xvmc_context_next
20 **
21 ** @param xcb_xvmc_context_iterator_t *i
22 ** @returns void
23 **
24 *****************************************************************************/
25
26 void
27 xcb_xvmc_context_next (xcb_xvmc_context_iterator_t *i /**< */)
28 {
29 --i->rem;
30 ++i->data;
31 i->index += sizeof(xcb_xvmc_context_t);
32 }
33
34
35 /*****************************************************************************
36 **
37 ** xcb_generic_iterator_t xcb_xvmc_context_end
38 **
39 ** @param xcb_xvmc_context_iterator_t i
40 ** @returns xcb_generic_iterator_t
41 **
42 *****************************************************************************/
43
44 xcb_generic_iterator_t
45 xcb_xvmc_context_end (xcb_xvmc_context_iterator_t i /**< */)
46 {
47 xcb_generic_iterator_t ret;
48 ret.data = i.data + i.rem;
49 ret.index = i.index + ((char *) ret.data - (char *) i.data);
50 ret.rem = 0;
51 return ret;
52 }
53
54
55 /*****************************************************************************
56 **
57 ** void xcb_xvmc_surface_next
58 **
59 ** @param xcb_xvmc_surface_iterator_t *i
60 ** @returns void
61 **
62 *****************************************************************************/
63
64 void
65 xcb_xvmc_surface_next (xcb_xvmc_surface_iterator_t *i /**< */)
66 {
67 --i->rem;
68 ++i->data;
69 i->index += sizeof(xcb_xvmc_surface_t);
70 }
71
72
73 /*****************************************************************************
74 **
75 ** xcb_generic_iterator_t xcb_xvmc_surface_end
76 **
77 ** @param xcb_xvmc_surface_iterator_t i
78 ** @returns xcb_generic_iterator_t
79 **
80 *****************************************************************************/
81
82 xcb_generic_iterator_t
83 xcb_xvmc_surface_end (xcb_xvmc_surface_iterator_t i /**< */)
84 {
85 xcb_generic_iterator_t ret;
86 ret.data = i.data + i.rem;
87 ret.index = i.index + ((char *) ret.data - (char *) i.data);
88 ret.rem = 0;
89 return ret;
90 }
91
92
93 /*****************************************************************************
94 **
95 ** void xcb_xvmc_subpicture_next
96 **
97 ** @param xcb_xvmc_subpicture_iterator_t *i
98 ** @returns void
99 **
100 *****************************************************************************/
101
102 void
103 xcb_xvmc_subpicture_next (xcb_xvmc_subpicture_iterator_t *i /**< */)
104 {
105 --i->rem;
106 ++i->data;
107 i->index += sizeof(xcb_xvmc_subpicture_t);
108 }
109
110
111 /*****************************************************************************
112 **
113 ** xcb_generic_iterator_t xcb_xvmc_subpicture_end
114 **
115 ** @param xcb_xvmc_subpicture_iterator_t i
116 ** @returns xcb_generic_iterator_t
117 **
118 *****************************************************************************/
119
120 xcb_generic_iterator_t
121 xcb_xvmc_subpicture_end (xcb_xvmc_subpicture_iterator_t i /**< */)
122 {
123 xcb_generic_iterator_t ret;
124 ret.data = i.data + i.rem;
125 ret.index = i.index + ((char *) ret.data - (char *) i.data);
126 ret.rem = 0;
127 return ret;
128 }
129
130
131 /*****************************************************************************
132 **
133 ** void xcb_xvmc_surface_info_next
134 **
135 ** @param xcb_xvmc_surface_info_iterator_t *i
136 ** @returns void
137 **
138 *****************************************************************************/
139
140 void
141 xcb_xvmc_surface_info_next (xcb_xvmc_surface_info_iterator_t *i /**< */)
142 {
143 --i->rem;
144 ++i->data;
145 i->index += sizeof(xcb_xvmc_surface_info_t);
146 }
147
148
149 /*****************************************************************************
150 **
151 ** xcb_generic_iterator_t xcb_xvmc_surface_info_end
152 **
153 ** @param xcb_xvmc_surface_info_iterator_t i
154 ** @returns xcb_generic_iterator_t
155 **
156 *****************************************************************************/
157
158 xcb_generic_iterator_t
159 xcb_xvmc_surface_info_end (xcb_xvmc_surface_info_iterator_t i /**< */)
160 {
161 xcb_generic_iterator_t ret;
162 ret.data = i.data + i.rem;
163 ret.index = i.index + ((char *) ret.data - (char *) i.data);
164 ret.rem = 0;
165 return ret;
166 }
167
168
169 /*****************************************************************************
170 **
171 ** xcb_xvmc_query_version_cookie_t xcb_xvmc_query_version
172 **
173 ** @param xcb_connection_t *c
174 ** @returns xcb_xvmc_query_version_cookie_t
175 **
176 *****************************************************************************/
177
178 xcb_xvmc_query_version_cookie_t
179 xcb_xvmc_query_version (xcb_connection_t *c /**< */)
180 {
181 static const xcb_protocol_request_t xcb_req = {
182 /* count */ 2,
183 /* ext */ &xcb_xvmc_id,
184 /* opcode */ XCB_XVMC_QUERY_VERSION,
185 /* isvoid */ 0
186 };
187
188 struct iovec xcb_parts[4];
189 xcb_xvmc_query_version_cookie_t xcb_ret;
190 xcb_xvmc_query_version_request_t xcb_out;
191
192
193 xcb_parts[2].iov_base = (char *) &xcb_out;
194 xcb_parts[2].iov_len = sizeof(xcb_out);
195 xcb_parts[3].iov_base = 0;
196 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
197 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
198 return xcb_ret;
199 }
200
201
202 /*****************************************************************************
203 **
204 ** xcb_xvmc_query_version_cookie_t xcb_xvmc_query_version_unchecked
205 **
206 ** @param xcb_connection_t *c
207 ** @returns xcb_xvmc_query_version_cookie_t
208 **
209 *****************************************************************************/
210
211 xcb_xvmc_query_version_cookie_t
212 xcb_xvmc_query_version_unchecked (xcb_connection_t *c /**< */)
213 {
214 static const xcb_protocol_request_t xcb_req = {
215 /* count */ 2,
216 /* ext */ &xcb_xvmc_id,
217 /* opcode */ XCB_XVMC_QUERY_VERSION,
218 /* isvoid */ 0
219 };
220
221 struct iovec xcb_parts[4];
222 xcb_xvmc_query_version_cookie_t xcb_ret;
223 xcb_xvmc_query_version_request_t xcb_out;
224
225
226 xcb_parts[2].iov_base = (char *) &xcb_out;
227 xcb_parts[2].iov_len = sizeof(xcb_out);
228 xcb_parts[3].iov_base = 0;
229 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
230 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
231 return xcb_ret;
232 }
233
234
235 /*****************************************************************************
236 **
237 ** xcb_xvmc_query_version_reply_t * xcb_xvmc_query_version_reply
238 **
239 ** @param xcb_connection_t *c
240 ** @param xcb_xvmc_query_version_cookie_t cookie
241 ** @param xcb_generic_error_t **e
242 ** @returns xcb_xvmc_query_version_reply_t *
243 **
244 *****************************************************************************/
245
246 xcb_xvmc_query_version_reply_t *
247 xcb_xvmc_query_version_reply (xcb_connection_t *c /**< */,
248 xcb_xvmc_query_version_cookie_t cookie /**< */,
249 xcb_generic_error_t **e /**< */)
250 {
251 return (xcb_xvmc_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
252 }
253
254
255 /*****************************************************************************
256 **
257 ** xcb_xvmc_list_surface_types_cookie_t xcb_xvmc_list_surface_types
258 **
259 ** @param xcb_connection_t *c
260 ** @param xcb_xv_port_t port_id
261 ** @returns xcb_xvmc_list_surface_types_cookie_t
262 **
263 *****************************************************************************/
264
265 xcb_xvmc_list_surface_types_cookie_t
266 xcb_xvmc_list_surface_types (xcb_connection_t *c /**< */,
267 xcb_xv_port_t port_id /**< */)
268 {
269 static const xcb_protocol_request_t xcb_req = {
270 /* count */ 2,
271 /* ext */ &xcb_xvmc_id,
272 /* opcode */ XCB_XVMC_LIST_SURFACE_TYPES,
273 /* isvoid */ 0
274 };
275
276 struct iovec xcb_parts[4];
277 xcb_xvmc_list_surface_types_cookie_t xcb_ret;
278 xcb_xvmc_list_surface_types_request_t xcb_out;
279
280 xcb_out.port_id = port_id;
281
282 xcb_parts[2].iov_base = (char *) &xcb_out;
283 xcb_parts[2].iov_len = sizeof(xcb_out);
284 xcb_parts[3].iov_base = 0;
285 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
286 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
287 return xcb_ret;
288 }
289
290
291 /*****************************************************************************
292 **
293 ** xcb_xvmc_list_surface_types_cookie_t xcb_xvmc_list_surface_types_unchecked
294 **
295 ** @param xcb_connection_t *c
296 ** @param xcb_xv_port_t port_id
297 ** @returns xcb_xvmc_list_surface_types_cookie_t
298 **
299 *****************************************************************************/
300
301 xcb_xvmc_list_surface_types_cookie_t
302 xcb_xvmc_list_surface_types_unchecked (xcb_connection_t *c /**< */,
303 xcb_xv_port_t port_id /**< */)
304 {
305 static const xcb_protocol_request_t xcb_req = {
306 /* count */ 2,
307 /* ext */ &xcb_xvmc_id,
308 /* opcode */ XCB_XVMC_LIST_SURFACE_TYPES,
309 /* isvoid */ 0
310 };
311
312 struct iovec xcb_parts[4];
313 xcb_xvmc_list_surface_types_cookie_t xcb_ret;
314 xcb_xvmc_list_surface_types_request_t xcb_out;
315
316 xcb_out.port_id = port_id;
317
318 xcb_parts[2].iov_base = (char *) &xcb_out;
319 xcb_parts[2].iov_len = sizeof(xcb_out);
320 xcb_parts[3].iov_base = 0;
321 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
322 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
323 return xcb_ret;
324 }
325
326
327 /*****************************************************************************
328 **
329 ** xcb_xvmc_surface_info_t * xcb_xvmc_list_surface_types_surfaces
330 **
331 ** @param const xcb_xvmc_list_surface_types_reply_t *R
332 ** @returns xcb_xvmc_surface_info_t *
333 **
334 *****************************************************************************/
335
336 xcb_xvmc_surface_info_t *
337 xcb_xvmc_list_surface_types_surfaces (const xcb_xvmc_list_surface_types_reply_t *R /**< */)
338 {
339 return (xcb_xvmc_surface_info_t *) (R + 1);
340 }
341
342
343 /*****************************************************************************
344 **
345 ** int xcb_xvmc_list_surface_types_surfaces_length
346 **
347 ** @param const xcb_xvmc_list_surface_types_reply_t *R
348 ** @returns int
349 **
350 *****************************************************************************/
351
352 int
353 xcb_xvmc_list_surface_types_surfaces_length (const xcb_xvmc_list_surface_types_reply_t *R /**< */)
354 {
355 return R->num;
356 }
357
358
359 /*****************************************************************************
360 **
361 ** xcb_xvmc_surface_info_iterator_t xcb_xvmc_list_surface_types_surfaces_iterator
362 **
363 ** @param const xcb_xvmc_list_surface_types_reply_t *R
364 ** @returns xcb_xvmc_surface_info_iterator_t
365 **
366 *****************************************************************************/
367
368 xcb_xvmc_surface_info_iterator_t
369 xcb_xvmc_list_surface_types_surfaces_iterator (const xcb_xvmc_list_surface_types_reply_t *R /**< */)
370 {
371 xcb_xvmc_surface_info_iterator_t i;
372 i.data = (xcb_xvmc_surface_info_t *) (R + 1);
373 i.rem = R->num;
374 i.index = (char *) i.data - (char *) R;
375 return i;
376 }
377
378
379 /*****************************************************************************
380 **
381 ** xcb_xvmc_list_surface_types_reply_t * xcb_xvmc_list_surface_types_reply
382 **
383 ** @param xcb_connection_t *c
384 ** @param xcb_xvmc_list_surface_types_cookie_t cookie
385 ** @param xcb_generic_error_t **e
386 ** @returns xcb_xvmc_list_surface_types_reply_t *
387 **
388 *****************************************************************************/
389
390 xcb_xvmc_list_surface_types_reply_t *
391 xcb_xvmc_list_surface_types_reply (xcb_connection_t *c /**< */,
392 xcb_xvmc_list_surface_types_cookie_t cookie /**< */,
393 xcb_generic_error_t **e /**< */)
394 {
395 return (xcb_xvmc_list_surface_types_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
396 }
397
398
399 /*****************************************************************************
400 **
401 ** xcb_xvmc_create_context_cookie_t xcb_xvmc_create_context
402 **
403 ** @param xcb_connection_t *c
404 ** @param xcb_xvmc_context_t context_id
405 ** @param xcb_xv_port_t port_id
406 ** @param xcb_xvmc_surface_t surface_id
407 ** @param uint16_t width
408 ** @param uint16_t height
409 ** @param uint32_t flags
410 ** @returns xcb_xvmc_create_context_cookie_t
411 **
412 *****************************************************************************/
413
414 xcb_xvmc_create_context_cookie_t
415 xcb_xvmc_create_context (xcb_connection_t *c /**< */,
416 xcb_xvmc_context_t context_id /**< */,
417 xcb_xv_port_t port_id /**< */,
418 xcb_xvmc_surface_t surface_id /**< */,
419 uint16_t width /**< */,
420 uint16_t height /**< */,
421 uint32_t flags /**< */)
422 {
423 static const xcb_protocol_request_t xcb_req = {
424 /* count */ 2,
425 /* ext */ &xcb_xvmc_id,
426 /* opcode */ XCB_XVMC_CREATE_CONTEXT,
427 /* isvoid */ 0
428 };
429
430 struct iovec xcb_parts[4];
431 xcb_xvmc_create_context_cookie_t xcb_ret;
432 xcb_xvmc_create_context_request_t xcb_out;
433
434 xcb_out.context_id = context_id;
435 xcb_out.port_id = port_id;
436 xcb_out.surface_id = surface_id;
437 xcb_out.width = width;
438 xcb_out.height = height;
439 xcb_out.flags = flags;
440
441 xcb_parts[2].iov_base = (char *) &xcb_out;
442 xcb_parts[2].iov_len = sizeof(xcb_out);
443 xcb_parts[3].iov_base = 0;
444 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
445 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
446 return xcb_ret;
447 }
448
449
450 /*****************************************************************************
451 **
452 ** xcb_xvmc_create_context_cookie_t xcb_xvmc_create_context_unchecked
453 **
454 ** @param xcb_connection_t *c
455 ** @param xcb_xvmc_context_t context_id
456 ** @param xcb_xv_port_t port_id
457 ** @param xcb_xvmc_surface_t surface_id
458 ** @param uint16_t width
459 ** @param uint16_t height
460 ** @param uint32_t flags
461 ** @returns xcb_xvmc_create_context_cookie_t
462 **
463 *****************************************************************************/
464
465 xcb_xvmc_create_context_cookie_t
466 xcb_xvmc_create_context_unchecked (xcb_connection_t *c /**< */,
467 xcb_xvmc_context_t context_id /**< */,
468 xcb_xv_port_t port_id /**< */,
469 xcb_xvmc_surface_t surface_id /**< */,
470 uint16_t width /**< */,
471 uint16_t height /**< */,
472 uint32_t flags /**< */)
473 {
474 static const xcb_protocol_request_t xcb_req = {
475 /* count */ 2,
476 /* ext */ &xcb_xvmc_id,
477 /* opcode */ XCB_XVMC_CREATE_CONTEXT,
478 /* isvoid */ 0
479 };
480
481 struct iovec xcb_parts[4];
482 xcb_xvmc_create_context_cookie_t xcb_ret;
483 xcb_xvmc_create_context_request_t xcb_out;
484
485 xcb_out.context_id = context_id;
486 xcb_out.port_id = port_id;
487 xcb_out.surface_id = surface_id;
488 xcb_out.width = width;
489 xcb_out.height = height;
490 xcb_out.flags = flags;
491
492 xcb_parts[2].iov_base = (char *) &xcb_out;
493 xcb_parts[2].iov_len = sizeof(xcb_out);
494 xcb_parts[3].iov_base = 0;
495 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
496 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
497 return xcb_ret;
498 }
499
500
501 /*****************************************************************************
502 **
503 ** uint32_t * xcb_xvmc_create_context_priv_data
504 **
505 ** @param const xcb_xvmc_create_context_reply_t *R
506 ** @returns uint32_t *
507 **
508 *****************************************************************************/
509
510 uint32_t *
511 xcb_xvmc_create_context_priv_data (const xcb_xvmc_create_context_reply_t *R /**< */)
512 {
513 return (uint32_t *) (R + 1);
514 }
515
516
517 /*****************************************************************************
518 **
519 ** int xcb_xvmc_create_context_priv_data_length
520 **
521 ** @param const xcb_xvmc_create_context_reply_t *R
522 ** @returns int
523 **
524 *****************************************************************************/
525
526 int
527 xcb_xvmc_create_context_priv_data_length (const xcb_xvmc_create_context_reply_t *R /**< */)
528 {
529 return R->length;
530 }
531
532
533 /*****************************************************************************
534 **
535 ** xcb_generic_iterator_t xcb_xvmc_create_context_priv_data_end
536 **
537 ** @param const xcb_xvmc_create_context_reply_t *R
538 ** @returns xcb_generic_iterator_t
539 **
540 *****************************************************************************/
541
542 xcb_generic_iterator_t
543 xcb_xvmc_create_context_priv_data_end (const xcb_xvmc_create_context_reply_t *R /**< */)
544 {
545 xcb_generic_iterator_t i;
546 i.data = ((uint32_t *) (R + 1)) + (R->length);
547 i.rem = 0;
548 i.index = (char *) i.data - (char *) R;
549 return i;
550 }
551
552
553 /*****************************************************************************
554 **
555 ** xcb_xvmc_create_context_reply_t * xcb_xvmc_create_context_reply
556 **
557 ** @param xcb_connection_t *c
558 ** @param xcb_xvmc_create_context_cookie_t cookie
559 ** @param xcb_generic_error_t **e
560 ** @returns xcb_xvmc_create_context_reply_t *
561 **
562 *****************************************************************************/
563
564 xcb_xvmc_create_context_reply_t *
565 xcb_xvmc_create_context_reply (xcb_connection_t *c /**< */,
566 xcb_xvmc_create_context_cookie_t cookie /**< */,
567 xcb_generic_error_t **e /**< */)
568 {
569 return (xcb_xvmc_create_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
570 }
571
572
573 /*****************************************************************************
574 **
575 ** xcb_void_cookie_t xcb_xvmc_destroy_context_checked
576 **
577 ** @param xcb_connection_t *c
578 ** @param xcb_xvmc_context_t context_id
579 ** @returns xcb_void_cookie_t
580 **
581 *****************************************************************************/
582
583 xcb_void_cookie_t
584 xcb_xvmc_destroy_context_checked (xcb_connection_t *c /**< */,
585 xcb_xvmc_context_t context_id /**< */)
586 {
587 static const xcb_protocol_request_t xcb_req = {
588 /* count */ 2,
589 /* ext */ &xcb_xvmc_id,
590 /* opcode */ XCB_XVMC_DESTROY_CONTEXT,
591 /* isvoid */ 1
592 };
593
594 struct iovec xcb_parts[4];
595 xcb_void_cookie_t xcb_ret;
596 xcb_xvmc_destroy_context_request_t xcb_out;
597
598 xcb_out.context_id = context_id;
599
600 xcb_parts[2].iov_base = (char *) &xcb_out;
601 xcb_parts[2].iov_len = sizeof(xcb_out);
602 xcb_parts[3].iov_base = 0;
603 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
604 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
605 return xcb_ret;
606 }
607
608
609 /*****************************************************************************
610 **
611 ** xcb_void_cookie_t xcb_xvmc_destroy_context
612 **
613 ** @param xcb_connection_t *c
614 ** @param xcb_xvmc_context_t context_id
615 ** @returns xcb_void_cookie_t
616 **
617 *****************************************************************************/
618
619 xcb_void_cookie_t
620 xcb_xvmc_destroy_context (xcb_connection_t *c /**< */,
621 xcb_xvmc_context_t context_id /**< */)
622 {
623 static const xcb_protocol_request_t xcb_req = {
624 /* count */ 2,
625 /* ext */ &xcb_xvmc_id,
626 /* opcode */ XCB_XVMC_DESTROY_CONTEXT,
627 /* isvoid */ 1
628 };
629
630 struct iovec xcb_parts[4];
631 xcb_void_cookie_t xcb_ret;
632 xcb_xvmc_destroy_context_request_t xcb_out;
633
634 xcb_out.context_id = context_id;
635
636 xcb_parts[2].iov_base = (char *) &xcb_out;
637 xcb_parts[2].iov_len = sizeof(xcb_out);
638 xcb_parts[3].iov_base = 0;
639 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
640 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
641 return xcb_ret;
642 }
643
644
645 /*****************************************************************************
646 **
647 ** xcb_xvmc_create_surface_cookie_t xcb_xvmc_create_surface
648 **
649 ** @param xcb_connection_t *c
650 ** @param xcb_xvmc_surface_t surface_id
651 ** @param xcb_xvmc_context_t context_id
652 ** @returns xcb_xvmc_create_surface_cookie_t
653 **
654 *****************************************************************************/
655
656 xcb_xvmc_create_surface_cookie_t
657 xcb_xvmc_create_surface (xcb_connection_t *c /**< */,
658 xcb_xvmc_surface_t surface_id /**< */,
659 xcb_xvmc_context_t context_id /**< */)
660 {
661 static const xcb_protocol_request_t xcb_req = {
662 /* count */ 2,
663 /* ext */ &xcb_xvmc_id,
664 /* opcode */ XCB_XVMC_CREATE_SURFACE,
665 /* isvoid */ 0
666 };
667
668 struct iovec xcb_parts[4];
669 xcb_xvmc_create_surface_cookie_t xcb_ret;
670 xcb_xvmc_create_surface_request_t xcb_out;
671
672 xcb_out.surface_id = surface_id;
673 xcb_out.context_id = context_id;
674
675 xcb_parts[2].iov_base = (char *) &xcb_out;
676 xcb_parts[2].iov_len = sizeof(xcb_out);
677 xcb_parts[3].iov_base = 0;
678 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
679 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
680 return xcb_ret;
681 }
682
683
684 /*****************************************************************************
685 **
686 ** xcb_xvmc_create_surface_cookie_t xcb_xvmc_create_surface_unchecked
687 **
688 ** @param xcb_connection_t *c
689 ** @param xcb_xvmc_surface_t surface_id
690 ** @param xcb_xvmc_context_t context_id
691 ** @returns xcb_xvmc_create_surface_cookie_t
692 **
693 *****************************************************************************/
694
695 xcb_xvmc_create_surface_cookie_t
696 xcb_xvmc_create_surface_unchecked (xcb_connection_t *c /**< */,
697 xcb_xvmc_surface_t surface_id /**< */,
698 xcb_xvmc_context_t context_id /**< */)
699 {
700 static const xcb_protocol_request_t xcb_req = {
701 /* count */ 2,
702 /* ext */ &xcb_xvmc_id,
703 /* opcode */ XCB_XVMC_CREATE_SURFACE,
704 /* isvoid */ 0
705 };
706
707 struct iovec xcb_parts[4];
708 xcb_xvmc_create_surface_cookie_t xcb_ret;
709 xcb_xvmc_create_surface_request_t xcb_out;
710
711 xcb_out.surface_id = surface_id;
712 xcb_out.context_id = context_id;
713
714 xcb_parts[2].iov_base = (char *) &xcb_out;
715 xcb_parts[2].iov_len = sizeof(xcb_out);
716 xcb_parts[3].iov_base = 0;
717 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
718 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
719 return xcb_ret;
720 }
721
722
723 /*****************************************************************************
724 **
725 ** uint32_t * xcb_xvmc_create_surface_priv_data
726 **
727 ** @param const xcb_xvmc_create_surface_reply_t *R
728 ** @returns uint32_t *
729 **
730 *****************************************************************************/
731
732 uint32_t *
733 xcb_xvmc_create_surface_priv_data (const xcb_xvmc_create_surface_reply_t *R /**< */)
734 {
735 return (uint32_t *) (R + 1);
736 }
737
738
739 /*****************************************************************************
740 **
741 ** int xcb_xvmc_create_surface_priv_data_length
742 **
743 ** @param const xcb_xvmc_create_surface_reply_t *R
744 ** @returns int
745 **
746 *****************************************************************************/
747
748 int
749 xcb_xvmc_create_surface_priv_data_length (const xcb_xvmc_create_surface_reply_t *R /**< */)
750 {
751 return R->length;
752 }
753
754
755 /*****************************************************************************
756 **
757 ** xcb_generic_iterator_t xcb_xvmc_create_surface_priv_data_end
758 **
759 ** @param const xcb_xvmc_create_surface_reply_t *R
760 ** @returns xcb_generic_iterator_t
761 **
762 *****************************************************************************/
763
764 xcb_generic_iterator_t
765 xcb_xvmc_create_surface_priv_data_end (const xcb_xvmc_create_surface_reply_t *R /**< */)
766 {
767 xcb_generic_iterator_t i;
768 i.data = ((uint32_t *) (R + 1)) + (R->length);
769 i.rem = 0;
770 i.index = (char *) i.data - (char *) R;
771 return i;
772 }
773
774
775 /*****************************************************************************
776 **
777 ** xcb_xvmc_create_surface_reply_t * xcb_xvmc_create_surface_reply
778 **
779 ** @param xcb_connection_t *c
780 ** @param xcb_xvmc_create_surface_cookie_t cookie
781 ** @param xcb_generic_error_t **e
782 ** @returns xcb_xvmc_create_surface_reply_t *
783 **
784 *****************************************************************************/
785
786 xcb_xvmc_create_surface_reply_t *
787 xcb_xvmc_create_surface_reply (xcb_connection_t *c /**< */,
788 xcb_xvmc_create_surface_cookie_t cookie /**< */,
789 xcb_generic_error_t **e /**< */)
790 {
791 return (xcb_xvmc_create_surface_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
792 }
793
794
795 /*****************************************************************************
796 **
797 ** xcb_void_cookie_t xcb_xvmc_destroy_surface_checked
798 **
799 ** @param xcb_connection_t *c
800 ** @param xcb_xvmc_surface_t surface_id
801 ** @returns xcb_void_cookie_t
802 **
803 *****************************************************************************/
804
805 xcb_void_cookie_t
806 xcb_xvmc_destroy_surface_checked (xcb_connection_t *c /**< */,
807 xcb_xvmc_surface_t surface_id /**< */)
808 {
809 static const xcb_protocol_request_t xcb_req = {
810 /* count */ 2,
811 /* ext */ &xcb_xvmc_id,
812 /* opcode */ XCB_XVMC_DESTROY_SURFACE,
813 /* isvoid */ 1
814 };
815
816 struct iovec xcb_parts[4];
817 xcb_void_cookie_t xcb_ret;
818 xcb_xvmc_destroy_surface_request_t xcb_out;
819
820 xcb_out.surface_id = surface_id;
821
822 xcb_parts[2].iov_base = (char *) &xcb_out;
823 xcb_parts[2].iov_len = sizeof(xcb_out);
824 xcb_parts[3].iov_base = 0;
825 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
826 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
827 return xcb_ret;
828 }
829
830
831 /*****************************************************************************
832 **
833 ** xcb_void_cookie_t xcb_xvmc_destroy_surface
834 **
835 ** @param xcb_connection_t *c
836 ** @param xcb_xvmc_surface_t surface_id
837 ** @returns xcb_void_cookie_t
838 **
839 *****************************************************************************/
840
841 xcb_void_cookie_t
842 xcb_xvmc_destroy_surface (xcb_connection_t *c /**< */,
843 xcb_xvmc_surface_t surface_id /**< */)
844 {
845 static const xcb_protocol_request_t xcb_req = {
846 /* count */ 2,
847 /* ext */ &xcb_xvmc_id,
848 /* opcode */ XCB_XVMC_DESTROY_SURFACE,
849 /* isvoid */ 1
850 };
851
852 struct iovec xcb_parts[4];
853 xcb_void_cookie_t xcb_ret;
854 xcb_xvmc_destroy_surface_request_t xcb_out;
855
856 xcb_out.surface_id = surface_id;
857
858 xcb_parts[2].iov_base = (char *) &xcb_out;
859 xcb_parts[2].iov_len = sizeof(xcb_out);
860 xcb_parts[3].iov_base = 0;
861 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
862 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
863 return xcb_ret;
864 }
865
866
867 /*****************************************************************************
868 **
869 ** xcb_xvmc_create_subpicture_cookie_t xcb_xvmc_create_subpicture
870 **
871 ** @param xcb_connection_t *c
872 ** @param xcb_xvmc_subpicture_t subpicture_id
873 ** @param xcb_xvmc_context_t context
874 ** @param uint32_t xvimage_id
875 ** @param uint16_t width
876 ** @param uint16_t height
877 ** @returns xcb_xvmc_create_subpicture_cookie_t
878 **
879 *****************************************************************************/
880
881 xcb_xvmc_create_subpicture_cookie_t
882 xcb_xvmc_create_subpicture (xcb_connection_t *c /**< */,
883 xcb_xvmc_subpicture_t subpicture_id /**< */,
884 xcb_xvmc_context_t context /**< */,
885 uint32_t xvimage_id /**< */,
886 uint16_t width /**< */,
887 uint16_t height /**< */)
888 {
889 static const xcb_protocol_request_t xcb_req = {
890 /* count */ 2,
891 /* ext */ &xcb_xvmc_id,
892 /* opcode */ XCB_XVMC_CREATE_SUBPICTURE,
893 /* isvoid */ 0
894 };
895
896 struct iovec xcb_parts[4];
897 xcb_xvmc_create_subpicture_cookie_t xcb_ret;
898 xcb_xvmc_create_subpicture_request_t xcb_out;
899
900 xcb_out.subpicture_id = subpicture_id;
901 xcb_out.context = context;
902 xcb_out.xvimage_id = xvimage_id;
903 xcb_out.width = width;
904 xcb_out.height = height;
905
906 xcb_parts[2].iov_base = (char *) &xcb_out;
907 xcb_parts[2].iov_len = sizeof(xcb_out);
908 xcb_parts[3].iov_base = 0;
909 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
910 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
911 return xcb_ret;
912 }
913
914
915 /*****************************************************************************
916 **
917 ** xcb_xvmc_create_subpicture_cookie_t xcb_xvmc_create_subpicture_unchecked
918 **
919 ** @param xcb_connection_t *c
920 ** @param xcb_xvmc_subpicture_t subpicture_id
921 ** @param xcb_xvmc_context_t context
922 ** @param uint32_t xvimage_id
923 ** @param uint16_t width
924 ** @param uint16_t height
925 ** @returns xcb_xvmc_create_subpicture_cookie_t
926 **
927 *****************************************************************************/
928
929 xcb_xvmc_create_subpicture_cookie_t
930 xcb_xvmc_create_subpicture_unchecked (xcb_connection_t *c /**< */,
931 xcb_xvmc_subpicture_t subpicture_id /**< */,
932 xcb_xvmc_context_t context /**< */,
933 uint32_t xvimage_id /**< */,
934 uint16_t width /**< */,
935 uint16_t height /**< */)
936 {
937 static const xcb_protocol_request_t xcb_req = {
938 /* count */ 2,
939 /* ext */ &xcb_xvmc_id,
940 /* opcode */ XCB_XVMC_CREATE_SUBPICTURE,
941 /* isvoid */ 0
942 };
943
944 struct iovec xcb_parts[4];
945 xcb_xvmc_create_subpicture_cookie_t xcb_ret;
946 xcb_xvmc_create_subpicture_request_t xcb_out;
947
948 xcb_out.subpicture_id = subpicture_id;
949 xcb_out.context = context;
950 xcb_out.xvimage_id = xvimage_id;
951 xcb_out.width = width;
952 xcb_out.height = height;
953
954 xcb_parts[2].iov_base = (char *) &xcb_out;
955 xcb_parts[2].iov_len = sizeof(xcb_out);
956 xcb_parts[3].iov_base = 0;
957 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
958 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
959 return xcb_ret;
960 }
961
962
963 /*****************************************************************************
964 **
965 ** uint32_t * xcb_xvmc_create_subpicture_priv_data
966 **
967 ** @param const xcb_xvmc_create_subpicture_reply_t *R
968 ** @returns uint32_t *
969 **
970 *****************************************************************************/
971
972 uint32_t *
973 xcb_xvmc_create_subpicture_priv_data (const xcb_xvmc_create_subpicture_reply_t *R /**< */)
974 {
975 return (uint32_t *) (R + 1);
976 }
977
978
979 /*****************************************************************************
980 **
981 ** int xcb_xvmc_create_subpicture_priv_data_length
982 **
983 ** @param const xcb_xvmc_create_subpicture_reply_t *R
984 ** @returns int
985 **
986 *****************************************************************************/
987
988 int
989 xcb_xvmc_create_subpicture_priv_data_length (const xcb_xvmc_create_subpicture_reply_t *R /**< */)
990 {
991 return R->length;
992 }
993
994
995 /*****************************************************************************
996 **
997 ** xcb_generic_iterator_t xcb_xvmc_create_subpicture_priv_data_end
998 **
999 ** @param const xcb_xvmc_create_subpicture_reply_t *R
1000 ** @returns xcb_generic_iterator_t
1001 **
1002 *****************************************************************************/
1003
1004 xcb_generic_iterator_t
1005 xcb_xvmc_create_subpicture_priv_data_end (const xcb_xvmc_create_subpicture_reply_t *R /**< */)
1006 {
1007 xcb_generic_iterator_t i;
1008 i.data = ((uint32_t *) (R + 1)) + (R->length);
1009 i.rem = 0;
1010 i.index = (char *) i.data - (char *) R;
1011 return i;
1012 }
1013
1014
1015 /*****************************************************************************
1016 **
1017 ** xcb_xvmc_create_subpicture_reply_t * xcb_xvmc_create_subpicture_reply
1018 **
1019 ** @param xcb_connection_t *c
1020 ** @param xcb_xvmc_create_subpicture_cookie_t cookie
1021 ** @param xcb_generic_error_t **e
1022 ** @returns xcb_xvmc_create_subpicture_reply_t *
1023 **
1024 *****************************************************************************/
1025
1026 xcb_xvmc_create_subpicture_reply_t *
1027 xcb_xvmc_create_subpicture_reply (xcb_connection_t *c /**< */,
1028 xcb_xvmc_create_subpicture_cookie_t cookie /**< */,
1029 xcb_generic_error_t **e /**< */)
1030 {
1031 return (xcb_xvmc_create_subpicture_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
1032 }
1033
1034
1035 /*****************************************************************************
1036 **
1037 ** xcb_void_cookie_t xcb_xvmc_destroy_subpicture_checked
1038 **
1039 ** @param xcb_connection_t *c
1040 ** @param xcb_xvmc_subpicture_t subpicture_id
1041 ** @returns xcb_void_cookie_t
1042 **
1043 *****************************************************************************/
1044
1045 xcb_void_cookie_t
1046 xcb_xvmc_destroy_subpicture_checked (xcb_connection_t *c /**< */,
1047 xcb_xvmc_subpicture_t subpicture_id /**< */)
1048 {
1049 static const xcb_protocol_request_t xcb_req = {
1050 /* count */ 2,
1051 /* ext */ &xcb_xvmc_id,
1052 /* opcode */ XCB_XVMC_DESTROY_SUBPICTURE,
1053 /* isvoid */ 1
1054 };
1055
1056 struct iovec xcb_parts[4];
1057 xcb_void_cookie_t xcb_ret;
1058 xcb_xvmc_destroy_subpicture_request_t xcb_out;
1059
1060 xcb_out.subpicture_id = subpicture_id;
1061
1062 xcb_parts[2].iov_base = (char *) &xcb_out;
1063 xcb_parts[2].iov_len = sizeof(xcb_out);
1064 xcb_parts[3].iov_base = 0;
1065 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1066 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
1067 return xcb_ret;
1068 }
1069
1070
1071 /*****************************************************************************
1072 **
1073 ** xcb_void_cookie_t xcb_xvmc_destroy_subpicture
1074 **
1075 ** @param xcb_connection_t *c
1076 ** @param xcb_xvmc_subpicture_t subpicture_id
1077 ** @returns xcb_void_cookie_t
1078 **
1079 *****************************************************************************/
1080
1081 xcb_void_cookie_t
1082 xcb_xvmc_destroy_subpicture (xcb_connection_t *c /**< */,
1083 xcb_xvmc_subpicture_t subpicture_id /**< */)
1084 {
1085 static const xcb_protocol_request_t xcb_req = {
1086 /* count */ 2,
1087 /* ext */ &xcb_xvmc_id,
1088 /* opcode */ XCB_XVMC_DESTROY_SUBPICTURE,
1089 /* isvoid */ 1
1090 };
1091
1092 struct iovec xcb_parts[4];
1093 xcb_void_cookie_t xcb_ret;
1094 xcb_xvmc_destroy_subpicture_request_t xcb_out;
1095
1096 xcb_out.subpicture_id = subpicture_id;
1097
1098 xcb_parts[2].iov_base = (char *) &xcb_out;
1099 xcb_parts[2].iov_len = sizeof(xcb_out);
1100 xcb_parts[3].iov_base = 0;
1101 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1102 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
1103 return xcb_ret;
1104 }
1105
1106
1107 /*****************************************************************************
1108 **
1109 ** xcb_xvmc_list_subpicture_types_cookie_t xcb_xvmc_list_subpicture_types
1110 **
1111 ** @param xcb_connection_t *c
1112 ** @param xcb_xv_port_t port_id
1113 ** @param xcb_xvmc_surface_t surface_id
1114 ** @returns xcb_xvmc_list_subpicture_types_cookie_t
1115 **
1116 *****************************************************************************/
1117
1118 xcb_xvmc_list_subpicture_types_cookie_t
1119 xcb_xvmc_list_subpicture_types (xcb_connection_t *c /**< */,
1120 xcb_xv_port_t port_id /**< */,
1121 xcb_xvmc_surface_t surface_id /**< */)
1122 {
1123 static const xcb_protocol_request_t xcb_req = {
1124 /* count */ 2,
1125 /* ext */ &xcb_xvmc_id,
1126 /* opcode */ XCB_XVMC_LIST_SUBPICTURE_TYPES,
1127 /* isvoid */ 0
1128 };
1129
1130 struct iovec xcb_parts[4];
1131 xcb_xvmc_list_subpicture_types_cookie_t xcb_ret;
1132 xcb_xvmc_list_subpicture_types_request_t xcb_out;
1133
1134 xcb_out.port_id = port_id;
1135 xcb_out.surface_id = surface_id;
1136
1137 xcb_parts[2].iov_base = (char *) &xcb_out;
1138 xcb_parts[2].iov_len = sizeof(xcb_out);
1139 xcb_parts[3].iov_base = 0;
1140 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1141 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
1142 return xcb_ret;
1143 }
1144
1145
1146 /*****************************************************************************
1147 **
1148 ** xcb_xvmc_list_subpicture_types_cookie_t xcb_xvmc_list_subpicture_types_unchecked
1149 **
1150 ** @param xcb_connection_t *c
1151 ** @param xcb_xv_port_t port_id
1152 ** @param xcb_xvmc_surface_t surface_id
1153 ** @returns xcb_xvmc_list_subpicture_types_cookie_t
1154 **
1155 *****************************************************************************/
1156
1157 xcb_xvmc_list_subpicture_types_cookie_t
1158 xcb_xvmc_list_subpicture_types_unchecked (xcb_connection_t *c /**< */,
1159 xcb_xv_port_t port_id /**< */,
1160 xcb_xvmc_surface_t surface_id /**< */)
1161 {
1162 static const xcb_protocol_request_t xcb_req = {
1163 /* count */ 2,
1164 /* ext */ &xcb_xvmc_id,
1165 /* opcode */ XCB_XVMC_LIST_SUBPICTURE_TYPES,
1166 /* isvoid */ 0
1167 };
1168
1169 struct iovec xcb_parts[4];
1170 xcb_xvmc_list_subpicture_types_cookie_t xcb_ret;
1171 xcb_xvmc_list_subpicture_types_request_t xcb_out;
1172
1173 xcb_out.port_id = port_id;
1174 xcb_out.surface_id = surface_id;
1175
1176 xcb_parts[2].iov_base = (char *) &xcb_out;
1177 xcb_parts[2].iov_len = sizeof(xcb_out);
1178 xcb_parts[3].iov_base = 0;
1179 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
1180 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
1181 return xcb_ret;
1182 }
1183
1184
1185 /*****************************************************************************
1186 **
1187 ** xcb_xv_image_format_info_t * xcb_xvmc_list_subpicture_types_types
1188 **
1189 ** @param const xcb_xvmc_list_subpicture_types_reply_t *R
1190 ** @returns xcb_xv_image_format_info_t *
1191 **
1192 *****************************************************************************/
1193
1194 xcb_xv_image_format_info_t *
1195 xcb_xvmc_list_subpicture_types_types (const xcb_xvmc_list_subpicture_types_reply_t *R /**< */)
1196 {
1197 return (xcb_xv_image_format_info_t *) (R + 1);
1198 }
1199
1200
1201 /*****************************************************************************
1202 **
1203 ** int xcb_xvmc_list_subpicture_types_types_length
1204 **
1205 ** @param const xcb_xvmc_list_subpicture_types_reply_t *R
1206 ** @returns int
1207 **
1208 *****************************************************************************/
1209
1210 int
1211 xcb_xvmc_list_subpicture_types_types_length (const xcb_xvmc_list_subpicture_types_reply_t *R /**< */)
1212 {
1213 return R->num;
1214 }
1215
1216
1217 /*****************************************************************************
1218 **
1219 ** xcb_xv_image_format_info_iterator_t xcb_xvmc_list_subpicture_types_types_iterator
1220 **
1221 ** @param const xcb_xvmc_list_subpicture_types_reply_t *R
1222 ** @returns xcb_xv_image_format_info_iterator_t
1223 **
1224 *****************************************************************************/
1225
1226 xcb_xv_image_format_info_iterator_t
1227 xcb_xvmc_list_subpicture_types_types_iterator (const xcb_xvmc_list_subpicture_types_reply_t *R /**< */)
1228 {
1229 xcb_xv_image_format_info_iterator_t i;
1230 i.data = (xcb_xv_image_format_info_t *) (R + 1);
1231 i.rem = R->num;
1232 i.index = (char *) i.data - (char *) R;
1233 return i;
1234 }
1235
1236
1237 /*****************************************************************************
1238 **
1239 ** xcb_xvmc_list_subpicture_types_reply_t * xcb_xvmc_list_subpicture_types_reply
1240 **
1241 ** @param xcb_connection_t *c
1242 ** @param xcb_xvmc_list_subpicture_types_cookie_t cookie
1243 ** @param xcb_generic_error_t **e
1244 ** @returns xcb_xvmc_list_subpicture_types_reply_t *
1245 **
1246 *****************************************************************************/
1247
1248 xcb_xvmc_list_subpicture_types_reply_t *
1249 xcb_xvmc_list_subpicture_types_reply (xcb_connection_t *c /**< */,
1250 xcb_xvmc_list_subpicture_types_cookie_t cookie /**< */,
1251 xcb_generic_error_t **e /**< */)
1252 {
1253 return (xcb_xvmc_list_subpicture_types_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
1254 }
1255
1256