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