1 /* 2 * This file generated automatically from sync.xml by d_client.py. 3 * Edit at your peril. 4 */ 5 6 /** 7 * @defgroup XCB_Sync_API XCB Sync API 8 * @brief Sync XCB Protocol Implementation. 9 * @{ 10 **/ 11 12 module xcb.sync; 13 14 import xcb.xcb; 15 import xcb.xproto; 16 17 extern (C): 18 19 enum int XCB_SYNC_MAJOR_VERSION = 3; 20 enum int XCB_SYNC_MINOR_VERSION = 1; 21 22 extern (C) __gshared extern xcb_extension_t xcb_sync_id; 23 24 alias xcb_sync_alarm_t = uint; 25 26 /** 27 * @brief xcb_sync_alarm_iterator_t 28 **/ 29 struct xcb_sync_alarm_iterator_t { 30 xcb_sync_alarm_t* data; /**< */ 31 int rem; /**< */ 32 int index; /**< */ 33 } 34 35 enum xcb_sync_alarmstate_t { 36 XCB_SYNC_ALARMSTATE_ACTIVE = 0, 37 XCB_SYNC_ALARMSTATE_INACTIVE = 1, 38 XCB_SYNC_ALARMSTATE_DESTROYED = 2 39 } 40 41 alias XCB_SYNC_ALARMSTATE_ACTIVE = xcb_sync_alarmstate_t.XCB_SYNC_ALARMSTATE_ACTIVE; 42 alias XCB_SYNC_ALARMSTATE_INACTIVE = xcb_sync_alarmstate_t.XCB_SYNC_ALARMSTATE_INACTIVE; 43 alias XCB_SYNC_ALARMSTATE_DESTROYED = xcb_sync_alarmstate_t.XCB_SYNC_ALARMSTATE_DESTROYED; 44 45 alias xcb_sync_counter_t = uint; 46 47 /** 48 * @brief xcb_sync_counter_iterator_t 49 **/ 50 struct xcb_sync_counter_iterator_t { 51 xcb_sync_counter_t* data; /**< */ 52 int rem; /**< */ 53 int index; /**< */ 54 } 55 56 alias xcb_sync_fence_t = uint; 57 58 /** 59 * @brief xcb_sync_fence_iterator_t 60 **/ 61 struct xcb_sync_fence_iterator_t { 62 xcb_sync_fence_t* data; /**< */ 63 int rem; /**< */ 64 int index; /**< */ 65 } 66 67 enum xcb_sync_testtype_t { 68 XCB_SYNC_TESTTYPE_POSITIVE_TRANSITION = 0, 69 XCB_SYNC_TESTTYPE_NEGATIVE_TRANSITION = 1, 70 XCB_SYNC_TESTTYPE_POSITIVE_COMPARISON = 2, 71 XCB_SYNC_TESTTYPE_NEGATIVE_COMPARISON = 3 72 } 73 74 alias XCB_SYNC_TESTTYPE_POSITIVE_TRANSITION = xcb_sync_testtype_t.XCB_SYNC_TESTTYPE_POSITIVE_TRANSITION; 75 alias XCB_SYNC_TESTTYPE_NEGATIVE_TRANSITION = xcb_sync_testtype_t.XCB_SYNC_TESTTYPE_NEGATIVE_TRANSITION; 76 alias XCB_SYNC_TESTTYPE_POSITIVE_COMPARISON = xcb_sync_testtype_t.XCB_SYNC_TESTTYPE_POSITIVE_COMPARISON; 77 alias XCB_SYNC_TESTTYPE_NEGATIVE_COMPARISON = xcb_sync_testtype_t.XCB_SYNC_TESTTYPE_NEGATIVE_COMPARISON; 78 79 enum xcb_sync_valuetype_t { 80 XCB_SYNC_VALUETYPE_ABSOLUTE = 0, 81 XCB_SYNC_VALUETYPE_RELATIVE = 1 82 } 83 84 alias XCB_SYNC_VALUETYPE_ABSOLUTE = xcb_sync_valuetype_t.XCB_SYNC_VALUETYPE_ABSOLUTE; 85 alias XCB_SYNC_VALUETYPE_RELATIVE = xcb_sync_valuetype_t.XCB_SYNC_VALUETYPE_RELATIVE; 86 87 enum xcb_sync_ca_t { 88 XCB_SYNC_CA_COUNTER = 1, 89 XCB_SYNC_CA_VALUE_TYPE = 2, 90 XCB_SYNC_CA_VALUE = 4, 91 XCB_SYNC_CA_TEST_TYPE = 8, 92 XCB_SYNC_CA_DELTA = 16, 93 XCB_SYNC_CA_EVENTS = 32 94 } 95 96 alias XCB_SYNC_CA_COUNTER = xcb_sync_ca_t.XCB_SYNC_CA_COUNTER; 97 alias XCB_SYNC_CA_VALUE_TYPE = xcb_sync_ca_t.XCB_SYNC_CA_VALUE_TYPE; 98 alias XCB_SYNC_CA_VALUE = xcb_sync_ca_t.XCB_SYNC_CA_VALUE; 99 alias XCB_SYNC_CA_TEST_TYPE = xcb_sync_ca_t.XCB_SYNC_CA_TEST_TYPE; 100 alias XCB_SYNC_CA_DELTA = xcb_sync_ca_t.XCB_SYNC_CA_DELTA; 101 alias XCB_SYNC_CA_EVENTS = xcb_sync_ca_t.XCB_SYNC_CA_EVENTS; 102 103 /** 104 * @brief xcb_sync_int64_t 105 **/ 106 struct xcb_sync_int64_t { 107 int hi; /**< */ 108 uint lo; /**< */ 109 } 110 111 /** 112 * @brief xcb_sync_int64_iterator_t 113 **/ 114 struct xcb_sync_int64_iterator_t { 115 xcb_sync_int64_t* data; /**< */ 116 int rem; /**< */ 117 int index; /**< */ 118 } 119 120 /** 121 * @brief xcb_sync_systemcounter_t 122 **/ 123 struct xcb_sync_systemcounter_t { 124 xcb_sync_counter_t counter; /**< */ 125 xcb_sync_int64_t resolution; /**< */ 126 ushort name_len; /**< */ 127 } 128 129 /** 130 * @brief xcb_sync_systemcounter_iterator_t 131 **/ 132 struct xcb_sync_systemcounter_iterator_t { 133 xcb_sync_systemcounter_t* data; /**< */ 134 int rem; /**< */ 135 int index; /**< */ 136 } 137 138 /** 139 * @brief xcb_sync_trigger_t 140 **/ 141 struct xcb_sync_trigger_t { 142 xcb_sync_counter_t counter; /**< */ 143 uint wait_type; /**< */ 144 xcb_sync_int64_t wait_value; /**< */ 145 uint test_type; /**< */ 146 } 147 148 /** 149 * @brief xcb_sync_trigger_iterator_t 150 **/ 151 struct xcb_sync_trigger_iterator_t { 152 xcb_sync_trigger_t* data; /**< */ 153 int rem; /**< */ 154 int index; /**< */ 155 } 156 157 /** 158 * @brief xcb_sync_waitcondition_t 159 **/ 160 struct xcb_sync_waitcondition_t { 161 xcb_sync_trigger_t trigger; /**< */ 162 xcb_sync_int64_t event_threshold; /**< */ 163 } 164 165 /** 166 * @brief xcb_sync_waitcondition_iterator_t 167 **/ 168 struct xcb_sync_waitcondition_iterator_t { 169 xcb_sync_waitcondition_t* data; /**< */ 170 int rem; /**< */ 171 int index; /**< */ 172 } 173 174 /** Opcode for xcb_sync_counter. */ 175 enum XCB_SYNC_COUNTER = 0; 176 177 /** 178 * @brief xcb_sync_counter_error_t 179 **/ 180 struct xcb_sync_counter_error_t { 181 ubyte response_type; /**< */ 182 ubyte error_code; /**< */ 183 ushort sequence; /**< */ 184 uint bad_counter; /**< */ 185 ushort minor_opcode; /**< */ 186 ubyte major_opcode; /**< */ 187 } 188 189 /** Opcode for xcb_sync_alarm. */ 190 enum XCB_SYNC_ALARM = 1; 191 192 /** 193 * @brief xcb_sync_alarm_error_t 194 **/ 195 struct xcb_sync_alarm_error_t { 196 ubyte response_type; /**< */ 197 ubyte error_code; /**< */ 198 ushort sequence; /**< */ 199 uint bad_alarm; /**< */ 200 ushort minor_opcode; /**< */ 201 ubyte major_opcode; /**< */ 202 } 203 204 /** 205 * @brief xcb_sync_initialize_cookie_t 206 **/ 207 struct xcb_sync_initialize_cookie_t { 208 uint sequence; /**< */ 209 } 210 211 /** Opcode for xcb_sync_initialize. */ 212 enum XCB_SYNC_INITIALIZE = 0; 213 214 /** 215 * @brief xcb_sync_initialize_request_t 216 **/ 217 struct xcb_sync_initialize_request_t { 218 ubyte major_opcode; /**< */ 219 ubyte minor_opcode; /**< */ 220 ushort length; /**< */ 221 ubyte desired_major_version; /**< */ 222 ubyte desired_minor_version; /**< */ 223 } 224 225 /** 226 * @brief xcb_sync_initialize_reply_t 227 **/ 228 struct xcb_sync_initialize_reply_t { 229 ubyte response_type; /**< */ 230 ubyte pad0; /**< */ 231 ushort sequence; /**< */ 232 uint length; /**< */ 233 ubyte major_version; /**< */ 234 ubyte minor_version; /**< */ 235 ubyte[22] pad1; /**< */ 236 } 237 238 /** 239 * @brief xcb_sync_list_system_counters_cookie_t 240 **/ 241 struct xcb_sync_list_system_counters_cookie_t { 242 uint sequence; /**< */ 243 } 244 245 /** Opcode for xcb_sync_list_system_counters. */ 246 enum XCB_SYNC_LIST_SYSTEM_COUNTERS = 1; 247 248 /** 249 * @brief xcb_sync_list_system_counters_request_t 250 **/ 251 struct xcb_sync_list_system_counters_request_t { 252 ubyte major_opcode; /**< */ 253 ubyte minor_opcode; /**< */ 254 ushort length; /**< */ 255 } 256 257 /** 258 * @brief xcb_sync_list_system_counters_reply_t 259 **/ 260 struct xcb_sync_list_system_counters_reply_t { 261 ubyte response_type; /**< */ 262 ubyte pad0; /**< */ 263 ushort sequence; /**< */ 264 uint length; /**< */ 265 uint counters_len; /**< */ 266 ubyte[20] pad1; /**< */ 267 } 268 269 /** Opcode for xcb_sync_create_counter. */ 270 enum XCB_SYNC_CREATE_COUNTER = 2; 271 272 /** 273 * @brief xcb_sync_create_counter_request_t 274 **/ 275 struct xcb_sync_create_counter_request_t { 276 ubyte major_opcode; /**< */ 277 ubyte minor_opcode; /**< */ 278 ushort length; /**< */ 279 xcb_sync_counter_t id; /**< */ 280 xcb_sync_int64_t initial_value; /**< */ 281 } 282 283 /** Opcode for xcb_sync_destroy_counter. */ 284 enum XCB_SYNC_DESTROY_COUNTER = 6; 285 286 /** 287 * @brief xcb_sync_destroy_counter_request_t 288 **/ 289 struct xcb_sync_destroy_counter_request_t { 290 ubyte major_opcode; /**< */ 291 ubyte minor_opcode; /**< */ 292 ushort length; /**< */ 293 xcb_sync_counter_t counter; /**< */ 294 } 295 296 /** 297 * @brief xcb_sync_query_counter_cookie_t 298 **/ 299 struct xcb_sync_query_counter_cookie_t { 300 uint sequence; /**< */ 301 } 302 303 /** Opcode for xcb_sync_query_counter. */ 304 enum XCB_SYNC_QUERY_COUNTER = 5; 305 306 /** 307 * @brief xcb_sync_query_counter_request_t 308 **/ 309 struct xcb_sync_query_counter_request_t { 310 ubyte major_opcode; /**< */ 311 ubyte minor_opcode; /**< */ 312 ushort length; /**< */ 313 xcb_sync_counter_t counter; /**< */ 314 } 315 316 /** 317 * @brief xcb_sync_query_counter_reply_t 318 **/ 319 struct xcb_sync_query_counter_reply_t { 320 ubyte response_type; /**< */ 321 ubyte pad0; /**< */ 322 ushort sequence; /**< */ 323 uint length; /**< */ 324 xcb_sync_int64_t counter_value; /**< */ 325 } 326 327 /** Opcode for xcb_sync_await. */ 328 enum XCB_SYNC_AWAIT = 7; 329 330 /** 331 * @brief xcb_sync_await_request_t 332 **/ 333 struct xcb_sync_await_request_t { 334 ubyte major_opcode; /**< */ 335 ubyte minor_opcode; /**< */ 336 ushort length; /**< */ 337 } 338 339 /** Opcode for xcb_sync_change_counter. */ 340 enum XCB_SYNC_CHANGE_COUNTER = 4; 341 342 /** 343 * @brief xcb_sync_change_counter_request_t 344 **/ 345 struct xcb_sync_change_counter_request_t { 346 ubyte major_opcode; /**< */ 347 ubyte minor_opcode; /**< */ 348 ushort length; /**< */ 349 xcb_sync_counter_t counter; /**< */ 350 xcb_sync_int64_t amount; /**< */ 351 } 352 353 /** Opcode for xcb_sync_set_counter. */ 354 enum XCB_SYNC_SET_COUNTER = 3; 355 356 /** 357 * @brief xcb_sync_set_counter_request_t 358 **/ 359 struct xcb_sync_set_counter_request_t { 360 ubyte major_opcode; /**< */ 361 ubyte minor_opcode; /**< */ 362 ushort length; /**< */ 363 xcb_sync_counter_t counter; /**< */ 364 xcb_sync_int64_t value; /**< */ 365 } 366 367 /** 368 * @brief xcb_sync_create_alarm_value_list_t 369 **/ 370 struct xcb_sync_create_alarm_value_list_t { 371 xcb_sync_counter_t counter; /**< */ 372 uint valueType; /**< */ 373 xcb_sync_int64_t value; /**< */ 374 uint testType; /**< */ 375 xcb_sync_int64_t delta; /**< */ 376 uint events; /**< */ 377 } 378 379 /** Opcode for xcb_sync_create_alarm. */ 380 enum XCB_SYNC_CREATE_ALARM = 8; 381 382 /** 383 * @brief xcb_sync_create_alarm_request_t 384 **/ 385 struct xcb_sync_create_alarm_request_t { 386 ubyte major_opcode; /**< */ 387 ubyte minor_opcode; /**< */ 388 ushort length; /**< */ 389 xcb_sync_alarm_t id; /**< */ 390 uint value_mask; /**< */ 391 } 392 393 /** 394 * @brief xcb_sync_change_alarm_value_list_t 395 **/ 396 struct xcb_sync_change_alarm_value_list_t { 397 xcb_sync_counter_t counter; /**< */ 398 uint valueType; /**< */ 399 xcb_sync_int64_t value; /**< */ 400 uint testType; /**< */ 401 xcb_sync_int64_t delta; /**< */ 402 uint events; /**< */ 403 } 404 405 /** Opcode for xcb_sync_change_alarm. */ 406 enum XCB_SYNC_CHANGE_ALARM = 9; 407 408 /** 409 * @brief xcb_sync_change_alarm_request_t 410 **/ 411 struct xcb_sync_change_alarm_request_t { 412 ubyte major_opcode; /**< */ 413 ubyte minor_opcode; /**< */ 414 ushort length; /**< */ 415 xcb_sync_alarm_t id; /**< */ 416 uint value_mask; /**< */ 417 } 418 419 /** Opcode for xcb_sync_destroy_alarm. */ 420 enum XCB_SYNC_DESTROY_ALARM = 11; 421 422 /** 423 * @brief xcb_sync_destroy_alarm_request_t 424 **/ 425 struct xcb_sync_destroy_alarm_request_t { 426 ubyte major_opcode; /**< */ 427 ubyte minor_opcode; /**< */ 428 ushort length; /**< */ 429 xcb_sync_alarm_t alarm; /**< */ 430 } 431 432 /** 433 * @brief xcb_sync_query_alarm_cookie_t 434 **/ 435 struct xcb_sync_query_alarm_cookie_t { 436 uint sequence; /**< */ 437 } 438 439 /** Opcode for xcb_sync_query_alarm. */ 440 enum XCB_SYNC_QUERY_ALARM = 10; 441 442 /** 443 * @brief xcb_sync_query_alarm_request_t 444 **/ 445 struct xcb_sync_query_alarm_request_t { 446 ubyte major_opcode; /**< */ 447 ubyte minor_opcode; /**< */ 448 ushort length; /**< */ 449 xcb_sync_alarm_t alarm; /**< */ 450 } 451 452 /** 453 * @brief xcb_sync_query_alarm_reply_t 454 **/ 455 struct xcb_sync_query_alarm_reply_t { 456 ubyte response_type; /**< */ 457 ubyte pad0; /**< */ 458 ushort sequence; /**< */ 459 uint length; /**< */ 460 xcb_sync_trigger_t trigger; /**< */ 461 xcb_sync_int64_t delta; /**< */ 462 ubyte events; /**< */ 463 ubyte state; /**< */ 464 ubyte[2] pad1; /**< */ 465 } 466 467 /** Opcode for xcb_sync_set_priority. */ 468 enum XCB_SYNC_SET_PRIORITY = 12; 469 470 /** 471 * @brief xcb_sync_set_priority_request_t 472 **/ 473 struct xcb_sync_set_priority_request_t { 474 ubyte major_opcode; /**< */ 475 ubyte minor_opcode; /**< */ 476 ushort length; /**< */ 477 uint id; /**< */ 478 int priority; /**< */ 479 } 480 481 /** 482 * @brief xcb_sync_get_priority_cookie_t 483 **/ 484 struct xcb_sync_get_priority_cookie_t { 485 uint sequence; /**< */ 486 } 487 488 /** Opcode for xcb_sync_get_priority. */ 489 enum XCB_SYNC_GET_PRIORITY = 13; 490 491 /** 492 * @brief xcb_sync_get_priority_request_t 493 **/ 494 struct xcb_sync_get_priority_request_t { 495 ubyte major_opcode; /**< */ 496 ubyte minor_opcode; /**< */ 497 ushort length; /**< */ 498 uint id; /**< */ 499 } 500 501 /** 502 * @brief xcb_sync_get_priority_reply_t 503 **/ 504 struct xcb_sync_get_priority_reply_t { 505 ubyte response_type; /**< */ 506 ubyte pad0; /**< */ 507 ushort sequence; /**< */ 508 uint length; /**< */ 509 int priority; /**< */ 510 } 511 512 /** Opcode for xcb_sync_create_fence. */ 513 enum XCB_SYNC_CREATE_FENCE = 14; 514 515 /** 516 * @brief xcb_sync_create_fence_request_t 517 **/ 518 struct xcb_sync_create_fence_request_t { 519 ubyte major_opcode; /**< */ 520 ubyte minor_opcode; /**< */ 521 ushort length; /**< */ 522 xcb_drawable_t drawable; /**< */ 523 xcb_sync_fence_t fence; /**< */ 524 ubyte initially_triggered; /**< */ 525 } 526 527 /** Opcode for xcb_sync_trigger_fence. */ 528 enum XCB_SYNC_TRIGGER_FENCE = 15; 529 530 /** 531 * @brief xcb_sync_trigger_fence_request_t 532 **/ 533 struct xcb_sync_trigger_fence_request_t { 534 ubyte major_opcode; /**< */ 535 ubyte minor_opcode; /**< */ 536 ushort length; /**< */ 537 xcb_sync_fence_t fence; /**< */ 538 } 539 540 /** Opcode for xcb_sync_reset_fence. */ 541 enum XCB_SYNC_RESET_FENCE = 16; 542 543 /** 544 * @brief xcb_sync_reset_fence_request_t 545 **/ 546 struct xcb_sync_reset_fence_request_t { 547 ubyte major_opcode; /**< */ 548 ubyte minor_opcode; /**< */ 549 ushort length; /**< */ 550 xcb_sync_fence_t fence; /**< */ 551 } 552 553 /** Opcode for xcb_sync_destroy_fence. */ 554 enum XCB_SYNC_DESTROY_FENCE = 17; 555 556 /** 557 * @brief xcb_sync_destroy_fence_request_t 558 **/ 559 struct xcb_sync_destroy_fence_request_t { 560 ubyte major_opcode; /**< */ 561 ubyte minor_opcode; /**< */ 562 ushort length; /**< */ 563 xcb_sync_fence_t fence; /**< */ 564 } 565 566 /** 567 * @brief xcb_sync_query_fence_cookie_t 568 **/ 569 struct xcb_sync_query_fence_cookie_t { 570 uint sequence; /**< */ 571 } 572 573 /** Opcode for xcb_sync_query_fence. */ 574 enum XCB_SYNC_QUERY_FENCE = 18; 575 576 /** 577 * @brief xcb_sync_query_fence_request_t 578 **/ 579 struct xcb_sync_query_fence_request_t { 580 ubyte major_opcode; /**< */ 581 ubyte minor_opcode; /**< */ 582 ushort length; /**< */ 583 xcb_sync_fence_t fence; /**< */ 584 } 585 586 /** 587 * @brief xcb_sync_query_fence_reply_t 588 **/ 589 struct xcb_sync_query_fence_reply_t { 590 ubyte response_type; /**< */ 591 ubyte pad0; /**< */ 592 ushort sequence; /**< */ 593 uint length; /**< */ 594 ubyte triggered; /**< */ 595 ubyte[23] pad1; /**< */ 596 } 597 598 /** Opcode for xcb_sync_await_fence. */ 599 enum XCB_SYNC_AWAIT_FENCE = 19; 600 601 /** 602 * @brief xcb_sync_await_fence_request_t 603 **/ 604 struct xcb_sync_await_fence_request_t { 605 ubyte major_opcode; /**< */ 606 ubyte minor_opcode; /**< */ 607 ushort length; /**< */ 608 } 609 610 /** Opcode for xcb_sync_counter_notify. */ 611 enum XCB_SYNC_COUNTER_NOTIFY = 0; 612 613 /** 614 * @brief xcb_sync_counter_notify_event_t 615 **/ 616 struct xcb_sync_counter_notify_event_t { 617 ubyte response_type; /**< */ 618 ubyte kind; /**< */ 619 ushort sequence; /**< */ 620 xcb_sync_counter_t counter; /**< */ 621 xcb_sync_int64_t wait_value; /**< */ 622 xcb_sync_int64_t counter_value; /**< */ 623 xcb_timestamp_t timestamp; /**< */ 624 ushort count; /**< */ 625 ubyte destroyed; /**< */ 626 ubyte pad0; /**< */ 627 } 628 629 /** Opcode for xcb_sync_alarm_notify. */ 630 enum XCB_SYNC_ALARM_NOTIFY = 1; 631 632 /** 633 * @brief xcb_sync_alarm_notify_event_t 634 **/ 635 struct xcb_sync_alarm_notify_event_t { 636 ubyte response_type; /**< */ 637 ubyte kind; /**< */ 638 ushort sequence; /**< */ 639 xcb_sync_alarm_t alarm; /**< */ 640 xcb_sync_int64_t counter_value; /**< */ 641 xcb_sync_int64_t alarm_value; /**< */ 642 xcb_timestamp_t timestamp; /**< */ 643 ubyte state; /**< */ 644 ubyte[3] pad0; /**< */ 645 } 646 647 /** 648 * Get the next element of the iterator 649 * @param i Pointer to a xcb_sync_alarm_iterator_t 650 * 651 * Get the next element in the iterator. The member rem is 652 * decreased by one. The member data points to the next 653 * element. The member index is increased by sizeof(xcb_sync_alarm_t) 654 */ 655 void xcb_sync_alarm_next(xcb_sync_alarm_iterator_t* i /**< */ ); 656 657 /** 658 * Return the iterator pointing to the last element 659 * @param i An xcb_sync_alarm_iterator_t 660 * @return The iterator pointing to the last element 661 * 662 * Set the current element in the iterator to the last element. 663 * The member rem is set to 0. The member data points to the 664 * last element. 665 */ 666 xcb_generic_iterator_t xcb_sync_alarm_end(xcb_sync_alarm_iterator_t i /**< */ ); 667 668 /** 669 * Get the next element of the iterator 670 * @param i Pointer to a xcb_sync_counter_iterator_t 671 * 672 * Get the next element in the iterator. The member rem is 673 * decreased by one. The member data points to the next 674 * element. The member index is increased by sizeof(xcb_sync_counter_t) 675 */ 676 void xcb_sync_counter_next(xcb_sync_counter_iterator_t* i /**< */ ); 677 678 /** 679 * Return the iterator pointing to the last element 680 * @param i An xcb_sync_counter_iterator_t 681 * @return The iterator pointing to the last element 682 * 683 * Set the current element in the iterator to the last element. 684 * The member rem is set to 0. The member data points to the 685 * last element. 686 */ 687 xcb_generic_iterator_t xcb_sync_counter_end(xcb_sync_counter_iterator_t i /**< */ ); 688 689 /** 690 * Get the next element of the iterator 691 * @param i Pointer to a xcb_sync_fence_iterator_t 692 * 693 * Get the next element in the iterator. The member rem is 694 * decreased by one. The member data points to the next 695 * element. The member index is increased by sizeof(xcb_sync_fence_t) 696 */ 697 void xcb_sync_fence_next(xcb_sync_fence_iterator_t* i /**< */ ); 698 699 /** 700 * Return the iterator pointing to the last element 701 * @param i An xcb_sync_fence_iterator_t 702 * @return The iterator pointing to the last element 703 * 704 * Set the current element in the iterator to the last element. 705 * The member rem is set to 0. The member data points to the 706 * last element. 707 */ 708 xcb_generic_iterator_t xcb_sync_fence_end(xcb_sync_fence_iterator_t i /**< */ ); 709 710 /** 711 * Get the next element of the iterator 712 * @param i Pointer to a xcb_sync_int64_iterator_t 713 * 714 * Get the next element in the iterator. The member rem is 715 * decreased by one. The member data points to the next 716 * element. The member index is increased by sizeof(xcb_sync_int64_t) 717 */ 718 void xcb_sync_int64_next(xcb_sync_int64_iterator_t* i /**< */ ); 719 720 /** 721 * Return the iterator pointing to the last element 722 * @param i An xcb_sync_int64_iterator_t 723 * @return The iterator pointing to the last element 724 * 725 * Set the current element in the iterator to the last element. 726 * The member rem is set to 0. The member data points to the 727 * last element. 728 */ 729 xcb_generic_iterator_t xcb_sync_int64_end(xcb_sync_int64_iterator_t i /**< */ ); 730 731 int xcb_sync_systemcounter_sizeof(const void* _buffer /**< */ ); 732 733 char* xcb_sync_systemcounter_name(const xcb_sync_systemcounter_t* R /**< */ ); 734 735 int xcb_sync_systemcounter_name_length(const xcb_sync_systemcounter_t* R /**< */ ); 736 737 xcb_generic_iterator_t xcb_sync_systemcounter_name_end(const xcb_sync_systemcounter_t* R /**< */ ); 738 739 /** 740 * Get the next element of the iterator 741 * @param i Pointer to a xcb_sync_systemcounter_iterator_t 742 * 743 * Get the next element in the iterator. The member rem is 744 * decreased by one. The member data points to the next 745 * element. The member index is increased by sizeof(xcb_sync_systemcounter_t) 746 */ 747 void xcb_sync_systemcounter_next(xcb_sync_systemcounter_iterator_t* i /**< */ ); 748 749 /** 750 * Return the iterator pointing to the last element 751 * @param i An xcb_sync_systemcounter_iterator_t 752 * @return The iterator pointing to the last element 753 * 754 * Set the current element in the iterator to the last element. 755 * The member rem is set to 0. The member data points to the 756 * last element. 757 */ 758 xcb_generic_iterator_t xcb_sync_systemcounter_end(xcb_sync_systemcounter_iterator_t i /**< */ ); 759 760 /** 761 * Get the next element of the iterator 762 * @param i Pointer to a xcb_sync_trigger_iterator_t 763 * 764 * Get the next element in the iterator. The member rem is 765 * decreased by one. The member data points to the next 766 * element. The member index is increased by sizeof(xcb_sync_trigger_t) 767 */ 768 void xcb_sync_trigger_next(xcb_sync_trigger_iterator_t* i /**< */ ); 769 770 /** 771 * Return the iterator pointing to the last element 772 * @param i An xcb_sync_trigger_iterator_t 773 * @return The iterator pointing to the last element 774 * 775 * Set the current element in the iterator to the last element. 776 * The member rem is set to 0. The member data points to the 777 * last element. 778 */ 779 xcb_generic_iterator_t xcb_sync_trigger_end(xcb_sync_trigger_iterator_t i /**< */ ); 780 781 /** 782 * Get the next element of the iterator 783 * @param i Pointer to a xcb_sync_waitcondition_iterator_t 784 * 785 * Get the next element in the iterator. The member rem is 786 * decreased by one. The member data points to the next 787 * element. The member index is increased by sizeof(xcb_sync_waitcondition_t) 788 */ 789 void xcb_sync_waitcondition_next(xcb_sync_waitcondition_iterator_t* i /**< */ ); 790 791 /** 792 * Return the iterator pointing to the last element 793 * @param i An xcb_sync_waitcondition_iterator_t 794 * @return The iterator pointing to the last element 795 * 796 * Set the current element in the iterator to the last element. 797 * The member rem is set to 0. The member data points to the 798 * last element. 799 */ 800 xcb_generic_iterator_t xcb_sync_waitcondition_end(xcb_sync_waitcondition_iterator_t i /**< */ ); 801 802 /** 803 * 804 * @param c The connection 805 * @return A cookie 806 * 807 * Delivers a request to the X server. 808 * 809 */ 810 xcb_sync_initialize_cookie_t xcb_sync_initialize(xcb_connection_t* c /**< */ , ubyte desired_major_version /**< */ , 811 ubyte desired_minor_version /**< */ ); 812 813 /** 814 * 815 * @param c The connection 816 * @return A cookie 817 * 818 * Delivers a request to the X server. 819 * 820 * This form can be used only if the request will cause 821 * a reply to be generated. Any returned error will be 822 * placed in the event queue. 823 */ 824 xcb_sync_initialize_cookie_t xcb_sync_initialize_unchecked(xcb_connection_t* c /**< */ , ubyte desired_major_version /**< */ , 825 ubyte desired_minor_version /**< */ ); 826 827 /** 828 * Return the reply 829 * @param c The connection 830 * @param cookie The cookie 831 * @param e The xcb_generic_error_t supplied 832 * 833 * Returns the reply of the request asked by 834 * 835 * The parameter @p e supplied to this function must be NULL if 836 * xcb_sync_initialize_unchecked(). is used. 837 * Otherwise, it stores the error if any. 838 * 839 * The returned value must be freed by the caller using free(). 840 */ 841 xcb_sync_initialize_reply_t* xcb_sync_initialize_reply(xcb_connection_t* c /**< */ , xcb_sync_initialize_cookie_t cookie /**< */ , 842 xcb_generic_error_t** e /**< */ ); 843 844 int xcb_sync_list_system_counters_sizeof(const void* _buffer /**< */ ); 845 846 /** 847 * 848 * @param c The connection 849 * @return A cookie 850 * 851 * Delivers a request to the X server. 852 * 853 */ 854 xcb_sync_list_system_counters_cookie_t xcb_sync_list_system_counters(xcb_connection_t* c /**< */ ); 855 856 /** 857 * 858 * @param c The connection 859 * @return A cookie 860 * 861 * Delivers a request to the X server. 862 * 863 * This form can be used only if the request will cause 864 * a reply to be generated. Any returned error will be 865 * placed in the event queue. 866 */ 867 xcb_sync_list_system_counters_cookie_t xcb_sync_list_system_counters_unchecked(xcb_connection_t* c /**< */ ); 868 869 int xcb_sync_list_system_counters_counters_length(const xcb_sync_list_system_counters_reply_t* R /**< */ ); 870 871 xcb_sync_systemcounter_iterator_t xcb_sync_list_system_counters_counters_iterator(const xcb_sync_list_system_counters_reply_t* R /**< */ ); 872 873 /** 874 * Return the reply 875 * @param c The connection 876 * @param cookie The cookie 877 * @param e The xcb_generic_error_t supplied 878 * 879 * Returns the reply of the request asked by 880 * 881 * The parameter @p e supplied to this function must be NULL if 882 * xcb_sync_list_system_counters_unchecked(). is used. 883 * Otherwise, it stores the error if any. 884 * 885 * The returned value must be freed by the caller using free(). 886 */ 887 xcb_sync_list_system_counters_reply_t* xcb_sync_list_system_counters_reply(xcb_connection_t* c /**< */ , 888 xcb_sync_list_system_counters_cookie_t cookie /**< */ , xcb_generic_error_t** e /**< */ ); 889 890 /** 891 * 892 * @param c The connection 893 * @return A cookie 894 * 895 * Delivers a request to the X server. 896 * 897 * This form can be used only if the request will not cause 898 * a reply to be generated. Any returned error will be 899 * saved for handling by xcb_request_check(). 900 */ 901 xcb_void_cookie_t xcb_sync_create_counter_checked(xcb_connection_t* c /**< */ , xcb_sync_counter_t id /**< */ , 902 xcb_sync_int64_t initial_value /**< */ ); 903 904 /** 905 * 906 * @param c The connection 907 * @return A cookie 908 * 909 * Delivers a request to the X server. 910 * 911 */ 912 xcb_void_cookie_t xcb_sync_create_counter(xcb_connection_t* c /**< */ , xcb_sync_counter_t id /**< */ , xcb_sync_int64_t initial_value /**< */ ); 913 914 /** 915 * 916 * @param c The connection 917 * @return A cookie 918 * 919 * Delivers a request to the X server. 920 * 921 * This form can be used only if the request will not cause 922 * a reply to be generated. Any returned error will be 923 * saved for handling by xcb_request_check(). 924 */ 925 xcb_void_cookie_t xcb_sync_destroy_counter_checked(xcb_connection_t* c /**< */ , xcb_sync_counter_t counter /**< */ ); 926 927 /** 928 * 929 * @param c The connection 930 * @return A cookie 931 * 932 * Delivers a request to the X server. 933 * 934 */ 935 xcb_void_cookie_t xcb_sync_destroy_counter(xcb_connection_t* c /**< */ , xcb_sync_counter_t counter /**< */ ); 936 937 /** 938 * 939 * @param c The connection 940 * @return A cookie 941 * 942 * Delivers a request to the X server. 943 * 944 */ 945 xcb_sync_query_counter_cookie_t xcb_sync_query_counter(xcb_connection_t* c /**< */ , xcb_sync_counter_t counter /**< */ ); 946 947 /** 948 * 949 * @param c The connection 950 * @return A cookie 951 * 952 * Delivers a request to the X server. 953 * 954 * This form can be used only if the request will cause 955 * a reply to be generated. Any returned error will be 956 * placed in the event queue. 957 */ 958 xcb_sync_query_counter_cookie_t xcb_sync_query_counter_unchecked(xcb_connection_t* c /**< */ , xcb_sync_counter_t counter /**< */ ); 959 960 /** 961 * Return the reply 962 * @param c The connection 963 * @param cookie The cookie 964 * @param e The xcb_generic_error_t supplied 965 * 966 * Returns the reply of the request asked by 967 * 968 * The parameter @p e supplied to this function must be NULL if 969 * xcb_sync_query_counter_unchecked(). is used. 970 * Otherwise, it stores the error if any. 971 * 972 * The returned value must be freed by the caller using free(). 973 */ 974 xcb_sync_query_counter_reply_t* xcb_sync_query_counter_reply(xcb_connection_t* c /**< */ , xcb_sync_query_counter_cookie_t cookie /**< */ , 975 xcb_generic_error_t** e /**< */ ); 976 977 int xcb_sync_await_sizeof(const void* _buffer /**< */ , uint wait_list_len /**< */ ); 978 979 /** 980 * 981 * @param c The connection 982 * @return A cookie 983 * 984 * Delivers a request to the X server. 985 * 986 * This form can be used only if the request will not cause 987 * a reply to be generated. Any returned error will be 988 * saved for handling by xcb_request_check(). 989 */ 990 xcb_void_cookie_t xcb_sync_await_checked(xcb_connection_t* c /**< */ , uint wait_list_len /**< */ , const xcb_sync_waitcondition_t* wait_list /**< */ ); 991 992 /** 993 * 994 * @param c The connection 995 * @return A cookie 996 * 997 * Delivers a request to the X server. 998 * 999 */ 1000 xcb_void_cookie_t xcb_sync_await(xcb_connection_t* c /**< */ , uint wait_list_len /**< */ , const xcb_sync_waitcondition_t* wait_list /**< */ ); 1001 1002 /** 1003 * 1004 * @param c The connection 1005 * @return A cookie 1006 * 1007 * Delivers a request to the X server. 1008 * 1009 * This form can be used only if the request will not cause 1010 * a reply to be generated. Any returned error will be 1011 * saved for handling by xcb_request_check(). 1012 */ 1013 xcb_void_cookie_t xcb_sync_change_counter_checked(xcb_connection_t* c /**< */ , xcb_sync_counter_t counter /**< */ , xcb_sync_int64_t amount /**< */ ); 1014 1015 /** 1016 * 1017 * @param c The connection 1018 * @return A cookie 1019 * 1020 * Delivers a request to the X server. 1021 * 1022 */ 1023 xcb_void_cookie_t xcb_sync_change_counter(xcb_connection_t* c /**< */ , xcb_sync_counter_t counter /**< */ , xcb_sync_int64_t amount /**< */ ); 1024 1025 /** 1026 * 1027 * @param c The connection 1028 * @return A cookie 1029 * 1030 * Delivers a request to the X server. 1031 * 1032 * This form can be used only if the request will not cause 1033 * a reply to be generated. Any returned error will be 1034 * saved for handling by xcb_request_check(). 1035 */ 1036 xcb_void_cookie_t xcb_sync_set_counter_checked(xcb_connection_t* c /**< */ , xcb_sync_counter_t counter /**< */ , xcb_sync_int64_t value /**< */ ); 1037 1038 /** 1039 * 1040 * @param c The connection 1041 * @return A cookie 1042 * 1043 * Delivers a request to the X server. 1044 * 1045 */ 1046 xcb_void_cookie_t xcb_sync_set_counter(xcb_connection_t* c /**< */ , xcb_sync_counter_t counter /**< */ , xcb_sync_int64_t value /**< */ ); 1047 1048 int xcb_sync_create_alarm_value_list_serialize(void** _buffer /**< */ , uint value_mask /**< */ , 1049 const xcb_sync_create_alarm_value_list_t* _aux /**< */ ); 1050 1051 int xcb_sync_create_alarm_value_list_unpack(const void* _buffer /**< */ , uint value_mask /**< */ , xcb_sync_create_alarm_value_list_t* _aux /**< */ ); 1052 1053 int xcb_sync_create_alarm_value_list_sizeof(const void* _buffer /**< */ , uint value_mask /**< */ ); 1054 1055 /** 1056 * 1057 * @param c The connection 1058 * @return A cookie 1059 * 1060 * Delivers a request to the X server. 1061 * 1062 * This form can be used only if the request will not cause 1063 * a reply to be generated. Any returned error will be 1064 * saved for handling by xcb_request_check(). 1065 */ 1066 xcb_void_cookie_t xcb_sync_create_alarm_checked(xcb_connection_t* c /**< */ , xcb_sync_alarm_t id /**< */ , 1067 uint value_mask /**< */ , const void* value_list /**< */ ); 1068 1069 /** 1070 * 1071 * @param c The connection 1072 * @return A cookie 1073 * 1074 * Delivers a request to the X server. 1075 * 1076 */ 1077 xcb_void_cookie_t xcb_sync_create_alarm(xcb_connection_t* c /**< */ , xcb_sync_alarm_t id /**< */ , uint value_mask /**< */ , 1078 const void* value_list /**< */ ); 1079 1080 /** 1081 * 1082 * @param c The connection 1083 * @return A cookie 1084 * 1085 * Delivers a request to the X server. 1086 * 1087 * This form can be used only if the request will not cause 1088 * a reply to be generated. Any returned error will be 1089 * saved for handling by xcb_request_check(). 1090 */ 1091 xcb_void_cookie_t xcb_sync_create_alarm_aux_checked(xcb_connection_t* c /**< */ , xcb_sync_alarm_t id /**< */ , uint value_mask /**< */ , 1092 const xcb_sync_create_alarm_value_list_t* value_list /**< */ ); 1093 1094 /** 1095 * 1096 * @param c The connection 1097 * @return A cookie 1098 * 1099 * Delivers a request to the X server. 1100 * 1101 */ 1102 xcb_void_cookie_t xcb_sync_create_alarm_aux(xcb_connection_t* c /**< */ , xcb_sync_alarm_t id /**< */ , uint value_mask /**< */ , 1103 const xcb_sync_create_alarm_value_list_t* value_list /**< */ ); 1104 1105 int xcb_sync_change_alarm_value_list_serialize(void** _buffer /**< */ , uint value_mask /**< */ , 1106 const xcb_sync_change_alarm_value_list_t* _aux /**< */ ); 1107 1108 int xcb_sync_change_alarm_value_list_unpack(const void* _buffer /**< */ , uint value_mask /**< */ , xcb_sync_change_alarm_value_list_t* _aux /**< */ ); 1109 1110 int xcb_sync_change_alarm_value_list_sizeof(const void* _buffer /**< */ , uint value_mask /**< */ ); 1111 1112 /** 1113 * 1114 * @param c The connection 1115 * @return A cookie 1116 * 1117 * Delivers a request to the X server. 1118 * 1119 * This form can be used only if the request will not cause 1120 * a reply to be generated. Any returned error will be 1121 * saved for handling by xcb_request_check(). 1122 */ 1123 xcb_void_cookie_t xcb_sync_change_alarm_checked(xcb_connection_t* c /**< */ , xcb_sync_alarm_t id /**< */ , 1124 uint value_mask /**< */ , const void* value_list /**< */ ); 1125 1126 /** 1127 * 1128 * @param c The connection 1129 * @return A cookie 1130 * 1131 * Delivers a request to the X server. 1132 * 1133 */ 1134 xcb_void_cookie_t xcb_sync_change_alarm(xcb_connection_t* c /**< */ , xcb_sync_alarm_t id /**< */ , uint value_mask /**< */ , 1135 const void* value_list /**< */ ); 1136 1137 /** 1138 * 1139 * @param c The connection 1140 * @return A cookie 1141 * 1142 * Delivers a request to the X server. 1143 * 1144 * This form can be used only if the request will not cause 1145 * a reply to be generated. Any returned error will be 1146 * saved for handling by xcb_request_check(). 1147 */ 1148 xcb_void_cookie_t xcb_sync_change_alarm_aux_checked(xcb_connection_t* c /**< */ , xcb_sync_alarm_t id /**< */ , uint value_mask /**< */ , 1149 const xcb_sync_change_alarm_value_list_t* value_list /**< */ ); 1150 1151 /** 1152 * 1153 * @param c The connection 1154 * @return A cookie 1155 * 1156 * Delivers a request to the X server. 1157 * 1158 */ 1159 xcb_void_cookie_t xcb_sync_change_alarm_aux(xcb_connection_t* c /**< */ , xcb_sync_alarm_t id /**< */ , uint value_mask /**< */ , 1160 const xcb_sync_change_alarm_value_list_t* value_list /**< */ ); 1161 1162 /** 1163 * 1164 * @param c The connection 1165 * @return A cookie 1166 * 1167 * Delivers a request to the X server. 1168 * 1169 * This form can be used only if the request will not cause 1170 * a reply to be generated. Any returned error will be 1171 * saved for handling by xcb_request_check(). 1172 */ 1173 xcb_void_cookie_t xcb_sync_destroy_alarm_checked(xcb_connection_t* c /**< */ , xcb_sync_alarm_t alarm /**< */ ); 1174 1175 /** 1176 * 1177 * @param c The connection 1178 * @return A cookie 1179 * 1180 * Delivers a request to the X server. 1181 * 1182 */ 1183 xcb_void_cookie_t xcb_sync_destroy_alarm(xcb_connection_t* c /**< */ , xcb_sync_alarm_t alarm /**< */ ); 1184 1185 /** 1186 * 1187 * @param c The connection 1188 * @return A cookie 1189 * 1190 * Delivers a request to the X server. 1191 * 1192 */ 1193 xcb_sync_query_alarm_cookie_t xcb_sync_query_alarm(xcb_connection_t* c /**< */ , xcb_sync_alarm_t alarm /**< */ ); 1194 1195 /** 1196 * 1197 * @param c The connection 1198 * @return A cookie 1199 * 1200 * Delivers a request to the X server. 1201 * 1202 * This form can be used only if the request will cause 1203 * a reply to be generated. Any returned error will be 1204 * placed in the event queue. 1205 */ 1206 xcb_sync_query_alarm_cookie_t xcb_sync_query_alarm_unchecked(xcb_connection_t* c /**< */ , xcb_sync_alarm_t alarm /**< */ ); 1207 1208 /** 1209 * Return the reply 1210 * @param c The connection 1211 * @param cookie The cookie 1212 * @param e The xcb_generic_error_t supplied 1213 * 1214 * Returns the reply of the request asked by 1215 * 1216 * The parameter @p e supplied to this function must be NULL if 1217 * xcb_sync_query_alarm_unchecked(). is used. 1218 * Otherwise, it stores the error if any. 1219 * 1220 * The returned value must be freed by the caller using free(). 1221 */ 1222 xcb_sync_query_alarm_reply_t* xcb_sync_query_alarm_reply(xcb_connection_t* c /**< */ , 1223 xcb_sync_query_alarm_cookie_t cookie /**< */ , xcb_generic_error_t** e /**< */ ); 1224 1225 /** 1226 * 1227 * @param c The connection 1228 * @return A cookie 1229 * 1230 * Delivers a request to the X server. 1231 * 1232 * This form can be used only if the request will not cause 1233 * a reply to be generated. Any returned error will be 1234 * saved for handling by xcb_request_check(). 1235 */ 1236 xcb_void_cookie_t xcb_sync_set_priority_checked(xcb_connection_t* c /**< */ , uint id /**< */ , int priority /**< */ ); 1237 1238 /** 1239 * 1240 * @param c The connection 1241 * @return A cookie 1242 * 1243 * Delivers a request to the X server. 1244 * 1245 */ 1246 xcb_void_cookie_t xcb_sync_set_priority(xcb_connection_t* c /**< */ , uint id /**< */ , int priority /**< */ ); 1247 1248 /** 1249 * 1250 * @param c The connection 1251 * @return A cookie 1252 * 1253 * Delivers a request to the X server. 1254 * 1255 */ 1256 xcb_sync_get_priority_cookie_t xcb_sync_get_priority(xcb_connection_t* c /**< */ , uint id /**< */ ); 1257 1258 /** 1259 * 1260 * @param c The connection 1261 * @return A cookie 1262 * 1263 * Delivers a request to the X server. 1264 * 1265 * This form can be used only if the request will cause 1266 * a reply to be generated. Any returned error will be 1267 * placed in the event queue. 1268 */ 1269 xcb_sync_get_priority_cookie_t xcb_sync_get_priority_unchecked(xcb_connection_t* c /**< */ , uint id /**< */ ); 1270 1271 /** 1272 * Return the reply 1273 * @param c The connection 1274 * @param cookie The cookie 1275 * @param e The xcb_generic_error_t supplied 1276 * 1277 * Returns the reply of the request asked by 1278 * 1279 * The parameter @p e supplied to this function must be NULL if 1280 * xcb_sync_get_priority_unchecked(). is used. 1281 * Otherwise, it stores the error if any. 1282 * 1283 * The returned value must be freed by the caller using free(). 1284 */ 1285 xcb_sync_get_priority_reply_t* xcb_sync_get_priority_reply(xcb_connection_t* c /**< */ , 1286 xcb_sync_get_priority_cookie_t cookie /**< */ , xcb_generic_error_t** e /**< */ ); 1287 1288 /** 1289 * 1290 * @param c The connection 1291 * @return A cookie 1292 * 1293 * Delivers a request to the X server. 1294 * 1295 * This form can be used only if the request will not cause 1296 * a reply to be generated. Any returned error will be 1297 * saved for handling by xcb_request_check(). 1298 */ 1299 xcb_void_cookie_t xcb_sync_create_fence_checked(xcb_connection_t* c /**< */ , xcb_drawable_t drawable /**< */ , 1300 xcb_sync_fence_t fence /**< */ , ubyte initially_triggered /**< */ ); 1301 1302 /** 1303 * 1304 * @param c The connection 1305 * @return A cookie 1306 * 1307 * Delivers a request to the X server. 1308 * 1309 */ 1310 xcb_void_cookie_t xcb_sync_create_fence(xcb_connection_t* c /**< */ , xcb_drawable_t drawable /**< */ , xcb_sync_fence_t fence /**< */ , 1311 ubyte initially_triggered /**< */ ); 1312 1313 /** 1314 * 1315 * @param c The connection 1316 * @return A cookie 1317 * 1318 * Delivers a request to the X server. 1319 * 1320 * This form can be used only if the request will not cause 1321 * a reply to be generated. Any returned error will be 1322 * saved for handling by xcb_request_check(). 1323 */ 1324 xcb_void_cookie_t xcb_sync_trigger_fence_checked(xcb_connection_t* c /**< */ , xcb_sync_fence_t fence /**< */ ); 1325 1326 /** 1327 * 1328 * @param c The connection 1329 * @return A cookie 1330 * 1331 * Delivers a request to the X server. 1332 * 1333 */ 1334 xcb_void_cookie_t xcb_sync_trigger_fence(xcb_connection_t* c /**< */ , xcb_sync_fence_t fence /**< */ ); 1335 1336 /** 1337 * 1338 * @param c The connection 1339 * @return A cookie 1340 * 1341 * Delivers a request to the X server. 1342 * 1343 * This form can be used only if the request will not cause 1344 * a reply to be generated. Any returned error will be 1345 * saved for handling by xcb_request_check(). 1346 */ 1347 xcb_void_cookie_t xcb_sync_reset_fence_checked(xcb_connection_t* c /**< */ , xcb_sync_fence_t fence /**< */ ); 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 xcb_sync_reset_fence(xcb_connection_t* c /**< */ , xcb_sync_fence_t fence /**< */ ); 1358 1359 /** 1360 * 1361 * @param c The connection 1362 * @return A cookie 1363 * 1364 * Delivers a request to the X server. 1365 * 1366 * This form can be used only if the request will not cause 1367 * a reply to be generated. Any returned error will be 1368 * saved for handling by xcb_request_check(). 1369 */ 1370 xcb_void_cookie_t xcb_sync_destroy_fence_checked(xcb_connection_t* c /**< */ , xcb_sync_fence_t fence /**< */ ); 1371 1372 /** 1373 * 1374 * @param c The connection 1375 * @return A cookie 1376 * 1377 * Delivers a request to the X server. 1378 * 1379 */ 1380 xcb_void_cookie_t xcb_sync_destroy_fence(xcb_connection_t* c /**< */ , xcb_sync_fence_t fence /**< */ ); 1381 1382 /** 1383 * 1384 * @param c The connection 1385 * @return A cookie 1386 * 1387 * Delivers a request to the X server. 1388 * 1389 */ 1390 xcb_sync_query_fence_cookie_t xcb_sync_query_fence(xcb_connection_t* c /**< */ , xcb_sync_fence_t fence /**< */ ); 1391 1392 /** 1393 * 1394 * @param c The connection 1395 * @return A cookie 1396 * 1397 * Delivers a request to the X server. 1398 * 1399 * This form can be used only if the request will cause 1400 * a reply to be generated. Any returned error will be 1401 * placed in the event queue. 1402 */ 1403 xcb_sync_query_fence_cookie_t xcb_sync_query_fence_unchecked(xcb_connection_t* c /**< */ , xcb_sync_fence_t fence /**< */ ); 1404 1405 /** 1406 * Return the reply 1407 * @param c The connection 1408 * @param cookie The cookie 1409 * @param e The xcb_generic_error_t supplied 1410 * 1411 * Returns the reply of the request asked by 1412 * 1413 * The parameter @p e supplied to this function must be NULL if 1414 * xcb_sync_query_fence_unchecked(). is used. 1415 * Otherwise, it stores the error if any. 1416 * 1417 * The returned value must be freed by the caller using free(). 1418 */ 1419 xcb_sync_query_fence_reply_t* xcb_sync_query_fence_reply(xcb_connection_t* c /**< */ , 1420 xcb_sync_query_fence_cookie_t cookie /**< */ , xcb_generic_error_t** e /**< */ ); 1421 1422 int xcb_sync_await_fence_sizeof(const void* _buffer /**< */ , uint fence_list_len /**< */ ); 1423 1424 /** 1425 * 1426 * @param c The connection 1427 * @return A cookie 1428 * 1429 * Delivers a request to the X server. 1430 * 1431 * This form can be used only if the request will not cause 1432 * a reply to be generated. Any returned error will be 1433 * saved for handling by xcb_request_check(). 1434 */ 1435 xcb_void_cookie_t xcb_sync_await_fence_checked(xcb_connection_t* c /**< */ , uint fence_list_len /**< */ , const xcb_sync_fence_t* fence_list /**< */ ); 1436 1437 /** 1438 * 1439 * @param c The connection 1440 * @return A cookie 1441 * 1442 * Delivers a request to the X server. 1443 * 1444 */ 1445 xcb_void_cookie_t xcb_sync_await_fence(xcb_connection_t* c /**< */ , uint fence_list_len /**< */ , const xcb_sync_fence_t* fence_list /**< */ ); 1446 1447 /** 1448 * @} 1449 */