comparison CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/include/xcb/xv.h @ 69:33d812a61356

planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author jpayne
date Tue, 18 Mar 2025 17:55:14 -0400
parents
children
comparison
equal deleted inserted replaced
67:0e9998148a16 69:33d812a61356
1 /*
2 * This file generated automatically from xv.xml by c_client.py.
3 * Edit at your peril.
4 */
5
6 /**
7 * @defgroup XCB_Xv_API XCB Xv API
8 * @brief Xv XCB Protocol Implementation.
9 * @{
10 **/
11
12 #ifndef __XV_H
13 #define __XV_H
14
15 #include "xcb.h"
16 #include "xproto.h"
17 #include "shm.h"
18
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22
23 #define XCB_XV_MAJOR_VERSION 2
24 #define XCB_XV_MINOR_VERSION 2
25
26 extern xcb_extension_t xcb_xv_id;
27
28 typedef uint32_t xcb_xv_port_t;
29
30 /**
31 * @brief xcb_xv_port_iterator_t
32 **/
33 typedef struct xcb_xv_port_iterator_t {
34 xcb_xv_port_t *data;
35 int rem;
36 int index;
37 } xcb_xv_port_iterator_t;
38
39 typedef uint32_t xcb_xv_encoding_t;
40
41 /**
42 * @brief xcb_xv_encoding_iterator_t
43 **/
44 typedef struct xcb_xv_encoding_iterator_t {
45 xcb_xv_encoding_t *data;
46 int rem;
47 int index;
48 } xcb_xv_encoding_iterator_t;
49
50 typedef enum xcb_xv_type_t {
51 XCB_XV_TYPE_INPUT_MASK = 1,
52 XCB_XV_TYPE_OUTPUT_MASK = 2,
53 XCB_XV_TYPE_VIDEO_MASK = 4,
54 XCB_XV_TYPE_STILL_MASK = 8,
55 XCB_XV_TYPE_IMAGE_MASK = 16
56 } xcb_xv_type_t;
57
58 typedef enum xcb_xv_image_format_info_type_t {
59 XCB_XV_IMAGE_FORMAT_INFO_TYPE_RGB = 0,
60 XCB_XV_IMAGE_FORMAT_INFO_TYPE_YUV = 1
61 } xcb_xv_image_format_info_type_t;
62
63 typedef enum xcb_xv_image_format_info_format_t {
64 XCB_XV_IMAGE_FORMAT_INFO_FORMAT_PACKED = 0,
65 XCB_XV_IMAGE_FORMAT_INFO_FORMAT_PLANAR = 1
66 } xcb_xv_image_format_info_format_t;
67
68 typedef enum xcb_xv_attribute_flag_t {
69 XCB_XV_ATTRIBUTE_FLAG_GETTABLE = 1,
70 XCB_XV_ATTRIBUTE_FLAG_SETTABLE = 2
71 } xcb_xv_attribute_flag_t;
72
73 typedef enum xcb_xv_video_notify_reason_t {
74 XCB_XV_VIDEO_NOTIFY_REASON_STARTED = 0,
75 XCB_XV_VIDEO_NOTIFY_REASON_STOPPED = 1,
76 XCB_XV_VIDEO_NOTIFY_REASON_BUSY = 2,
77 XCB_XV_VIDEO_NOTIFY_REASON_PREEMPTED = 3,
78 XCB_XV_VIDEO_NOTIFY_REASON_HARD_ERROR = 4
79 } xcb_xv_video_notify_reason_t;
80
81 typedef enum xcb_xv_scanline_order_t {
82 XCB_XV_SCANLINE_ORDER_TOP_TO_BOTTOM = 0,
83 XCB_XV_SCANLINE_ORDER_BOTTOM_TO_TOP = 1
84 } xcb_xv_scanline_order_t;
85
86 typedef enum xcb_xv_grab_port_status_t {
87 XCB_XV_GRAB_PORT_STATUS_SUCCESS = 0,
88 XCB_XV_GRAB_PORT_STATUS_BAD_EXTENSION = 1,
89 XCB_XV_GRAB_PORT_STATUS_ALREADY_GRABBED = 2,
90 XCB_XV_GRAB_PORT_STATUS_INVALID_TIME = 3,
91 XCB_XV_GRAB_PORT_STATUS_BAD_REPLY = 4,
92 XCB_XV_GRAB_PORT_STATUS_BAD_ALLOC = 5
93 } xcb_xv_grab_port_status_t;
94
95 /**
96 * @brief xcb_xv_rational_t
97 **/
98 typedef struct xcb_xv_rational_t {
99 int32_t numerator;
100 int32_t denominator;
101 } xcb_xv_rational_t;
102
103 /**
104 * @brief xcb_xv_rational_iterator_t
105 **/
106 typedef struct xcb_xv_rational_iterator_t {
107 xcb_xv_rational_t *data;
108 int rem;
109 int index;
110 } xcb_xv_rational_iterator_t;
111
112 /**
113 * @brief xcb_xv_format_t
114 **/
115 typedef struct xcb_xv_format_t {
116 xcb_visualid_t visual;
117 uint8_t depth;
118 uint8_t pad0[3];
119 } xcb_xv_format_t;
120
121 /**
122 * @brief xcb_xv_format_iterator_t
123 **/
124 typedef struct xcb_xv_format_iterator_t {
125 xcb_xv_format_t *data;
126 int rem;
127 int index;
128 } xcb_xv_format_iterator_t;
129
130 /**
131 * @brief xcb_xv_adaptor_info_t
132 **/
133 typedef struct xcb_xv_adaptor_info_t {
134 xcb_xv_port_t base_id;
135 uint16_t name_size;
136 uint16_t num_ports;
137 uint16_t num_formats;
138 uint8_t type;
139 uint8_t pad0;
140 } xcb_xv_adaptor_info_t;
141
142 /**
143 * @brief xcb_xv_adaptor_info_iterator_t
144 **/
145 typedef struct xcb_xv_adaptor_info_iterator_t {
146 xcb_xv_adaptor_info_t *data;
147 int rem;
148 int index;
149 } xcb_xv_adaptor_info_iterator_t;
150
151 /**
152 * @brief xcb_xv_encoding_info_t
153 **/
154 typedef struct xcb_xv_encoding_info_t {
155 xcb_xv_encoding_t encoding;
156 uint16_t name_size;
157 uint16_t width;
158 uint16_t height;
159 uint8_t pad0[2];
160 xcb_xv_rational_t rate;
161 } xcb_xv_encoding_info_t;
162
163 /**
164 * @brief xcb_xv_encoding_info_iterator_t
165 **/
166 typedef struct xcb_xv_encoding_info_iterator_t {
167 xcb_xv_encoding_info_t *data;
168 int rem;
169 int index;
170 } xcb_xv_encoding_info_iterator_t;
171
172 /**
173 * @brief xcb_xv_image_t
174 **/
175 typedef struct xcb_xv_image_t {
176 uint32_t id;
177 uint16_t width;
178 uint16_t height;
179 uint32_t data_size;
180 uint32_t num_planes;
181 } xcb_xv_image_t;
182
183 /**
184 * @brief xcb_xv_image_iterator_t
185 **/
186 typedef struct xcb_xv_image_iterator_t {
187 xcb_xv_image_t *data;
188 int rem;
189 int index;
190 } xcb_xv_image_iterator_t;
191
192 /**
193 * @brief xcb_xv_attribute_info_t
194 **/
195 typedef struct xcb_xv_attribute_info_t {
196 uint32_t flags;
197 int32_t min;
198 int32_t max;
199 uint32_t size;
200 } xcb_xv_attribute_info_t;
201
202 /**
203 * @brief xcb_xv_attribute_info_iterator_t
204 **/
205 typedef struct xcb_xv_attribute_info_iterator_t {
206 xcb_xv_attribute_info_t *data;
207 int rem;
208 int index;
209 } xcb_xv_attribute_info_iterator_t;
210
211 /**
212 * @brief xcb_xv_image_format_info_t
213 **/
214 typedef struct xcb_xv_image_format_info_t {
215 uint32_t id;
216 uint8_t type;
217 uint8_t byte_order;
218 uint8_t pad0[2];
219 uint8_t guid[16];
220 uint8_t bpp;
221 uint8_t num_planes;
222 uint8_t pad1[2];
223 uint8_t depth;
224 uint8_t pad2[3];
225 uint32_t red_mask;
226 uint32_t green_mask;
227 uint32_t blue_mask;
228 uint8_t format;
229 uint8_t pad3[3];
230 uint32_t y_sample_bits;
231 uint32_t u_sample_bits;
232 uint32_t v_sample_bits;
233 uint32_t vhorz_y_period;
234 uint32_t vhorz_u_period;
235 uint32_t vhorz_v_period;
236 uint32_t vvert_y_period;
237 uint32_t vvert_u_period;
238 uint32_t vvert_v_period;
239 uint8_t vcomp_order[32];
240 uint8_t vscanline_order;
241 uint8_t pad4[11];
242 } xcb_xv_image_format_info_t;
243
244 /**
245 * @brief xcb_xv_image_format_info_iterator_t
246 **/
247 typedef struct xcb_xv_image_format_info_iterator_t {
248 xcb_xv_image_format_info_t *data;
249 int rem;
250 int index;
251 } xcb_xv_image_format_info_iterator_t;
252
253 /** Opcode for xcb_xv_bad_port. */
254 #define XCB_XV_BAD_PORT 0
255
256 /**
257 * @brief xcb_xv_bad_port_error_t
258 **/
259 typedef struct xcb_xv_bad_port_error_t {
260 uint8_t response_type;
261 uint8_t error_code;
262 uint16_t sequence;
263 uint32_t bad_value;
264 uint16_t minor_opcode;
265 uint8_t major_opcode;
266 } xcb_xv_bad_port_error_t;
267
268 /** Opcode for xcb_xv_bad_encoding. */
269 #define XCB_XV_BAD_ENCODING 1
270
271 /**
272 * @brief xcb_xv_bad_encoding_error_t
273 **/
274 typedef struct xcb_xv_bad_encoding_error_t {
275 uint8_t response_type;
276 uint8_t error_code;
277 uint16_t sequence;
278 uint32_t bad_value;
279 uint16_t minor_opcode;
280 uint8_t major_opcode;
281 } xcb_xv_bad_encoding_error_t;
282
283 /** Opcode for xcb_xv_bad_control. */
284 #define XCB_XV_BAD_CONTROL 2
285
286 /**
287 * @brief xcb_xv_bad_control_error_t
288 **/
289 typedef struct xcb_xv_bad_control_error_t {
290 uint8_t response_type;
291 uint8_t error_code;
292 uint16_t sequence;
293 uint32_t bad_value;
294 uint16_t minor_opcode;
295 uint8_t major_opcode;
296 } xcb_xv_bad_control_error_t;
297
298 /** Opcode for xcb_xv_video_notify. */
299 #define XCB_XV_VIDEO_NOTIFY 0
300
301 /**
302 * @brief xcb_xv_video_notify_event_t
303 **/
304 typedef struct xcb_xv_video_notify_event_t {
305 uint8_t response_type;
306 uint8_t reason;
307 uint16_t sequence;
308 xcb_timestamp_t time;
309 xcb_drawable_t drawable;
310 xcb_xv_port_t port;
311 } xcb_xv_video_notify_event_t;
312
313 /** Opcode for xcb_xv_port_notify. */
314 #define XCB_XV_PORT_NOTIFY 1
315
316 /**
317 * @brief xcb_xv_port_notify_event_t
318 **/
319 typedef struct xcb_xv_port_notify_event_t {
320 uint8_t response_type;
321 uint8_t pad0;
322 uint16_t sequence;
323 xcb_timestamp_t time;
324 xcb_xv_port_t port;
325 xcb_atom_t attribute;
326 int32_t value;
327 } xcb_xv_port_notify_event_t;
328
329 /**
330 * @brief xcb_xv_query_extension_cookie_t
331 **/
332 typedef struct xcb_xv_query_extension_cookie_t {
333 unsigned int sequence;
334 } xcb_xv_query_extension_cookie_t;
335
336 /** Opcode for xcb_xv_query_extension. */
337 #define XCB_XV_QUERY_EXTENSION 0
338
339 /**
340 * @brief xcb_xv_query_extension_request_t
341 **/
342 typedef struct xcb_xv_query_extension_request_t {
343 uint8_t major_opcode;
344 uint8_t minor_opcode;
345 uint16_t length;
346 } xcb_xv_query_extension_request_t;
347
348 /**
349 * @brief xcb_xv_query_extension_reply_t
350 **/
351 typedef struct xcb_xv_query_extension_reply_t {
352 uint8_t response_type;
353 uint8_t pad0;
354 uint16_t sequence;
355 uint32_t length;
356 uint16_t major;
357 uint16_t minor;
358 } xcb_xv_query_extension_reply_t;
359
360 /**
361 * @brief xcb_xv_query_adaptors_cookie_t
362 **/
363 typedef struct xcb_xv_query_adaptors_cookie_t {
364 unsigned int sequence;
365 } xcb_xv_query_adaptors_cookie_t;
366
367 /** Opcode for xcb_xv_query_adaptors. */
368 #define XCB_XV_QUERY_ADAPTORS 1
369
370 /**
371 * @brief xcb_xv_query_adaptors_request_t
372 **/
373 typedef struct xcb_xv_query_adaptors_request_t {
374 uint8_t major_opcode;
375 uint8_t minor_opcode;
376 uint16_t length;
377 xcb_window_t window;
378 } xcb_xv_query_adaptors_request_t;
379
380 /**
381 * @brief xcb_xv_query_adaptors_reply_t
382 **/
383 typedef struct xcb_xv_query_adaptors_reply_t {
384 uint8_t response_type;
385 uint8_t pad0;
386 uint16_t sequence;
387 uint32_t length;
388 uint16_t num_adaptors;
389 uint8_t pad1[22];
390 } xcb_xv_query_adaptors_reply_t;
391
392 /**
393 * @brief xcb_xv_query_encodings_cookie_t
394 **/
395 typedef struct xcb_xv_query_encodings_cookie_t {
396 unsigned int sequence;
397 } xcb_xv_query_encodings_cookie_t;
398
399 /** Opcode for xcb_xv_query_encodings. */
400 #define XCB_XV_QUERY_ENCODINGS 2
401
402 /**
403 * @brief xcb_xv_query_encodings_request_t
404 **/
405 typedef struct xcb_xv_query_encodings_request_t {
406 uint8_t major_opcode;
407 uint8_t minor_opcode;
408 uint16_t length;
409 xcb_xv_port_t port;
410 } xcb_xv_query_encodings_request_t;
411
412 /**
413 * @brief xcb_xv_query_encodings_reply_t
414 **/
415 typedef struct xcb_xv_query_encodings_reply_t {
416 uint8_t response_type;
417 uint8_t pad0;
418 uint16_t sequence;
419 uint32_t length;
420 uint16_t num_encodings;
421 uint8_t pad1[22];
422 } xcb_xv_query_encodings_reply_t;
423
424 /**
425 * @brief xcb_xv_grab_port_cookie_t
426 **/
427 typedef struct xcb_xv_grab_port_cookie_t {
428 unsigned int sequence;
429 } xcb_xv_grab_port_cookie_t;
430
431 /** Opcode for xcb_xv_grab_port. */
432 #define XCB_XV_GRAB_PORT 3
433
434 /**
435 * @brief xcb_xv_grab_port_request_t
436 **/
437 typedef struct xcb_xv_grab_port_request_t {
438 uint8_t major_opcode;
439 uint8_t minor_opcode;
440 uint16_t length;
441 xcb_xv_port_t port;
442 xcb_timestamp_t time;
443 } xcb_xv_grab_port_request_t;
444
445 /**
446 * @brief xcb_xv_grab_port_reply_t
447 **/
448 typedef struct xcb_xv_grab_port_reply_t {
449 uint8_t response_type;
450 uint8_t result;
451 uint16_t sequence;
452 uint32_t length;
453 } xcb_xv_grab_port_reply_t;
454
455 /** Opcode for xcb_xv_ungrab_port. */
456 #define XCB_XV_UNGRAB_PORT 4
457
458 /**
459 * @brief xcb_xv_ungrab_port_request_t
460 **/
461 typedef struct xcb_xv_ungrab_port_request_t {
462 uint8_t major_opcode;
463 uint8_t minor_opcode;
464 uint16_t length;
465 xcb_xv_port_t port;
466 xcb_timestamp_t time;
467 } xcb_xv_ungrab_port_request_t;
468
469 /** Opcode for xcb_xv_put_video. */
470 #define XCB_XV_PUT_VIDEO 5
471
472 /**
473 * @brief xcb_xv_put_video_request_t
474 **/
475 typedef struct xcb_xv_put_video_request_t {
476 uint8_t major_opcode;
477 uint8_t minor_opcode;
478 uint16_t length;
479 xcb_xv_port_t port;
480 xcb_drawable_t drawable;
481 xcb_gcontext_t gc;
482 int16_t vid_x;
483 int16_t vid_y;
484 uint16_t vid_w;
485 uint16_t vid_h;
486 int16_t drw_x;
487 int16_t drw_y;
488 uint16_t drw_w;
489 uint16_t drw_h;
490 } xcb_xv_put_video_request_t;
491
492 /** Opcode for xcb_xv_put_still. */
493 #define XCB_XV_PUT_STILL 6
494
495 /**
496 * @brief xcb_xv_put_still_request_t
497 **/
498 typedef struct xcb_xv_put_still_request_t {
499 uint8_t major_opcode;
500 uint8_t minor_opcode;
501 uint16_t length;
502 xcb_xv_port_t port;
503 xcb_drawable_t drawable;
504 xcb_gcontext_t gc;
505 int16_t vid_x;
506 int16_t vid_y;
507 uint16_t vid_w;
508 uint16_t vid_h;
509 int16_t drw_x;
510 int16_t drw_y;
511 uint16_t drw_w;
512 uint16_t drw_h;
513 } xcb_xv_put_still_request_t;
514
515 /** Opcode for xcb_xv_get_video. */
516 #define XCB_XV_GET_VIDEO 7
517
518 /**
519 * @brief xcb_xv_get_video_request_t
520 **/
521 typedef struct xcb_xv_get_video_request_t {
522 uint8_t major_opcode;
523 uint8_t minor_opcode;
524 uint16_t length;
525 xcb_xv_port_t port;
526 xcb_drawable_t drawable;
527 xcb_gcontext_t gc;
528 int16_t vid_x;
529 int16_t vid_y;
530 uint16_t vid_w;
531 uint16_t vid_h;
532 int16_t drw_x;
533 int16_t drw_y;
534 uint16_t drw_w;
535 uint16_t drw_h;
536 } xcb_xv_get_video_request_t;
537
538 /** Opcode for xcb_xv_get_still. */
539 #define XCB_XV_GET_STILL 8
540
541 /**
542 * @brief xcb_xv_get_still_request_t
543 **/
544 typedef struct xcb_xv_get_still_request_t {
545 uint8_t major_opcode;
546 uint8_t minor_opcode;
547 uint16_t length;
548 xcb_xv_port_t port;
549 xcb_drawable_t drawable;
550 xcb_gcontext_t gc;
551 int16_t vid_x;
552 int16_t vid_y;
553 uint16_t vid_w;
554 uint16_t vid_h;
555 int16_t drw_x;
556 int16_t drw_y;
557 uint16_t drw_w;
558 uint16_t drw_h;
559 } xcb_xv_get_still_request_t;
560
561 /** Opcode for xcb_xv_stop_video. */
562 #define XCB_XV_STOP_VIDEO 9
563
564 /**
565 * @brief xcb_xv_stop_video_request_t
566 **/
567 typedef struct xcb_xv_stop_video_request_t {
568 uint8_t major_opcode;
569 uint8_t minor_opcode;
570 uint16_t length;
571 xcb_xv_port_t port;
572 xcb_drawable_t drawable;
573 } xcb_xv_stop_video_request_t;
574
575 /** Opcode for xcb_xv_select_video_notify. */
576 #define XCB_XV_SELECT_VIDEO_NOTIFY 10
577
578 /**
579 * @brief xcb_xv_select_video_notify_request_t
580 **/
581 typedef struct xcb_xv_select_video_notify_request_t {
582 uint8_t major_opcode;
583 uint8_t minor_opcode;
584 uint16_t length;
585 xcb_drawable_t drawable;
586 uint8_t onoff;
587 uint8_t pad0[3];
588 } xcb_xv_select_video_notify_request_t;
589
590 /** Opcode for xcb_xv_select_port_notify. */
591 #define XCB_XV_SELECT_PORT_NOTIFY 11
592
593 /**
594 * @brief xcb_xv_select_port_notify_request_t
595 **/
596 typedef struct xcb_xv_select_port_notify_request_t {
597 uint8_t major_opcode;
598 uint8_t minor_opcode;
599 uint16_t length;
600 xcb_xv_port_t port;
601 uint8_t onoff;
602 uint8_t pad0[3];
603 } xcb_xv_select_port_notify_request_t;
604
605 /**
606 * @brief xcb_xv_query_best_size_cookie_t
607 **/
608 typedef struct xcb_xv_query_best_size_cookie_t {
609 unsigned int sequence;
610 } xcb_xv_query_best_size_cookie_t;
611
612 /** Opcode for xcb_xv_query_best_size. */
613 #define XCB_XV_QUERY_BEST_SIZE 12
614
615 /**
616 * @brief xcb_xv_query_best_size_request_t
617 **/
618 typedef struct xcb_xv_query_best_size_request_t {
619 uint8_t major_opcode;
620 uint8_t minor_opcode;
621 uint16_t length;
622 xcb_xv_port_t port;
623 uint16_t vid_w;
624 uint16_t vid_h;
625 uint16_t drw_w;
626 uint16_t drw_h;
627 uint8_t motion;
628 uint8_t pad0[3];
629 } xcb_xv_query_best_size_request_t;
630
631 /**
632 * @brief xcb_xv_query_best_size_reply_t
633 **/
634 typedef struct xcb_xv_query_best_size_reply_t {
635 uint8_t response_type;
636 uint8_t pad0;
637 uint16_t sequence;
638 uint32_t length;
639 uint16_t actual_width;
640 uint16_t actual_height;
641 } xcb_xv_query_best_size_reply_t;
642
643 /** Opcode for xcb_xv_set_port_attribute. */
644 #define XCB_XV_SET_PORT_ATTRIBUTE 13
645
646 /**
647 * @brief xcb_xv_set_port_attribute_request_t
648 **/
649 typedef struct xcb_xv_set_port_attribute_request_t {
650 uint8_t major_opcode;
651 uint8_t minor_opcode;
652 uint16_t length;
653 xcb_xv_port_t port;
654 xcb_atom_t attribute;
655 int32_t value;
656 } xcb_xv_set_port_attribute_request_t;
657
658 /**
659 * @brief xcb_xv_get_port_attribute_cookie_t
660 **/
661 typedef struct xcb_xv_get_port_attribute_cookie_t {
662 unsigned int sequence;
663 } xcb_xv_get_port_attribute_cookie_t;
664
665 /** Opcode for xcb_xv_get_port_attribute. */
666 #define XCB_XV_GET_PORT_ATTRIBUTE 14
667
668 /**
669 * @brief xcb_xv_get_port_attribute_request_t
670 **/
671 typedef struct xcb_xv_get_port_attribute_request_t {
672 uint8_t major_opcode;
673 uint8_t minor_opcode;
674 uint16_t length;
675 xcb_xv_port_t port;
676 xcb_atom_t attribute;
677 } xcb_xv_get_port_attribute_request_t;
678
679 /**
680 * @brief xcb_xv_get_port_attribute_reply_t
681 **/
682 typedef struct xcb_xv_get_port_attribute_reply_t {
683 uint8_t response_type;
684 uint8_t pad0;
685 uint16_t sequence;
686 uint32_t length;
687 int32_t value;
688 } xcb_xv_get_port_attribute_reply_t;
689
690 /**
691 * @brief xcb_xv_query_port_attributes_cookie_t
692 **/
693 typedef struct xcb_xv_query_port_attributes_cookie_t {
694 unsigned int sequence;
695 } xcb_xv_query_port_attributes_cookie_t;
696
697 /** Opcode for xcb_xv_query_port_attributes. */
698 #define XCB_XV_QUERY_PORT_ATTRIBUTES 15
699
700 /**
701 * @brief xcb_xv_query_port_attributes_request_t
702 **/
703 typedef struct xcb_xv_query_port_attributes_request_t {
704 uint8_t major_opcode;
705 uint8_t minor_opcode;
706 uint16_t length;
707 xcb_xv_port_t port;
708 } xcb_xv_query_port_attributes_request_t;
709
710 /**
711 * @brief xcb_xv_query_port_attributes_reply_t
712 **/
713 typedef struct xcb_xv_query_port_attributes_reply_t {
714 uint8_t response_type;
715 uint8_t pad0;
716 uint16_t sequence;
717 uint32_t length;
718 uint32_t num_attributes;
719 uint32_t text_size;
720 uint8_t pad1[16];
721 } xcb_xv_query_port_attributes_reply_t;
722
723 /**
724 * @brief xcb_xv_list_image_formats_cookie_t
725 **/
726 typedef struct xcb_xv_list_image_formats_cookie_t {
727 unsigned int sequence;
728 } xcb_xv_list_image_formats_cookie_t;
729
730 /** Opcode for xcb_xv_list_image_formats. */
731 #define XCB_XV_LIST_IMAGE_FORMATS 16
732
733 /**
734 * @brief xcb_xv_list_image_formats_request_t
735 **/
736 typedef struct xcb_xv_list_image_formats_request_t {
737 uint8_t major_opcode;
738 uint8_t minor_opcode;
739 uint16_t length;
740 xcb_xv_port_t port;
741 } xcb_xv_list_image_formats_request_t;
742
743 /**
744 * @brief xcb_xv_list_image_formats_reply_t
745 **/
746 typedef struct xcb_xv_list_image_formats_reply_t {
747 uint8_t response_type;
748 uint8_t pad0;
749 uint16_t sequence;
750 uint32_t length;
751 uint32_t num_formats;
752 uint8_t pad1[20];
753 } xcb_xv_list_image_formats_reply_t;
754
755 /**
756 * @brief xcb_xv_query_image_attributes_cookie_t
757 **/
758 typedef struct xcb_xv_query_image_attributes_cookie_t {
759 unsigned int sequence;
760 } xcb_xv_query_image_attributes_cookie_t;
761
762 /** Opcode for xcb_xv_query_image_attributes. */
763 #define XCB_XV_QUERY_IMAGE_ATTRIBUTES 17
764
765 /**
766 * @brief xcb_xv_query_image_attributes_request_t
767 **/
768 typedef struct xcb_xv_query_image_attributes_request_t {
769 uint8_t major_opcode;
770 uint8_t minor_opcode;
771 uint16_t length;
772 xcb_xv_port_t port;
773 uint32_t id;
774 uint16_t width;
775 uint16_t height;
776 } xcb_xv_query_image_attributes_request_t;
777
778 /**
779 * @brief xcb_xv_query_image_attributes_reply_t
780 **/
781 typedef struct xcb_xv_query_image_attributes_reply_t {
782 uint8_t response_type;
783 uint8_t pad0;
784 uint16_t sequence;
785 uint32_t length;
786 uint32_t num_planes;
787 uint32_t data_size;
788 uint16_t width;
789 uint16_t height;
790 uint8_t pad1[12];
791 } xcb_xv_query_image_attributes_reply_t;
792
793 /** Opcode for xcb_xv_put_image. */
794 #define XCB_XV_PUT_IMAGE 18
795
796 /**
797 * @brief xcb_xv_put_image_request_t
798 **/
799 typedef struct xcb_xv_put_image_request_t {
800 uint8_t major_opcode;
801 uint8_t minor_opcode;
802 uint16_t length;
803 xcb_xv_port_t port;
804 xcb_drawable_t drawable;
805 xcb_gcontext_t gc;
806 uint32_t id;
807 int16_t src_x;
808 int16_t src_y;
809 uint16_t src_w;
810 uint16_t src_h;
811 int16_t drw_x;
812 int16_t drw_y;
813 uint16_t drw_w;
814 uint16_t drw_h;
815 uint16_t width;
816 uint16_t height;
817 } xcb_xv_put_image_request_t;
818
819 /** Opcode for xcb_xv_shm_put_image. */
820 #define XCB_XV_SHM_PUT_IMAGE 19
821
822 /**
823 * @brief xcb_xv_shm_put_image_request_t
824 **/
825 typedef struct xcb_xv_shm_put_image_request_t {
826 uint8_t major_opcode;
827 uint8_t minor_opcode;
828 uint16_t length;
829 xcb_xv_port_t port;
830 xcb_drawable_t drawable;
831 xcb_gcontext_t gc;
832 xcb_shm_seg_t shmseg;
833 uint32_t id;
834 uint32_t offset;
835 int16_t src_x;
836 int16_t src_y;
837 uint16_t src_w;
838 uint16_t src_h;
839 int16_t drw_x;
840 int16_t drw_y;
841 uint16_t drw_w;
842 uint16_t drw_h;
843 uint16_t width;
844 uint16_t height;
845 uint8_t send_event;
846 uint8_t pad0[3];
847 } xcb_xv_shm_put_image_request_t;
848
849 /**
850 * Get the next element of the iterator
851 * @param i Pointer to a xcb_xv_port_iterator_t
852 *
853 * Get the next element in the iterator. The member rem is
854 * decreased by one. The member data points to the next
855 * element. The member index is increased by sizeof(xcb_xv_port_t)
856 */
857 void
858 xcb_xv_port_next (xcb_xv_port_iterator_t *i);
859
860 /**
861 * Return the iterator pointing to the last element
862 * @param i An xcb_xv_port_iterator_t
863 * @return The iterator pointing to the last element
864 *
865 * Set the current element in the iterator to the last element.
866 * The member rem is set to 0. The member data points to the
867 * last element.
868 */
869 xcb_generic_iterator_t
870 xcb_xv_port_end (xcb_xv_port_iterator_t i);
871
872 /**
873 * Get the next element of the iterator
874 * @param i Pointer to a xcb_xv_encoding_iterator_t
875 *
876 * Get the next element in the iterator. The member rem is
877 * decreased by one. The member data points to the next
878 * element. The member index is increased by sizeof(xcb_xv_encoding_t)
879 */
880 void
881 xcb_xv_encoding_next (xcb_xv_encoding_iterator_t *i);
882
883 /**
884 * Return the iterator pointing to the last element
885 * @param i An xcb_xv_encoding_iterator_t
886 * @return The iterator pointing to the last element
887 *
888 * Set the current element in the iterator to the last element.
889 * The member rem is set to 0. The member data points to the
890 * last element.
891 */
892 xcb_generic_iterator_t
893 xcb_xv_encoding_end (xcb_xv_encoding_iterator_t i);
894
895 /**
896 * Get the next element of the iterator
897 * @param i Pointer to a xcb_xv_rational_iterator_t
898 *
899 * Get the next element in the iterator. The member rem is
900 * decreased by one. The member data points to the next
901 * element. The member index is increased by sizeof(xcb_xv_rational_t)
902 */
903 void
904 xcb_xv_rational_next (xcb_xv_rational_iterator_t *i);
905
906 /**
907 * Return the iterator pointing to the last element
908 * @param i An xcb_xv_rational_iterator_t
909 * @return The iterator pointing to the last element
910 *
911 * Set the current element in the iterator to the last element.
912 * The member rem is set to 0. The member data points to the
913 * last element.
914 */
915 xcb_generic_iterator_t
916 xcb_xv_rational_end (xcb_xv_rational_iterator_t i);
917
918 /**
919 * Get the next element of the iterator
920 * @param i Pointer to a xcb_xv_format_iterator_t
921 *
922 * Get the next element in the iterator. The member rem is
923 * decreased by one. The member data points to the next
924 * element. The member index is increased by sizeof(xcb_xv_format_t)
925 */
926 void
927 xcb_xv_format_next (xcb_xv_format_iterator_t *i);
928
929 /**
930 * Return the iterator pointing to the last element
931 * @param i An xcb_xv_format_iterator_t
932 * @return The iterator pointing to the last element
933 *
934 * Set the current element in the iterator to the last element.
935 * The member rem is set to 0. The member data points to the
936 * last element.
937 */
938 xcb_generic_iterator_t
939 xcb_xv_format_end (xcb_xv_format_iterator_t i);
940
941 int
942 xcb_xv_adaptor_info_sizeof (const void *_buffer);
943
944 char *
945 xcb_xv_adaptor_info_name (const xcb_xv_adaptor_info_t *R);
946
947 int
948 xcb_xv_adaptor_info_name_length (const xcb_xv_adaptor_info_t *R);
949
950 xcb_generic_iterator_t
951 xcb_xv_adaptor_info_name_end (const xcb_xv_adaptor_info_t *R);
952
953 xcb_xv_format_t *
954 xcb_xv_adaptor_info_formats (const xcb_xv_adaptor_info_t *R);
955
956 int
957 xcb_xv_adaptor_info_formats_length (const xcb_xv_adaptor_info_t *R);
958
959 xcb_xv_format_iterator_t
960 xcb_xv_adaptor_info_formats_iterator (const xcb_xv_adaptor_info_t *R);
961
962 /**
963 * Get the next element of the iterator
964 * @param i Pointer to a xcb_xv_adaptor_info_iterator_t
965 *
966 * Get the next element in the iterator. The member rem is
967 * decreased by one. The member data points to the next
968 * element. The member index is increased by sizeof(xcb_xv_adaptor_info_t)
969 */
970 void
971 xcb_xv_adaptor_info_next (xcb_xv_adaptor_info_iterator_t *i);
972
973 /**
974 * Return the iterator pointing to the last element
975 * @param i An xcb_xv_adaptor_info_iterator_t
976 * @return The iterator pointing to the last element
977 *
978 * Set the current element in the iterator to the last element.
979 * The member rem is set to 0. The member data points to the
980 * last element.
981 */
982 xcb_generic_iterator_t
983 xcb_xv_adaptor_info_end (xcb_xv_adaptor_info_iterator_t i);
984
985 int
986 xcb_xv_encoding_info_sizeof (const void *_buffer);
987
988 char *
989 xcb_xv_encoding_info_name (const xcb_xv_encoding_info_t *R);
990
991 int
992 xcb_xv_encoding_info_name_length (const xcb_xv_encoding_info_t *R);
993
994 xcb_generic_iterator_t
995 xcb_xv_encoding_info_name_end (const xcb_xv_encoding_info_t *R);
996
997 /**
998 * Get the next element of the iterator
999 * @param i Pointer to a xcb_xv_encoding_info_iterator_t
1000 *
1001 * Get the next element in the iterator. The member rem is
1002 * decreased by one. The member data points to the next
1003 * element. The member index is increased by sizeof(xcb_xv_encoding_info_t)
1004 */
1005 void
1006 xcb_xv_encoding_info_next (xcb_xv_encoding_info_iterator_t *i);
1007
1008 /**
1009 * Return the iterator pointing to the last element
1010 * @param i An xcb_xv_encoding_info_iterator_t
1011 * @return The iterator pointing to the last element
1012 *
1013 * Set the current element in the iterator to the last element.
1014 * The member rem is set to 0. The member data points to the
1015 * last element.
1016 */
1017 xcb_generic_iterator_t
1018 xcb_xv_encoding_info_end (xcb_xv_encoding_info_iterator_t i);
1019
1020 int
1021 xcb_xv_image_sizeof (const void *_buffer);
1022
1023 uint32_t *
1024 xcb_xv_image_pitches (const xcb_xv_image_t *R);
1025
1026 int
1027 xcb_xv_image_pitches_length (const xcb_xv_image_t *R);
1028
1029 xcb_generic_iterator_t
1030 xcb_xv_image_pitches_end (const xcb_xv_image_t *R);
1031
1032 uint32_t *
1033 xcb_xv_image_offsets (const xcb_xv_image_t *R);
1034
1035 int
1036 xcb_xv_image_offsets_length (const xcb_xv_image_t *R);
1037
1038 xcb_generic_iterator_t
1039 xcb_xv_image_offsets_end (const xcb_xv_image_t *R);
1040
1041 uint8_t *
1042 xcb_xv_image_data (const xcb_xv_image_t *R);
1043
1044 int
1045 xcb_xv_image_data_length (const xcb_xv_image_t *R);
1046
1047 xcb_generic_iterator_t
1048 xcb_xv_image_data_end (const xcb_xv_image_t *R);
1049
1050 /**
1051 * Get the next element of the iterator
1052 * @param i Pointer to a xcb_xv_image_iterator_t
1053 *
1054 * Get the next element in the iterator. The member rem is
1055 * decreased by one. The member data points to the next
1056 * element. The member index is increased by sizeof(xcb_xv_image_t)
1057 */
1058 void
1059 xcb_xv_image_next (xcb_xv_image_iterator_t *i);
1060
1061 /**
1062 * Return the iterator pointing to the last element
1063 * @param i An xcb_xv_image_iterator_t
1064 * @return The iterator pointing to the last element
1065 *
1066 * Set the current element in the iterator to the last element.
1067 * The member rem is set to 0. The member data points to the
1068 * last element.
1069 */
1070 xcb_generic_iterator_t
1071 xcb_xv_image_end (xcb_xv_image_iterator_t i);
1072
1073 int
1074 xcb_xv_attribute_info_sizeof (const void *_buffer);
1075
1076 char *
1077 xcb_xv_attribute_info_name (const xcb_xv_attribute_info_t *R);
1078
1079 int
1080 xcb_xv_attribute_info_name_length (const xcb_xv_attribute_info_t *R);
1081
1082 xcb_generic_iterator_t
1083 xcb_xv_attribute_info_name_end (const xcb_xv_attribute_info_t *R);
1084
1085 /**
1086 * Get the next element of the iterator
1087 * @param i Pointer to a xcb_xv_attribute_info_iterator_t
1088 *
1089 * Get the next element in the iterator. The member rem is
1090 * decreased by one. The member data points to the next
1091 * element. The member index is increased by sizeof(xcb_xv_attribute_info_t)
1092 */
1093 void
1094 xcb_xv_attribute_info_next (xcb_xv_attribute_info_iterator_t *i);
1095
1096 /**
1097 * Return the iterator pointing to the last element
1098 * @param i An xcb_xv_attribute_info_iterator_t
1099 * @return The iterator pointing to the last element
1100 *
1101 * Set the current element in the iterator to the last element.
1102 * The member rem is set to 0. The member data points to the
1103 * last element.
1104 */
1105 xcb_generic_iterator_t
1106 xcb_xv_attribute_info_end (xcb_xv_attribute_info_iterator_t i);
1107
1108 /**
1109 * Get the next element of the iterator
1110 * @param i Pointer to a xcb_xv_image_format_info_iterator_t
1111 *
1112 * Get the next element in the iterator. The member rem is
1113 * decreased by one. The member data points to the next
1114 * element. The member index is increased by sizeof(xcb_xv_image_format_info_t)
1115 */
1116 void
1117 xcb_xv_image_format_info_next (xcb_xv_image_format_info_iterator_t *i);
1118
1119 /**
1120 * Return the iterator pointing to the last element
1121 * @param i An xcb_xv_image_format_info_iterator_t
1122 * @return The iterator pointing to the last element
1123 *
1124 * Set the current element in the iterator to the last element.
1125 * The member rem is set to 0. The member data points to the
1126 * last element.
1127 */
1128 xcb_generic_iterator_t
1129 xcb_xv_image_format_info_end (xcb_xv_image_format_info_iterator_t i);
1130
1131 /**
1132 *
1133 * @param c The connection
1134 * @return A cookie
1135 *
1136 * Delivers a request to the X server.
1137 *
1138 */
1139 xcb_xv_query_extension_cookie_t
1140 xcb_xv_query_extension (xcb_connection_t *c);
1141
1142 /**
1143 *
1144 * @param c The connection
1145 * @return A cookie
1146 *
1147 * Delivers a request to the X server.
1148 *
1149 * This form can be used only if the request will cause
1150 * a reply to be generated. Any returned error will be
1151 * placed in the event queue.
1152 */
1153 xcb_xv_query_extension_cookie_t
1154 xcb_xv_query_extension_unchecked (xcb_connection_t *c);
1155
1156 /**
1157 * Return the reply
1158 * @param c The connection
1159 * @param cookie The cookie
1160 * @param e The xcb_generic_error_t supplied
1161 *
1162 * Returns the reply of the request asked by
1163 *
1164 * The parameter @p e supplied to this function must be NULL if
1165 * xcb_xv_query_extension_unchecked(). is used.
1166 * Otherwise, it stores the error if any.
1167 *
1168 * The returned value must be freed by the caller using free().
1169 */
1170 xcb_xv_query_extension_reply_t *
1171 xcb_xv_query_extension_reply (xcb_connection_t *c,
1172 xcb_xv_query_extension_cookie_t cookie /**< */,
1173 xcb_generic_error_t **e);
1174
1175 int
1176 xcb_xv_query_adaptors_sizeof (const void *_buffer);
1177
1178 /**
1179 *
1180 * @param c The connection
1181 * @return A cookie
1182 *
1183 * Delivers a request to the X server.
1184 *
1185 */
1186 xcb_xv_query_adaptors_cookie_t
1187 xcb_xv_query_adaptors (xcb_connection_t *c,
1188 xcb_window_t window);
1189
1190 /**
1191 *
1192 * @param c The connection
1193 * @return A cookie
1194 *
1195 * Delivers a request to the X server.
1196 *
1197 * This form can be used only if the request will cause
1198 * a reply to be generated. Any returned error will be
1199 * placed in the event queue.
1200 */
1201 xcb_xv_query_adaptors_cookie_t
1202 xcb_xv_query_adaptors_unchecked (xcb_connection_t *c,
1203 xcb_window_t window);
1204
1205 int
1206 xcb_xv_query_adaptors_info_length (const xcb_xv_query_adaptors_reply_t *R);
1207
1208 xcb_xv_adaptor_info_iterator_t
1209 xcb_xv_query_adaptors_info_iterator (const xcb_xv_query_adaptors_reply_t *R);
1210
1211 /**
1212 * Return the reply
1213 * @param c The connection
1214 * @param cookie The cookie
1215 * @param e The xcb_generic_error_t supplied
1216 *
1217 * Returns the reply of the request asked by
1218 *
1219 * The parameter @p e supplied to this function must be NULL if
1220 * xcb_xv_query_adaptors_unchecked(). is used.
1221 * Otherwise, it stores the error if any.
1222 *
1223 * The returned value must be freed by the caller using free().
1224 */
1225 xcb_xv_query_adaptors_reply_t *
1226 xcb_xv_query_adaptors_reply (xcb_connection_t *c,
1227 xcb_xv_query_adaptors_cookie_t cookie /**< */,
1228 xcb_generic_error_t **e);
1229
1230 int
1231 xcb_xv_query_encodings_sizeof (const void *_buffer);
1232
1233 /**
1234 *
1235 * @param c The connection
1236 * @return A cookie
1237 *
1238 * Delivers a request to the X server.
1239 *
1240 */
1241 xcb_xv_query_encodings_cookie_t
1242 xcb_xv_query_encodings (xcb_connection_t *c,
1243 xcb_xv_port_t port);
1244
1245 /**
1246 *
1247 * @param c The connection
1248 * @return A cookie
1249 *
1250 * Delivers a request to the X server.
1251 *
1252 * This form can be used only if the request will cause
1253 * a reply to be generated. Any returned error will be
1254 * placed in the event queue.
1255 */
1256 xcb_xv_query_encodings_cookie_t
1257 xcb_xv_query_encodings_unchecked (xcb_connection_t *c,
1258 xcb_xv_port_t port);
1259
1260 int
1261 xcb_xv_query_encodings_info_length (const xcb_xv_query_encodings_reply_t *R);
1262
1263 xcb_xv_encoding_info_iterator_t
1264 xcb_xv_query_encodings_info_iterator (const xcb_xv_query_encodings_reply_t *R);
1265
1266 /**
1267 * Return the reply
1268 * @param c The connection
1269 * @param cookie The cookie
1270 * @param e The xcb_generic_error_t supplied
1271 *
1272 * Returns the reply of the request asked by
1273 *
1274 * The parameter @p e supplied to this function must be NULL if
1275 * xcb_xv_query_encodings_unchecked(). is used.
1276 * Otherwise, it stores the error if any.
1277 *
1278 * The returned value must be freed by the caller using free().
1279 */
1280 xcb_xv_query_encodings_reply_t *
1281 xcb_xv_query_encodings_reply (xcb_connection_t *c,
1282 xcb_xv_query_encodings_cookie_t cookie /**< */,
1283 xcb_generic_error_t **e);
1284
1285 /**
1286 *
1287 * @param c The connection
1288 * @return A cookie
1289 *
1290 * Delivers a request to the X server.
1291 *
1292 */
1293 xcb_xv_grab_port_cookie_t
1294 xcb_xv_grab_port (xcb_connection_t *c,
1295 xcb_xv_port_t port,
1296 xcb_timestamp_t time);
1297
1298 /**
1299 *
1300 * @param c The connection
1301 * @return A cookie
1302 *
1303 * Delivers a request to the X server.
1304 *
1305 * This form can be used only if the request will cause
1306 * a reply to be generated. Any returned error will be
1307 * placed in the event queue.
1308 */
1309 xcb_xv_grab_port_cookie_t
1310 xcb_xv_grab_port_unchecked (xcb_connection_t *c,
1311 xcb_xv_port_t port,
1312 xcb_timestamp_t time);
1313
1314 /**
1315 * Return the reply
1316 * @param c The connection
1317 * @param cookie The cookie
1318 * @param e The xcb_generic_error_t supplied
1319 *
1320 * Returns the reply of the request asked by
1321 *
1322 * The parameter @p e supplied to this function must be NULL if
1323 * xcb_xv_grab_port_unchecked(). is used.
1324 * Otherwise, it stores the error if any.
1325 *
1326 * The returned value must be freed by the caller using free().
1327 */
1328 xcb_xv_grab_port_reply_t *
1329 xcb_xv_grab_port_reply (xcb_connection_t *c,
1330 xcb_xv_grab_port_cookie_t cookie /**< */,
1331 xcb_generic_error_t **e);
1332
1333 /**
1334 *
1335 * @param c The connection
1336 * @return A cookie
1337 *
1338 * Delivers a request to the X server.
1339 *
1340 * This form can be used only if the request will not cause
1341 * a reply to be generated. Any returned error will be
1342 * saved for handling by xcb_request_check().
1343 */
1344 xcb_void_cookie_t
1345 xcb_xv_ungrab_port_checked (xcb_connection_t *c,
1346 xcb_xv_port_t port,
1347 xcb_timestamp_t time);
1348
1349 /**
1350 *
1351 * @param c The connection
1352 * @return A cookie
1353 *
1354 * Delivers a request to the X server.
1355 *
1356 */
1357 xcb_void_cookie_t
1358 xcb_xv_ungrab_port (xcb_connection_t *c,
1359 xcb_xv_port_t port,
1360 xcb_timestamp_t time);
1361
1362 /**
1363 *
1364 * @param c The connection
1365 * @return A cookie
1366 *
1367 * Delivers a request to the X server.
1368 *
1369 * This form can be used only if the request will not cause
1370 * a reply to be generated. Any returned error will be
1371 * saved for handling by xcb_request_check().
1372 */
1373 xcb_void_cookie_t
1374 xcb_xv_put_video_checked (xcb_connection_t *c,
1375 xcb_xv_port_t port,
1376 xcb_drawable_t drawable,
1377 xcb_gcontext_t gc,
1378 int16_t vid_x,
1379 int16_t vid_y,
1380 uint16_t vid_w,
1381 uint16_t vid_h,
1382 int16_t drw_x,
1383 int16_t drw_y,
1384 uint16_t drw_w,
1385 uint16_t drw_h);
1386
1387 /**
1388 *
1389 * @param c The connection
1390 * @return A cookie
1391 *
1392 * Delivers a request to the X server.
1393 *
1394 */
1395 xcb_void_cookie_t
1396 xcb_xv_put_video (xcb_connection_t *c,
1397 xcb_xv_port_t port,
1398 xcb_drawable_t drawable,
1399 xcb_gcontext_t gc,
1400 int16_t vid_x,
1401 int16_t vid_y,
1402 uint16_t vid_w,
1403 uint16_t vid_h,
1404 int16_t drw_x,
1405 int16_t drw_y,
1406 uint16_t drw_w,
1407 uint16_t drw_h);
1408
1409 /**
1410 *
1411 * @param c The connection
1412 * @return A cookie
1413 *
1414 * Delivers a request to the X server.
1415 *
1416 * This form can be used only if the request will not cause
1417 * a reply to be generated. Any returned error will be
1418 * saved for handling by xcb_request_check().
1419 */
1420 xcb_void_cookie_t
1421 xcb_xv_put_still_checked (xcb_connection_t *c,
1422 xcb_xv_port_t port,
1423 xcb_drawable_t drawable,
1424 xcb_gcontext_t gc,
1425 int16_t vid_x,
1426 int16_t vid_y,
1427 uint16_t vid_w,
1428 uint16_t vid_h,
1429 int16_t drw_x,
1430 int16_t drw_y,
1431 uint16_t drw_w,
1432 uint16_t drw_h);
1433
1434 /**
1435 *
1436 * @param c The connection
1437 * @return A cookie
1438 *
1439 * Delivers a request to the X server.
1440 *
1441 */
1442 xcb_void_cookie_t
1443 xcb_xv_put_still (xcb_connection_t *c,
1444 xcb_xv_port_t port,
1445 xcb_drawable_t drawable,
1446 xcb_gcontext_t gc,
1447 int16_t vid_x,
1448 int16_t vid_y,
1449 uint16_t vid_w,
1450 uint16_t vid_h,
1451 int16_t drw_x,
1452 int16_t drw_y,
1453 uint16_t drw_w,
1454 uint16_t drw_h);
1455
1456 /**
1457 *
1458 * @param c The connection
1459 * @return A cookie
1460 *
1461 * Delivers a request to the X server.
1462 *
1463 * This form can be used only if the request will not cause
1464 * a reply to be generated. Any returned error will be
1465 * saved for handling by xcb_request_check().
1466 */
1467 xcb_void_cookie_t
1468 xcb_xv_get_video_checked (xcb_connection_t *c,
1469 xcb_xv_port_t port,
1470 xcb_drawable_t drawable,
1471 xcb_gcontext_t gc,
1472 int16_t vid_x,
1473 int16_t vid_y,
1474 uint16_t vid_w,
1475 uint16_t vid_h,
1476 int16_t drw_x,
1477 int16_t drw_y,
1478 uint16_t drw_w,
1479 uint16_t drw_h);
1480
1481 /**
1482 *
1483 * @param c The connection
1484 * @return A cookie
1485 *
1486 * Delivers a request to the X server.
1487 *
1488 */
1489 xcb_void_cookie_t
1490 xcb_xv_get_video (xcb_connection_t *c,
1491 xcb_xv_port_t port,
1492 xcb_drawable_t drawable,
1493 xcb_gcontext_t gc,
1494 int16_t vid_x,
1495 int16_t vid_y,
1496 uint16_t vid_w,
1497 uint16_t vid_h,
1498 int16_t drw_x,
1499 int16_t drw_y,
1500 uint16_t drw_w,
1501 uint16_t drw_h);
1502
1503 /**
1504 *
1505 * @param c The connection
1506 * @return A cookie
1507 *
1508 * Delivers a request to the X server.
1509 *
1510 * This form can be used only if the request will not cause
1511 * a reply to be generated. Any returned error will be
1512 * saved for handling by xcb_request_check().
1513 */
1514 xcb_void_cookie_t
1515 xcb_xv_get_still_checked (xcb_connection_t *c,
1516 xcb_xv_port_t port,
1517 xcb_drawable_t drawable,
1518 xcb_gcontext_t gc,
1519 int16_t vid_x,
1520 int16_t vid_y,
1521 uint16_t vid_w,
1522 uint16_t vid_h,
1523 int16_t drw_x,
1524 int16_t drw_y,
1525 uint16_t drw_w,
1526 uint16_t drw_h);
1527
1528 /**
1529 *
1530 * @param c The connection
1531 * @return A cookie
1532 *
1533 * Delivers a request to the X server.
1534 *
1535 */
1536 xcb_void_cookie_t
1537 xcb_xv_get_still (xcb_connection_t *c,
1538 xcb_xv_port_t port,
1539 xcb_drawable_t drawable,
1540 xcb_gcontext_t gc,
1541 int16_t vid_x,
1542 int16_t vid_y,
1543 uint16_t vid_w,
1544 uint16_t vid_h,
1545 int16_t drw_x,
1546 int16_t drw_y,
1547 uint16_t drw_w,
1548 uint16_t drw_h);
1549
1550 /**
1551 *
1552 * @param c The connection
1553 * @return A cookie
1554 *
1555 * Delivers a request to the X server.
1556 *
1557 * This form can be used only if the request will not cause
1558 * a reply to be generated. Any returned error will be
1559 * saved for handling by xcb_request_check().
1560 */
1561 xcb_void_cookie_t
1562 xcb_xv_stop_video_checked (xcb_connection_t *c,
1563 xcb_xv_port_t port,
1564 xcb_drawable_t drawable);
1565
1566 /**
1567 *
1568 * @param c The connection
1569 * @return A cookie
1570 *
1571 * Delivers a request to the X server.
1572 *
1573 */
1574 xcb_void_cookie_t
1575 xcb_xv_stop_video (xcb_connection_t *c,
1576 xcb_xv_port_t port,
1577 xcb_drawable_t drawable);
1578
1579 /**
1580 *
1581 * @param c The connection
1582 * @return A cookie
1583 *
1584 * Delivers a request to the X server.
1585 *
1586 * This form can be used only if the request will not cause
1587 * a reply to be generated. Any returned error will be
1588 * saved for handling by xcb_request_check().
1589 */
1590 xcb_void_cookie_t
1591 xcb_xv_select_video_notify_checked (xcb_connection_t *c,
1592 xcb_drawable_t drawable,
1593 uint8_t onoff);
1594
1595 /**
1596 *
1597 * @param c The connection
1598 * @return A cookie
1599 *
1600 * Delivers a request to the X server.
1601 *
1602 */
1603 xcb_void_cookie_t
1604 xcb_xv_select_video_notify (xcb_connection_t *c,
1605 xcb_drawable_t drawable,
1606 uint8_t onoff);
1607
1608 /**
1609 *
1610 * @param c The connection
1611 * @return A cookie
1612 *
1613 * Delivers a request to the X server.
1614 *
1615 * This form can be used only if the request will not cause
1616 * a reply to be generated. Any returned error will be
1617 * saved for handling by xcb_request_check().
1618 */
1619 xcb_void_cookie_t
1620 xcb_xv_select_port_notify_checked (xcb_connection_t *c,
1621 xcb_xv_port_t port,
1622 uint8_t onoff);
1623
1624 /**
1625 *
1626 * @param c The connection
1627 * @return A cookie
1628 *
1629 * Delivers a request to the X server.
1630 *
1631 */
1632 xcb_void_cookie_t
1633 xcb_xv_select_port_notify (xcb_connection_t *c,
1634 xcb_xv_port_t port,
1635 uint8_t onoff);
1636
1637 /**
1638 *
1639 * @param c The connection
1640 * @return A cookie
1641 *
1642 * Delivers a request to the X server.
1643 *
1644 */
1645 xcb_xv_query_best_size_cookie_t
1646 xcb_xv_query_best_size (xcb_connection_t *c,
1647 xcb_xv_port_t port,
1648 uint16_t vid_w,
1649 uint16_t vid_h,
1650 uint16_t drw_w,
1651 uint16_t drw_h,
1652 uint8_t motion);
1653
1654 /**
1655 *
1656 * @param c The connection
1657 * @return A cookie
1658 *
1659 * Delivers a request to the X server.
1660 *
1661 * This form can be used only if the request will cause
1662 * a reply to be generated. Any returned error will be
1663 * placed in the event queue.
1664 */
1665 xcb_xv_query_best_size_cookie_t
1666 xcb_xv_query_best_size_unchecked (xcb_connection_t *c,
1667 xcb_xv_port_t port,
1668 uint16_t vid_w,
1669 uint16_t vid_h,
1670 uint16_t drw_w,
1671 uint16_t drw_h,
1672 uint8_t motion);
1673
1674 /**
1675 * Return the reply
1676 * @param c The connection
1677 * @param cookie The cookie
1678 * @param e The xcb_generic_error_t supplied
1679 *
1680 * Returns the reply of the request asked by
1681 *
1682 * The parameter @p e supplied to this function must be NULL if
1683 * xcb_xv_query_best_size_unchecked(). is used.
1684 * Otherwise, it stores the error if any.
1685 *
1686 * The returned value must be freed by the caller using free().
1687 */
1688 xcb_xv_query_best_size_reply_t *
1689 xcb_xv_query_best_size_reply (xcb_connection_t *c,
1690 xcb_xv_query_best_size_cookie_t cookie /**< */,
1691 xcb_generic_error_t **e);
1692
1693 /**
1694 *
1695 * @param c The connection
1696 * @return A cookie
1697 *
1698 * Delivers a request to the X server.
1699 *
1700 * This form can be used only if the request will not cause
1701 * a reply to be generated. Any returned error will be
1702 * saved for handling by xcb_request_check().
1703 */
1704 xcb_void_cookie_t
1705 xcb_xv_set_port_attribute_checked (xcb_connection_t *c,
1706 xcb_xv_port_t port,
1707 xcb_atom_t attribute,
1708 int32_t value);
1709
1710 /**
1711 *
1712 * @param c The connection
1713 * @return A cookie
1714 *
1715 * Delivers a request to the X server.
1716 *
1717 */
1718 xcb_void_cookie_t
1719 xcb_xv_set_port_attribute (xcb_connection_t *c,
1720 xcb_xv_port_t port,
1721 xcb_atom_t attribute,
1722 int32_t value);
1723
1724 /**
1725 *
1726 * @param c The connection
1727 * @return A cookie
1728 *
1729 * Delivers a request to the X server.
1730 *
1731 */
1732 xcb_xv_get_port_attribute_cookie_t
1733 xcb_xv_get_port_attribute (xcb_connection_t *c,
1734 xcb_xv_port_t port,
1735 xcb_atom_t attribute);
1736
1737 /**
1738 *
1739 * @param c The connection
1740 * @return A cookie
1741 *
1742 * Delivers a request to the X server.
1743 *
1744 * This form can be used only if the request will cause
1745 * a reply to be generated. Any returned error will be
1746 * placed in the event queue.
1747 */
1748 xcb_xv_get_port_attribute_cookie_t
1749 xcb_xv_get_port_attribute_unchecked (xcb_connection_t *c,
1750 xcb_xv_port_t port,
1751 xcb_atom_t attribute);
1752
1753 /**
1754 * Return the reply
1755 * @param c The connection
1756 * @param cookie The cookie
1757 * @param e The xcb_generic_error_t supplied
1758 *
1759 * Returns the reply of the request asked by
1760 *
1761 * The parameter @p e supplied to this function must be NULL if
1762 * xcb_xv_get_port_attribute_unchecked(). is used.
1763 * Otherwise, it stores the error if any.
1764 *
1765 * The returned value must be freed by the caller using free().
1766 */
1767 xcb_xv_get_port_attribute_reply_t *
1768 xcb_xv_get_port_attribute_reply (xcb_connection_t *c,
1769 xcb_xv_get_port_attribute_cookie_t cookie /**< */,
1770 xcb_generic_error_t **e);
1771
1772 int
1773 xcb_xv_query_port_attributes_sizeof (const void *_buffer);
1774
1775 /**
1776 *
1777 * @param c The connection
1778 * @return A cookie
1779 *
1780 * Delivers a request to the X server.
1781 *
1782 */
1783 xcb_xv_query_port_attributes_cookie_t
1784 xcb_xv_query_port_attributes (xcb_connection_t *c,
1785 xcb_xv_port_t port);
1786
1787 /**
1788 *
1789 * @param c The connection
1790 * @return A cookie
1791 *
1792 * Delivers a request to the X server.
1793 *
1794 * This form can be used only if the request will cause
1795 * a reply to be generated. Any returned error will be
1796 * placed in the event queue.
1797 */
1798 xcb_xv_query_port_attributes_cookie_t
1799 xcb_xv_query_port_attributes_unchecked (xcb_connection_t *c,
1800 xcb_xv_port_t port);
1801
1802 int
1803 xcb_xv_query_port_attributes_attributes_length (const xcb_xv_query_port_attributes_reply_t *R);
1804
1805 xcb_xv_attribute_info_iterator_t
1806 xcb_xv_query_port_attributes_attributes_iterator (const xcb_xv_query_port_attributes_reply_t *R);
1807
1808 /**
1809 * Return the reply
1810 * @param c The connection
1811 * @param cookie The cookie
1812 * @param e The xcb_generic_error_t supplied
1813 *
1814 * Returns the reply of the request asked by
1815 *
1816 * The parameter @p e supplied to this function must be NULL if
1817 * xcb_xv_query_port_attributes_unchecked(). is used.
1818 * Otherwise, it stores the error if any.
1819 *
1820 * The returned value must be freed by the caller using free().
1821 */
1822 xcb_xv_query_port_attributes_reply_t *
1823 xcb_xv_query_port_attributes_reply (xcb_connection_t *c,
1824 xcb_xv_query_port_attributes_cookie_t cookie /**< */,
1825 xcb_generic_error_t **e);
1826
1827 int
1828 xcb_xv_list_image_formats_sizeof (const void *_buffer);
1829
1830 /**
1831 *
1832 * @param c The connection
1833 * @return A cookie
1834 *
1835 * Delivers a request to the X server.
1836 *
1837 */
1838 xcb_xv_list_image_formats_cookie_t
1839 xcb_xv_list_image_formats (xcb_connection_t *c,
1840 xcb_xv_port_t port);
1841
1842 /**
1843 *
1844 * @param c The connection
1845 * @return A cookie
1846 *
1847 * Delivers a request to the X server.
1848 *
1849 * This form can be used only if the request will cause
1850 * a reply to be generated. Any returned error will be
1851 * placed in the event queue.
1852 */
1853 xcb_xv_list_image_formats_cookie_t
1854 xcb_xv_list_image_formats_unchecked (xcb_connection_t *c,
1855 xcb_xv_port_t port);
1856
1857 xcb_xv_image_format_info_t *
1858 xcb_xv_list_image_formats_format (const xcb_xv_list_image_formats_reply_t *R);
1859
1860 int
1861 xcb_xv_list_image_formats_format_length (const xcb_xv_list_image_formats_reply_t *R);
1862
1863 xcb_xv_image_format_info_iterator_t
1864 xcb_xv_list_image_formats_format_iterator (const xcb_xv_list_image_formats_reply_t *R);
1865
1866 /**
1867 * Return the reply
1868 * @param c The connection
1869 * @param cookie The cookie
1870 * @param e The xcb_generic_error_t supplied
1871 *
1872 * Returns the reply of the request asked by
1873 *
1874 * The parameter @p e supplied to this function must be NULL if
1875 * xcb_xv_list_image_formats_unchecked(). is used.
1876 * Otherwise, it stores the error if any.
1877 *
1878 * The returned value must be freed by the caller using free().
1879 */
1880 xcb_xv_list_image_formats_reply_t *
1881 xcb_xv_list_image_formats_reply (xcb_connection_t *c,
1882 xcb_xv_list_image_formats_cookie_t cookie /**< */,
1883 xcb_generic_error_t **e);
1884
1885 int
1886 xcb_xv_query_image_attributes_sizeof (const void *_buffer);
1887
1888 /**
1889 *
1890 * @param c The connection
1891 * @return A cookie
1892 *
1893 * Delivers a request to the X server.
1894 *
1895 */
1896 xcb_xv_query_image_attributes_cookie_t
1897 xcb_xv_query_image_attributes (xcb_connection_t *c,
1898 xcb_xv_port_t port,
1899 uint32_t id,
1900 uint16_t width,
1901 uint16_t height);
1902
1903 /**
1904 *
1905 * @param c The connection
1906 * @return A cookie
1907 *
1908 * Delivers a request to the X server.
1909 *
1910 * This form can be used only if the request will cause
1911 * a reply to be generated. Any returned error will be
1912 * placed in the event queue.
1913 */
1914 xcb_xv_query_image_attributes_cookie_t
1915 xcb_xv_query_image_attributes_unchecked (xcb_connection_t *c,
1916 xcb_xv_port_t port,
1917 uint32_t id,
1918 uint16_t width,
1919 uint16_t height);
1920
1921 uint32_t *
1922 xcb_xv_query_image_attributes_pitches (const xcb_xv_query_image_attributes_reply_t *R);
1923
1924 int
1925 xcb_xv_query_image_attributes_pitches_length (const xcb_xv_query_image_attributes_reply_t *R);
1926
1927 xcb_generic_iterator_t
1928 xcb_xv_query_image_attributes_pitches_end (const xcb_xv_query_image_attributes_reply_t *R);
1929
1930 uint32_t *
1931 xcb_xv_query_image_attributes_offsets (const xcb_xv_query_image_attributes_reply_t *R);
1932
1933 int
1934 xcb_xv_query_image_attributes_offsets_length (const xcb_xv_query_image_attributes_reply_t *R);
1935
1936 xcb_generic_iterator_t
1937 xcb_xv_query_image_attributes_offsets_end (const xcb_xv_query_image_attributes_reply_t *R);
1938
1939 /**
1940 * Return the reply
1941 * @param c The connection
1942 * @param cookie The cookie
1943 * @param e The xcb_generic_error_t supplied
1944 *
1945 * Returns the reply of the request asked by
1946 *
1947 * The parameter @p e supplied to this function must be NULL if
1948 * xcb_xv_query_image_attributes_unchecked(). is used.
1949 * Otherwise, it stores the error if any.
1950 *
1951 * The returned value must be freed by the caller using free().
1952 */
1953 xcb_xv_query_image_attributes_reply_t *
1954 xcb_xv_query_image_attributes_reply (xcb_connection_t *c,
1955 xcb_xv_query_image_attributes_cookie_t cookie /**< */,
1956 xcb_generic_error_t **e);
1957
1958 int
1959 xcb_xv_put_image_sizeof (const void *_buffer,
1960 uint32_t data_len);
1961
1962 /**
1963 *
1964 * @param c The connection
1965 * @return A cookie
1966 *
1967 * Delivers a request to the X server.
1968 *
1969 * This form can be used only if the request will not cause
1970 * a reply to be generated. Any returned error will be
1971 * saved for handling by xcb_request_check().
1972 */
1973 xcb_void_cookie_t
1974 xcb_xv_put_image_checked (xcb_connection_t *c,
1975 xcb_xv_port_t port,
1976 xcb_drawable_t drawable,
1977 xcb_gcontext_t gc,
1978 uint32_t id,
1979 int16_t src_x,
1980 int16_t src_y,
1981 uint16_t src_w,
1982 uint16_t src_h,
1983 int16_t drw_x,
1984 int16_t drw_y,
1985 uint16_t drw_w,
1986 uint16_t drw_h,
1987 uint16_t width,
1988 uint16_t height,
1989 uint32_t data_len,
1990 const uint8_t *data);
1991
1992 /**
1993 *
1994 * @param c The connection
1995 * @return A cookie
1996 *
1997 * Delivers a request to the X server.
1998 *
1999 */
2000 xcb_void_cookie_t
2001 xcb_xv_put_image (xcb_connection_t *c,
2002 xcb_xv_port_t port,
2003 xcb_drawable_t drawable,
2004 xcb_gcontext_t gc,
2005 uint32_t id,
2006 int16_t src_x,
2007 int16_t src_y,
2008 uint16_t src_w,
2009 uint16_t src_h,
2010 int16_t drw_x,
2011 int16_t drw_y,
2012 uint16_t drw_w,
2013 uint16_t drw_h,
2014 uint16_t width,
2015 uint16_t height,
2016 uint32_t data_len,
2017 const uint8_t *data);
2018
2019 uint8_t *
2020 xcb_xv_put_image_data (const xcb_xv_put_image_request_t *R);
2021
2022 int
2023 xcb_xv_put_image_data_length (const xcb_xv_put_image_request_t *R);
2024
2025 xcb_generic_iterator_t
2026 xcb_xv_put_image_data_end (const xcb_xv_put_image_request_t *R);
2027
2028 /**
2029 *
2030 * @param c The connection
2031 * @return A cookie
2032 *
2033 * Delivers a request to the X server.
2034 *
2035 * This form can be used only if the request will not cause
2036 * a reply to be generated. Any returned error will be
2037 * saved for handling by xcb_request_check().
2038 */
2039 xcb_void_cookie_t
2040 xcb_xv_shm_put_image_checked (xcb_connection_t *c,
2041 xcb_xv_port_t port,
2042 xcb_drawable_t drawable,
2043 xcb_gcontext_t gc,
2044 xcb_shm_seg_t shmseg,
2045 uint32_t id,
2046 uint32_t offset,
2047 int16_t src_x,
2048 int16_t src_y,
2049 uint16_t src_w,
2050 uint16_t src_h,
2051 int16_t drw_x,
2052 int16_t drw_y,
2053 uint16_t drw_w,
2054 uint16_t drw_h,
2055 uint16_t width,
2056 uint16_t height,
2057 uint8_t send_event);
2058
2059 /**
2060 *
2061 * @param c The connection
2062 * @return A cookie
2063 *
2064 * Delivers a request to the X server.
2065 *
2066 */
2067 xcb_void_cookie_t
2068 xcb_xv_shm_put_image (xcb_connection_t *c,
2069 xcb_xv_port_t port,
2070 xcb_drawable_t drawable,
2071 xcb_gcontext_t gc,
2072 xcb_shm_seg_t shmseg,
2073 uint32_t id,
2074 uint32_t offset,
2075 int16_t src_x,
2076 int16_t src_y,
2077 uint16_t src_w,
2078 uint16_t src_h,
2079 int16_t drw_x,
2080 int16_t drw_y,
2081 uint16_t drw_w,
2082 uint16_t drw_h,
2083 uint16_t width,
2084 uint16_t height,
2085 uint8_t send_event);
2086
2087
2088 #ifdef __cplusplus
2089 }
2090 #endif
2091
2092 #endif
2093
2094 /**
2095 * @}
2096 */