2 * This file generated automatically from sync.xml by c_client.py.
7 * @defgroup XCB_Sync_API XCB Sync API
8 * @brief Sync XCB Protocol Implementation.
22 #define XCB_SYNC_MAJOR_VERSION 3
23 #define XCB_SYNC_MINOR_VERSION 1
25 extern xcb_extension_t xcb_sync_id
;
27 typedef uint32_t xcb_sync_alarm_t
;
30 * @brief xcb_sync_alarm_iterator_t
32 typedef struct xcb_sync_alarm_iterator_t
{
33 xcb_sync_alarm_t
*data
; /**< */
36 } xcb_sync_alarm_iterator_t
;
38 typedef enum xcb_sync_alarmstate_t
{
39 XCB_SYNC_ALARMSTATE_ACTIVE
= 0,
40 XCB_SYNC_ALARMSTATE_INACTIVE
= 1,
41 XCB_SYNC_ALARMSTATE_DESTROYED
= 2
42 } xcb_sync_alarmstate_t
;
44 typedef uint32_t xcb_sync_counter_t
;
47 * @brief xcb_sync_counter_iterator_t
49 typedef struct xcb_sync_counter_iterator_t
{
50 xcb_sync_counter_t
*data
; /**< */
53 } xcb_sync_counter_iterator_t
;
55 typedef uint32_t xcb_sync_fence_t
;
58 * @brief xcb_sync_fence_iterator_t
60 typedef struct xcb_sync_fence_iterator_t
{
61 xcb_sync_fence_t
*data
; /**< */
64 } xcb_sync_fence_iterator_t
;
66 typedef enum xcb_sync_testtype_t
{
67 XCB_SYNC_TESTTYPE_POSITIVE_TRANSITION
= 0,
68 XCB_SYNC_TESTTYPE_NEGATIVE_TRANSITION
= 1,
69 XCB_SYNC_TESTTYPE_POSITIVE_COMPARISON
= 2,
70 XCB_SYNC_TESTTYPE_NEGATIVE_COMPARISON
= 3
71 } xcb_sync_testtype_t
;
73 typedef enum xcb_sync_valuetype_t
{
74 XCB_SYNC_VALUETYPE_ABSOLUTE
= 0,
75 XCB_SYNC_VALUETYPE_RELATIVE
= 1
76 } xcb_sync_valuetype_t
;
78 typedef enum xcb_sync_ca_t
{
79 XCB_SYNC_CA_COUNTER
= 1,
80 XCB_SYNC_CA_VALUE_TYPE
= 2,
81 XCB_SYNC_CA_VALUE
= 4,
82 XCB_SYNC_CA_TEST_TYPE
= 8,
83 XCB_SYNC_CA_DELTA
= 16,
84 XCB_SYNC_CA_EVENTS
= 32
88 * @brief xcb_sync_int64_t
90 typedef struct xcb_sync_int64_t
{
96 * @brief xcb_sync_int64_iterator_t
98 typedef struct xcb_sync_int64_iterator_t
{
99 xcb_sync_int64_t
*data
; /**< */
102 } xcb_sync_int64_iterator_t
;
105 * @brief xcb_sync_systemcounter_t
107 typedef struct xcb_sync_systemcounter_t
{
108 xcb_sync_counter_t counter
; /**< */
109 xcb_sync_int64_t resolution
; /**< */
110 uint16_t name_len
; /**< */
111 } xcb_sync_systemcounter_t
;
114 * @brief xcb_sync_systemcounter_iterator_t
116 typedef struct xcb_sync_systemcounter_iterator_t
{
117 xcb_sync_systemcounter_t
*data
; /**< */
120 } xcb_sync_systemcounter_iterator_t
;
123 * @brief xcb_sync_trigger_t
125 typedef struct xcb_sync_trigger_t
{
126 xcb_sync_counter_t counter
; /**< */
127 uint32_t wait_type
; /**< */
128 xcb_sync_int64_t wait_value
; /**< */
129 uint32_t test_type
; /**< */
130 } xcb_sync_trigger_t
;
133 * @brief xcb_sync_trigger_iterator_t
135 typedef struct xcb_sync_trigger_iterator_t
{
136 xcb_sync_trigger_t
*data
; /**< */
139 } xcb_sync_trigger_iterator_t
;
142 * @brief xcb_sync_waitcondition_t
144 typedef struct xcb_sync_waitcondition_t
{
145 xcb_sync_trigger_t trigger
; /**< */
146 xcb_sync_int64_t event_threshold
; /**< */
147 } xcb_sync_waitcondition_t
;
150 * @brief xcb_sync_waitcondition_iterator_t
152 typedef struct xcb_sync_waitcondition_iterator_t
{
153 xcb_sync_waitcondition_t
*data
; /**< */
156 } xcb_sync_waitcondition_iterator_t
;
158 /** Opcode for xcb_sync_counter. */
159 #define XCB_SYNC_COUNTER 0
162 * @brief xcb_sync_counter_error_t
164 typedef struct xcb_sync_counter_error_t
{
165 uint8_t response_type
; /**< */
166 uint8_t error_code
; /**< */
167 uint16_t sequence
; /**< */
168 uint32_t bad_counter
; /**< */
169 uint16_t minor_opcode
; /**< */
170 uint8_t major_opcode
; /**< */
171 } xcb_sync_counter_error_t
;
173 /** Opcode for xcb_sync_alarm. */
174 #define XCB_SYNC_ALARM 1
177 * @brief xcb_sync_alarm_error_t
179 typedef struct xcb_sync_alarm_error_t
{
180 uint8_t response_type
; /**< */
181 uint8_t error_code
; /**< */
182 uint16_t sequence
; /**< */
183 uint32_t bad_alarm
; /**< */
184 uint16_t minor_opcode
; /**< */
185 uint8_t major_opcode
; /**< */
186 } xcb_sync_alarm_error_t
;
189 * @brief xcb_sync_initialize_cookie_t
191 typedef struct xcb_sync_initialize_cookie_t
{
192 unsigned int sequence
; /**< */
193 } xcb_sync_initialize_cookie_t
;
195 /** Opcode for xcb_sync_initialize. */
196 #define XCB_SYNC_INITIALIZE 0
199 * @brief xcb_sync_initialize_request_t
201 typedef struct xcb_sync_initialize_request_t
{
202 uint8_t major_opcode
; /**< */
203 uint8_t minor_opcode
; /**< */
204 uint16_t length
; /**< */
205 uint8_t desired_major_version
; /**< */
206 uint8_t desired_minor_version
; /**< */
207 } xcb_sync_initialize_request_t
;
210 * @brief xcb_sync_initialize_reply_t
212 typedef struct xcb_sync_initialize_reply_t
{
213 uint8_t response_type
; /**< */
214 uint8_t pad0
; /**< */
215 uint16_t sequence
; /**< */
216 uint32_t length
; /**< */
217 uint8_t major_version
; /**< */
218 uint8_t minor_version
; /**< */
219 uint8_t pad1
[22]; /**< */
220 } xcb_sync_initialize_reply_t
;
223 * @brief xcb_sync_list_system_counters_cookie_t
225 typedef struct xcb_sync_list_system_counters_cookie_t
{
226 unsigned int sequence
; /**< */
227 } xcb_sync_list_system_counters_cookie_t
;
229 /** Opcode for xcb_sync_list_system_counters. */
230 #define XCB_SYNC_LIST_SYSTEM_COUNTERS 1
233 * @brief xcb_sync_list_system_counters_request_t
235 typedef struct xcb_sync_list_system_counters_request_t
{
236 uint8_t major_opcode
; /**< */
237 uint8_t minor_opcode
; /**< */
238 uint16_t length
; /**< */
239 } xcb_sync_list_system_counters_request_t
;
242 * @brief xcb_sync_list_system_counters_reply_t
244 typedef struct xcb_sync_list_system_counters_reply_t
{
245 uint8_t response_type
; /**< */
246 uint8_t pad0
; /**< */
247 uint16_t sequence
; /**< */
248 uint32_t length
; /**< */
249 uint32_t counters_len
; /**< */
250 uint8_t pad1
[20]; /**< */
251 } xcb_sync_list_system_counters_reply_t
;
253 /** Opcode for xcb_sync_create_counter. */
254 #define XCB_SYNC_CREATE_COUNTER 2
257 * @brief xcb_sync_create_counter_request_t
259 typedef struct xcb_sync_create_counter_request_t
{
260 uint8_t major_opcode
; /**< */
261 uint8_t minor_opcode
; /**< */
262 uint16_t length
; /**< */
263 xcb_sync_counter_t id
; /**< */
264 xcb_sync_int64_t initial_value
; /**< */
265 } xcb_sync_create_counter_request_t
;
267 /** Opcode for xcb_sync_destroy_counter. */
268 #define XCB_SYNC_DESTROY_COUNTER 6
271 * @brief xcb_sync_destroy_counter_request_t
273 typedef struct xcb_sync_destroy_counter_request_t
{
274 uint8_t major_opcode
; /**< */
275 uint8_t minor_opcode
; /**< */
276 uint16_t length
; /**< */
277 xcb_sync_counter_t counter
; /**< */
278 } xcb_sync_destroy_counter_request_t
;
281 * @brief xcb_sync_query_counter_cookie_t
283 typedef struct xcb_sync_query_counter_cookie_t
{
284 unsigned int sequence
; /**< */
285 } xcb_sync_query_counter_cookie_t
;
287 /** Opcode for xcb_sync_query_counter. */
288 #define XCB_SYNC_QUERY_COUNTER 5
291 * @brief xcb_sync_query_counter_request_t
293 typedef struct xcb_sync_query_counter_request_t
{
294 uint8_t major_opcode
; /**< */
295 uint8_t minor_opcode
; /**< */
296 uint16_t length
; /**< */
297 xcb_sync_counter_t counter
; /**< */
298 } xcb_sync_query_counter_request_t
;
301 * @brief xcb_sync_query_counter_reply_t
303 typedef struct xcb_sync_query_counter_reply_t
{
304 uint8_t response_type
; /**< */
305 uint8_t pad0
; /**< */
306 uint16_t sequence
; /**< */
307 uint32_t length
; /**< */
308 xcb_sync_int64_t counter_value
; /**< */
309 } xcb_sync_query_counter_reply_t
;
311 /** Opcode for xcb_sync_await. */
312 #define XCB_SYNC_AWAIT 7
315 * @brief xcb_sync_await_request_t
317 typedef struct xcb_sync_await_request_t
{
318 uint8_t major_opcode
; /**< */
319 uint8_t minor_opcode
; /**< */
320 uint16_t length
; /**< */
321 } xcb_sync_await_request_t
;
323 /** Opcode for xcb_sync_change_counter. */
324 #define XCB_SYNC_CHANGE_COUNTER 4
327 * @brief xcb_sync_change_counter_request_t
329 typedef struct xcb_sync_change_counter_request_t
{
330 uint8_t major_opcode
; /**< */
331 uint8_t minor_opcode
; /**< */
332 uint16_t length
; /**< */
333 xcb_sync_counter_t counter
; /**< */
334 xcb_sync_int64_t amount
; /**< */
335 } xcb_sync_change_counter_request_t
;
337 /** Opcode for xcb_sync_set_counter. */
338 #define XCB_SYNC_SET_COUNTER 3
341 * @brief xcb_sync_set_counter_request_t
343 typedef struct xcb_sync_set_counter_request_t
{
344 uint8_t major_opcode
; /**< */
345 uint8_t minor_opcode
; /**< */
346 uint16_t length
; /**< */
347 xcb_sync_counter_t counter
; /**< */
348 xcb_sync_int64_t value
; /**< */
349 } xcb_sync_set_counter_request_t
;
352 * @brief xcb_sync_create_alarm_value_list_t
354 typedef struct xcb_sync_create_alarm_value_list_t
{
355 xcb_sync_counter_t counter
; /**< */
356 uint32_t valueType
; /**< */
357 xcb_sync_int64_t value
; /**< */
358 uint32_t testType
; /**< */
359 xcb_sync_int64_t delta
; /**< */
360 uint32_t events
; /**< */
361 } xcb_sync_create_alarm_value_list_t
;
363 /** Opcode for xcb_sync_create_alarm. */
364 #define XCB_SYNC_CREATE_ALARM 8
367 * @brief xcb_sync_create_alarm_request_t
369 typedef struct xcb_sync_create_alarm_request_t
{
370 uint8_t major_opcode
; /**< */
371 uint8_t minor_opcode
; /**< */
372 uint16_t length
; /**< */
373 xcb_sync_alarm_t id
; /**< */
374 uint32_t value_mask
; /**< */
375 } xcb_sync_create_alarm_request_t
;
378 * @brief xcb_sync_change_alarm_value_list_t
380 typedef struct xcb_sync_change_alarm_value_list_t
{
381 xcb_sync_counter_t counter
; /**< */
382 uint32_t valueType
; /**< */
383 xcb_sync_int64_t value
; /**< */
384 uint32_t testType
; /**< */
385 xcb_sync_int64_t delta
; /**< */
386 uint32_t events
; /**< */
387 } xcb_sync_change_alarm_value_list_t
;
389 /** Opcode for xcb_sync_change_alarm. */
390 #define XCB_SYNC_CHANGE_ALARM 9
393 * @brief xcb_sync_change_alarm_request_t
395 typedef struct xcb_sync_change_alarm_request_t
{
396 uint8_t major_opcode
; /**< */
397 uint8_t minor_opcode
; /**< */
398 uint16_t length
; /**< */
399 xcb_sync_alarm_t id
; /**< */
400 uint32_t value_mask
; /**< */
401 } xcb_sync_change_alarm_request_t
;
403 /** Opcode for xcb_sync_destroy_alarm. */
404 #define XCB_SYNC_DESTROY_ALARM 11
407 * @brief xcb_sync_destroy_alarm_request_t
409 typedef struct xcb_sync_destroy_alarm_request_t
{
410 uint8_t major_opcode
; /**< */
411 uint8_t minor_opcode
; /**< */
412 uint16_t length
; /**< */
413 xcb_sync_alarm_t alarm
; /**< */
414 } xcb_sync_destroy_alarm_request_t
;
417 * @brief xcb_sync_query_alarm_cookie_t
419 typedef struct xcb_sync_query_alarm_cookie_t
{
420 unsigned int sequence
; /**< */
421 } xcb_sync_query_alarm_cookie_t
;
423 /** Opcode for xcb_sync_query_alarm. */
424 #define XCB_SYNC_QUERY_ALARM 10
427 * @brief xcb_sync_query_alarm_request_t
429 typedef struct xcb_sync_query_alarm_request_t
{
430 uint8_t major_opcode
; /**< */
431 uint8_t minor_opcode
; /**< */
432 uint16_t length
; /**< */
433 xcb_sync_alarm_t alarm
; /**< */
434 } xcb_sync_query_alarm_request_t
;
437 * @brief xcb_sync_query_alarm_reply_t
439 typedef struct xcb_sync_query_alarm_reply_t
{
440 uint8_t response_type
; /**< */
441 uint8_t pad0
; /**< */
442 uint16_t sequence
; /**< */
443 uint32_t length
; /**< */
444 xcb_sync_trigger_t trigger
; /**< */
445 xcb_sync_int64_t delta
; /**< */
446 uint8_t events
; /**< */
447 uint8_t state
; /**< */
448 uint8_t pad1
[2]; /**< */
449 } xcb_sync_query_alarm_reply_t
;
451 /** Opcode for xcb_sync_set_priority. */
452 #define XCB_SYNC_SET_PRIORITY 12
455 * @brief xcb_sync_set_priority_request_t
457 typedef struct xcb_sync_set_priority_request_t
{
458 uint8_t major_opcode
; /**< */
459 uint8_t minor_opcode
; /**< */
460 uint16_t length
; /**< */
462 int32_t priority
; /**< */
463 } xcb_sync_set_priority_request_t
;
466 * @brief xcb_sync_get_priority_cookie_t
468 typedef struct xcb_sync_get_priority_cookie_t
{
469 unsigned int sequence
; /**< */
470 } xcb_sync_get_priority_cookie_t
;
472 /** Opcode for xcb_sync_get_priority. */
473 #define XCB_SYNC_GET_PRIORITY 13
476 * @brief xcb_sync_get_priority_request_t
478 typedef struct xcb_sync_get_priority_request_t
{
479 uint8_t major_opcode
; /**< */
480 uint8_t minor_opcode
; /**< */
481 uint16_t length
; /**< */
483 } xcb_sync_get_priority_request_t
;
486 * @brief xcb_sync_get_priority_reply_t
488 typedef struct xcb_sync_get_priority_reply_t
{
489 uint8_t response_type
; /**< */
490 uint8_t pad0
; /**< */
491 uint16_t sequence
; /**< */
492 uint32_t length
; /**< */
493 int32_t priority
; /**< */
494 } xcb_sync_get_priority_reply_t
;
496 /** Opcode for xcb_sync_create_fence. */
497 #define XCB_SYNC_CREATE_FENCE 14
500 * @brief xcb_sync_create_fence_request_t
502 typedef struct xcb_sync_create_fence_request_t
{
503 uint8_t major_opcode
; /**< */
504 uint8_t minor_opcode
; /**< */
505 uint16_t length
; /**< */
506 xcb_drawable_t drawable
; /**< */
507 xcb_sync_fence_t fence
; /**< */
508 uint8_t initially_triggered
; /**< */
509 } xcb_sync_create_fence_request_t
;
511 /** Opcode for xcb_sync_trigger_fence. */
512 #define XCB_SYNC_TRIGGER_FENCE 15
515 * @brief xcb_sync_trigger_fence_request_t
517 typedef struct xcb_sync_trigger_fence_request_t
{
518 uint8_t major_opcode
; /**< */
519 uint8_t minor_opcode
; /**< */
520 uint16_t length
; /**< */
521 xcb_sync_fence_t fence
; /**< */
522 } xcb_sync_trigger_fence_request_t
;
524 /** Opcode for xcb_sync_reset_fence. */
525 #define XCB_SYNC_RESET_FENCE 16
528 * @brief xcb_sync_reset_fence_request_t
530 typedef struct xcb_sync_reset_fence_request_t
{
531 uint8_t major_opcode
; /**< */
532 uint8_t minor_opcode
; /**< */
533 uint16_t length
; /**< */
534 xcb_sync_fence_t fence
; /**< */
535 } xcb_sync_reset_fence_request_t
;
537 /** Opcode for xcb_sync_destroy_fence. */
538 #define XCB_SYNC_DESTROY_FENCE 17
541 * @brief xcb_sync_destroy_fence_request_t
543 typedef struct xcb_sync_destroy_fence_request_t
{
544 uint8_t major_opcode
; /**< */
545 uint8_t minor_opcode
; /**< */
546 uint16_t length
; /**< */
547 xcb_sync_fence_t fence
; /**< */
548 } xcb_sync_destroy_fence_request_t
;
551 * @brief xcb_sync_query_fence_cookie_t
553 typedef struct xcb_sync_query_fence_cookie_t
{
554 unsigned int sequence
; /**< */
555 } xcb_sync_query_fence_cookie_t
;
557 /** Opcode for xcb_sync_query_fence. */
558 #define XCB_SYNC_QUERY_FENCE 18
561 * @brief xcb_sync_query_fence_request_t
563 typedef struct xcb_sync_query_fence_request_t
{
564 uint8_t major_opcode
; /**< */
565 uint8_t minor_opcode
; /**< */
566 uint16_t length
; /**< */
567 xcb_sync_fence_t fence
; /**< */
568 } xcb_sync_query_fence_request_t
;
571 * @brief xcb_sync_query_fence_reply_t
573 typedef struct xcb_sync_query_fence_reply_t
{
574 uint8_t response_type
; /**< */
575 uint8_t pad0
; /**< */
576 uint16_t sequence
; /**< */
577 uint32_t length
; /**< */
578 uint8_t triggered
; /**< */
579 uint8_t pad1
[23]; /**< */
580 } xcb_sync_query_fence_reply_t
;
582 /** Opcode for xcb_sync_await_fence. */
583 #define XCB_SYNC_AWAIT_FENCE 19
586 * @brief xcb_sync_await_fence_request_t
588 typedef struct xcb_sync_await_fence_request_t
{
589 uint8_t major_opcode
; /**< */
590 uint8_t minor_opcode
; /**< */
591 uint16_t length
; /**< */
592 } xcb_sync_await_fence_request_t
;
594 /** Opcode for xcb_sync_counter_notify. */
595 #define XCB_SYNC_COUNTER_NOTIFY 0
598 * @brief xcb_sync_counter_notify_event_t
600 typedef struct xcb_sync_counter_notify_event_t
{
601 uint8_t response_type
; /**< */
602 uint8_t kind
; /**< */
603 uint16_t sequence
; /**< */
604 xcb_sync_counter_t counter
; /**< */
605 xcb_sync_int64_t wait_value
; /**< */
606 xcb_sync_int64_t counter_value
; /**< */
607 xcb_timestamp_t timestamp
; /**< */
608 uint16_t count
; /**< */
609 uint8_t destroyed
; /**< */
610 uint8_t pad0
; /**< */
611 } xcb_sync_counter_notify_event_t
;
613 /** Opcode for xcb_sync_alarm_notify. */
614 #define XCB_SYNC_ALARM_NOTIFY 1
617 * @brief xcb_sync_alarm_notify_event_t
619 typedef struct xcb_sync_alarm_notify_event_t
{
620 uint8_t response_type
; /**< */
621 uint8_t kind
; /**< */
622 uint16_t sequence
; /**< */
623 xcb_sync_alarm_t alarm
; /**< */
624 xcb_sync_int64_t counter_value
; /**< */
625 xcb_sync_int64_t alarm_value
; /**< */
626 xcb_timestamp_t timestamp
; /**< */
627 uint8_t state
; /**< */
628 uint8_t pad0
[3]; /**< */
629 } xcb_sync_alarm_notify_event_t
;
632 * Get the next element of the iterator
633 * @param i Pointer to a xcb_sync_alarm_iterator_t
635 * Get the next element in the iterator. The member rem is
636 * decreased by one. The member data points to the next
637 * element. The member index is increased by sizeof(xcb_sync_alarm_t)
640 xcb_sync_alarm_next (xcb_sync_alarm_iterator_t
*i
/**< */);
643 * Return the iterator pointing to the last element
644 * @param i An xcb_sync_alarm_iterator_t
645 * @return The iterator pointing to the last element
647 * Set the current element in the iterator to the last element.
648 * The member rem is set to 0. The member data points to the
651 xcb_generic_iterator_t
652 xcb_sync_alarm_end (xcb_sync_alarm_iterator_t i
/**< */);
655 * Get the next element of the iterator
656 * @param i Pointer to a xcb_sync_counter_iterator_t
658 * Get the next element in the iterator. The member rem is
659 * decreased by one. The member data points to the next
660 * element. The member index is increased by sizeof(xcb_sync_counter_t)
663 xcb_sync_counter_next (xcb_sync_counter_iterator_t
*i
/**< */);
666 * Return the iterator pointing to the last element
667 * @param i An xcb_sync_counter_iterator_t
668 * @return The iterator pointing to the last element
670 * Set the current element in the iterator to the last element.
671 * The member rem is set to 0. The member data points to the
674 xcb_generic_iterator_t
675 xcb_sync_counter_end (xcb_sync_counter_iterator_t i
/**< */);
678 * Get the next element of the iterator
679 * @param i Pointer to a xcb_sync_fence_iterator_t
681 * Get the next element in the iterator. The member rem is
682 * decreased by one. The member data points to the next
683 * element. The member index is increased by sizeof(xcb_sync_fence_t)
686 xcb_sync_fence_next (xcb_sync_fence_iterator_t
*i
/**< */);
689 * Return the iterator pointing to the last element
690 * @param i An xcb_sync_fence_iterator_t
691 * @return The iterator pointing to the last element
693 * Set the current element in the iterator to the last element.
694 * The member rem is set to 0. The member data points to the
697 xcb_generic_iterator_t
698 xcb_sync_fence_end (xcb_sync_fence_iterator_t i
/**< */);
701 * Get the next element of the iterator
702 * @param i Pointer to a xcb_sync_int64_iterator_t
704 * Get the next element in the iterator. The member rem is
705 * decreased by one. The member data points to the next
706 * element. The member index is increased by sizeof(xcb_sync_int64_t)
709 xcb_sync_int64_next (xcb_sync_int64_iterator_t
*i
/**< */);
712 * Return the iterator pointing to the last element
713 * @param i An xcb_sync_int64_iterator_t
714 * @return The iterator pointing to the last element
716 * Set the current element in the iterator to the last element.
717 * The member rem is set to 0. The member data points to the
720 xcb_generic_iterator_t
721 xcb_sync_int64_end (xcb_sync_int64_iterator_t i
/**< */);
724 xcb_sync_systemcounter_sizeof (const void *_buffer
/**< */);
727 xcb_sync_systemcounter_name (const xcb_sync_systemcounter_t
*R
/**< */);
730 xcb_sync_systemcounter_name_length (const xcb_sync_systemcounter_t
*R
/**< */);
732 xcb_generic_iterator_t
733 xcb_sync_systemcounter_name_end (const xcb_sync_systemcounter_t
*R
/**< */);
736 * Get the next element of the iterator
737 * @param i Pointer to a xcb_sync_systemcounter_iterator_t
739 * Get the next element in the iterator. The member rem is
740 * decreased by one. The member data points to the next
741 * element. The member index is increased by sizeof(xcb_sync_systemcounter_t)
744 xcb_sync_systemcounter_next (xcb_sync_systemcounter_iterator_t
*i
/**< */);
747 * Return the iterator pointing to the last element
748 * @param i An xcb_sync_systemcounter_iterator_t
749 * @return The iterator pointing to the last element
751 * Set the current element in the iterator to the last element.
752 * The member rem is set to 0. The member data points to the
755 xcb_generic_iterator_t
756 xcb_sync_systemcounter_end (xcb_sync_systemcounter_iterator_t i
/**< */);
759 * Get the next element of the iterator
760 * @param i Pointer to a xcb_sync_trigger_iterator_t
762 * Get the next element in the iterator. The member rem is
763 * decreased by one. The member data points to the next
764 * element. The member index is increased by sizeof(xcb_sync_trigger_t)
767 xcb_sync_trigger_next (xcb_sync_trigger_iterator_t
*i
/**< */);
770 * Return the iterator pointing to the last element
771 * @param i An xcb_sync_trigger_iterator_t
772 * @return The iterator pointing to the last element
774 * Set the current element in the iterator to the last element.
775 * The member rem is set to 0. The member data points to the
778 xcb_generic_iterator_t
779 xcb_sync_trigger_end (xcb_sync_trigger_iterator_t i
/**< */);
782 * Get the next element of the iterator
783 * @param i Pointer to a xcb_sync_waitcondition_iterator_t
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)
790 xcb_sync_waitcondition_next (xcb_sync_waitcondition_iterator_t
*i
/**< */);
793 * Return the iterator pointing to the last element
794 * @param i An xcb_sync_waitcondition_iterator_t
795 * @return The iterator pointing to the last element
797 * Set the current element in the iterator to the last element.
798 * The member rem is set to 0. The member data points to the
801 xcb_generic_iterator_t
802 xcb_sync_waitcondition_end (xcb_sync_waitcondition_iterator_t i
/**< */);
806 * @param c The connection
809 * Delivers a request to the X server.
812 xcb_sync_initialize_cookie_t
813 xcb_sync_initialize (xcb_connection_t
*c
/**< */,
814 uint8_t desired_major_version
/**< */,
815 uint8_t desired_minor_version
/**< */);
819 * @param c The connection
822 * Delivers a request to the X server.
824 * This form can be used only if the request will cause
825 * a reply to be generated. Any returned error will be
826 * placed in the event queue.
828 xcb_sync_initialize_cookie_t
829 xcb_sync_initialize_unchecked (xcb_connection_t
*c
/**< */,
830 uint8_t desired_major_version
/**< */,
831 uint8_t desired_minor_version
/**< */);
835 * @param c The connection
836 * @param cookie The cookie
837 * @param e The xcb_generic_error_t supplied
839 * Returns the reply of the request asked by
841 * The parameter @p e supplied to this function must be NULL if
842 * xcb_sync_initialize_unchecked(). is used.
843 * Otherwise, it stores the error if any.
845 * The returned value must be freed by the caller using free().
847 xcb_sync_initialize_reply_t
*
848 xcb_sync_initialize_reply (xcb_connection_t
*c
/**< */,
849 xcb_sync_initialize_cookie_t cookie
/**< */,
850 xcb_generic_error_t
**e
/**< */);
853 xcb_sync_list_system_counters_sizeof (const void *_buffer
/**< */);
857 * @param c The connection
860 * Delivers a request to the X server.
863 xcb_sync_list_system_counters_cookie_t
864 xcb_sync_list_system_counters (xcb_connection_t
*c
/**< */);
868 * @param c The connection
871 * Delivers a request to the X server.
873 * This form can be used only if the request will cause
874 * a reply to be generated. Any returned error will be
875 * placed in the event queue.
877 xcb_sync_list_system_counters_cookie_t
878 xcb_sync_list_system_counters_unchecked (xcb_connection_t
*c
/**< */);
881 xcb_sync_list_system_counters_counters_length (const xcb_sync_list_system_counters_reply_t
*R
/**< */);
883 xcb_sync_systemcounter_iterator_t
884 xcb_sync_list_system_counters_counters_iterator (const xcb_sync_list_system_counters_reply_t
*R
/**< */);
888 * @param c The connection
889 * @param cookie The cookie
890 * @param e The xcb_generic_error_t supplied
892 * Returns the reply of the request asked by
894 * The parameter @p e supplied to this function must be NULL if
895 * xcb_sync_list_system_counters_unchecked(). is used.
896 * Otherwise, it stores the error if any.
898 * The returned value must be freed by the caller using free().
900 xcb_sync_list_system_counters_reply_t
*
901 xcb_sync_list_system_counters_reply (xcb_connection_t
*c
/**< */,
902 xcb_sync_list_system_counters_cookie_t cookie
/**< */,
903 xcb_generic_error_t
**e
/**< */);
907 * @param c The connection
910 * Delivers a request to the X server.
912 * This form can be used only if the request will not cause
913 * a reply to be generated. Any returned error will be
914 * saved for handling by xcb_request_check().
917 xcb_sync_create_counter_checked (xcb_connection_t
*c
/**< */,
918 xcb_sync_counter_t id
/**< */,
919 xcb_sync_int64_t initial_value
/**< */);
923 * @param c The connection
926 * Delivers a request to the X server.
930 xcb_sync_create_counter (xcb_connection_t
*c
/**< */,
931 xcb_sync_counter_t id
/**< */,
932 xcb_sync_int64_t initial_value
/**< */);
936 * @param c The connection
939 * Delivers a request to the X server.
941 * This form can be used only if the request will not cause
942 * a reply to be generated. Any returned error will be
943 * saved for handling by xcb_request_check().
946 xcb_sync_destroy_counter_checked (xcb_connection_t
*c
/**< */,
947 xcb_sync_counter_t counter
/**< */);
951 * @param c The connection
954 * Delivers a request to the X server.
958 xcb_sync_destroy_counter (xcb_connection_t
*c
/**< */,
959 xcb_sync_counter_t counter
/**< */);
963 * @param c The connection
966 * Delivers a request to the X server.
969 xcb_sync_query_counter_cookie_t
970 xcb_sync_query_counter (xcb_connection_t
*c
/**< */,
971 xcb_sync_counter_t counter
/**< */);
975 * @param c The connection
978 * Delivers a request to the X server.
980 * This form can be used only if the request will cause
981 * a reply to be generated. Any returned error will be
982 * placed in the event queue.
984 xcb_sync_query_counter_cookie_t
985 xcb_sync_query_counter_unchecked (xcb_connection_t
*c
/**< */,
986 xcb_sync_counter_t counter
/**< */);
990 * @param c The connection
991 * @param cookie The cookie
992 * @param e The xcb_generic_error_t supplied
994 * Returns the reply of the request asked by
996 * The parameter @p e supplied to this function must be NULL if
997 * xcb_sync_query_counter_unchecked(). is used.
998 * Otherwise, it stores the error if any.
1000 * The returned value must be freed by the caller using free().
1002 xcb_sync_query_counter_reply_t
*
1003 xcb_sync_query_counter_reply (xcb_connection_t
*c
/**< */,
1004 xcb_sync_query_counter_cookie_t cookie
/**< */,
1005 xcb_generic_error_t
**e
/**< */);
1008 xcb_sync_await_sizeof (const void *_buffer
/**< */,
1009 uint32_t wait_list_len
/**< */);
1013 * @param c The connection
1016 * Delivers a request to the X server.
1018 * This form can be used only if the request will not cause
1019 * a reply to be generated. Any returned error will be
1020 * saved for handling by xcb_request_check().
1023 xcb_sync_await_checked (xcb_connection_t
*c
/**< */,
1024 uint32_t wait_list_len
/**< */,
1025 const xcb_sync_waitcondition_t
*wait_list
/**< */);
1029 * @param c The connection
1032 * Delivers a request to the X server.
1036 xcb_sync_await (xcb_connection_t
*c
/**< */,
1037 uint32_t wait_list_len
/**< */,
1038 const xcb_sync_waitcondition_t
*wait_list
/**< */);
1042 * @param c The connection
1045 * Delivers a request to the X server.
1047 * This form can be used only if the request will not cause
1048 * a reply to be generated. Any returned error will be
1049 * saved for handling by xcb_request_check().
1052 xcb_sync_change_counter_checked (xcb_connection_t
*c
/**< */,
1053 xcb_sync_counter_t counter
/**< */,
1054 xcb_sync_int64_t amount
/**< */);
1058 * @param c The connection
1061 * Delivers a request to the X server.
1065 xcb_sync_change_counter (xcb_connection_t
*c
/**< */,
1066 xcb_sync_counter_t counter
/**< */,
1067 xcb_sync_int64_t amount
/**< */);
1071 * @param c The connection
1074 * Delivers a request to the X server.
1076 * This form can be used only if the request will not cause
1077 * a reply to be generated. Any returned error will be
1078 * saved for handling by xcb_request_check().
1081 xcb_sync_set_counter_checked (xcb_connection_t
*c
/**< */,
1082 xcb_sync_counter_t counter
/**< */,
1083 xcb_sync_int64_t value
/**< */);
1087 * @param c The connection
1090 * Delivers a request to the X server.
1094 xcb_sync_set_counter (xcb_connection_t
*c
/**< */,
1095 xcb_sync_counter_t counter
/**< */,
1096 xcb_sync_int64_t value
/**< */);
1099 xcb_sync_create_alarm_value_list_serialize (void **_buffer
/**< */,
1100 uint32_t value_mask
/**< */,
1101 const xcb_sync_create_alarm_value_list_t
*_aux
/**< */);
1104 xcb_sync_create_alarm_value_list_unpack (const void *_buffer
/**< */,
1105 uint32_t value_mask
/**< */,
1106 xcb_sync_create_alarm_value_list_t
*_aux
/**< */);
1109 xcb_sync_create_alarm_value_list_sizeof (const void *_buffer
/**< */,
1110 uint32_t value_mask
/**< */);
1114 * @param c The connection
1117 * Delivers a request to the X server.
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().
1124 xcb_sync_create_alarm_checked (xcb_connection_t
*c
/**< */,
1125 xcb_sync_alarm_t id
/**< */,
1126 uint32_t value_mask
/**< */,
1127 const void *value_list
/**< */);
1131 * @param c The connection
1134 * Delivers a request to the X server.
1138 xcb_sync_create_alarm (xcb_connection_t
*c
/**< */,
1139 xcb_sync_alarm_t id
/**< */,
1140 uint32_t value_mask
/**< */,
1141 const void *value_list
/**< */);
1145 * @param c The connection
1148 * Delivers a request to the X server.
1150 * This form can be used only if the request will not cause
1151 * a reply to be generated. Any returned error will be
1152 * saved for handling by xcb_request_check().
1155 xcb_sync_create_alarm_aux_checked (xcb_connection_t
*c
/**< */,
1156 xcb_sync_alarm_t id
/**< */,
1157 uint32_t value_mask
/**< */,
1158 const xcb_sync_create_alarm_value_list_t
*value_list
/**< */);
1162 * @param c The connection
1165 * Delivers a request to the X server.
1169 xcb_sync_create_alarm_aux (xcb_connection_t
*c
/**< */,
1170 xcb_sync_alarm_t id
/**< */,
1171 uint32_t value_mask
/**< */,
1172 const xcb_sync_create_alarm_value_list_t
*value_list
/**< */);
1175 xcb_sync_change_alarm_value_list_serialize (void **_buffer
/**< */,
1176 uint32_t value_mask
/**< */,
1177 const xcb_sync_change_alarm_value_list_t
*_aux
/**< */);
1180 xcb_sync_change_alarm_value_list_unpack (const void *_buffer
/**< */,
1181 uint32_t value_mask
/**< */,
1182 xcb_sync_change_alarm_value_list_t
*_aux
/**< */);
1185 xcb_sync_change_alarm_value_list_sizeof (const void *_buffer
/**< */,
1186 uint32_t value_mask
/**< */);
1190 * @param c The connection
1193 * Delivers a request to the X server.
1195 * This form can be used only if the request will not cause
1196 * a reply to be generated. Any returned error will be
1197 * saved for handling by xcb_request_check().
1200 xcb_sync_change_alarm_checked (xcb_connection_t
*c
/**< */,
1201 xcb_sync_alarm_t id
/**< */,
1202 uint32_t value_mask
/**< */,
1203 const void *value_list
/**< */);
1207 * @param c The connection
1210 * Delivers a request to the X server.
1214 xcb_sync_change_alarm (xcb_connection_t
*c
/**< */,
1215 xcb_sync_alarm_t id
/**< */,
1216 uint32_t value_mask
/**< */,
1217 const void *value_list
/**< */);
1221 * @param c The connection
1224 * Delivers a request to the X server.
1226 * This form can be used only if the request will not cause
1227 * a reply to be generated. Any returned error will be
1228 * saved for handling by xcb_request_check().
1231 xcb_sync_change_alarm_aux_checked (xcb_connection_t
*c
/**< */,
1232 xcb_sync_alarm_t id
/**< */,
1233 uint32_t value_mask
/**< */,
1234 const xcb_sync_change_alarm_value_list_t
*value_list
/**< */);
1238 * @param c The connection
1241 * Delivers a request to the X server.
1245 xcb_sync_change_alarm_aux (xcb_connection_t
*c
/**< */,
1246 xcb_sync_alarm_t id
/**< */,
1247 uint32_t value_mask
/**< */,
1248 const xcb_sync_change_alarm_value_list_t
*value_list
/**< */);
1252 * @param c The connection
1255 * Delivers a request to the X server.
1257 * This form can be used only if the request will not cause
1258 * a reply to be generated. Any returned error will be
1259 * saved for handling by xcb_request_check().
1262 xcb_sync_destroy_alarm_checked (xcb_connection_t
*c
/**< */,
1263 xcb_sync_alarm_t alarm
/**< */);
1267 * @param c The connection
1270 * Delivers a request to the X server.
1274 xcb_sync_destroy_alarm (xcb_connection_t
*c
/**< */,
1275 xcb_sync_alarm_t alarm
/**< */);
1279 * @param c The connection
1282 * Delivers a request to the X server.
1285 xcb_sync_query_alarm_cookie_t
1286 xcb_sync_query_alarm (xcb_connection_t
*c
/**< */,
1287 xcb_sync_alarm_t alarm
/**< */);
1291 * @param c The connection
1294 * Delivers a request to the X server.
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.
1300 xcb_sync_query_alarm_cookie_t
1301 xcb_sync_query_alarm_unchecked (xcb_connection_t
*c
/**< */,
1302 xcb_sync_alarm_t alarm
/**< */);
1306 * @param c The connection
1307 * @param cookie The cookie
1308 * @param e The xcb_generic_error_t supplied
1310 * Returns the reply of the request asked by
1312 * The parameter @p e supplied to this function must be NULL if
1313 * xcb_sync_query_alarm_unchecked(). is used.
1314 * Otherwise, it stores the error if any.
1316 * The returned value must be freed by the caller using free().
1318 xcb_sync_query_alarm_reply_t
*
1319 xcb_sync_query_alarm_reply (xcb_connection_t
*c
/**< */,
1320 xcb_sync_query_alarm_cookie_t cookie
/**< */,
1321 xcb_generic_error_t
**e
/**< */);
1325 * @param c The connection
1328 * Delivers a request to the X server.
1330 * This form can be used only if the request will not cause
1331 * a reply to be generated. Any returned error will be
1332 * saved for handling by xcb_request_check().
1335 xcb_sync_set_priority_checked (xcb_connection_t
*c
/**< */,
1336 uint32_t id
/**< */,
1337 int32_t priority
/**< */);
1341 * @param c The connection
1344 * Delivers a request to the X server.
1348 xcb_sync_set_priority (xcb_connection_t
*c
/**< */,
1349 uint32_t id
/**< */,
1350 int32_t priority
/**< */);
1354 * @param c The connection
1357 * Delivers a request to the X server.
1360 xcb_sync_get_priority_cookie_t
1361 xcb_sync_get_priority (xcb_connection_t
*c
/**< */,
1362 uint32_t id
/**< */);
1366 * @param c The connection
1369 * Delivers a request to the X server.
1371 * This form can be used only if the request will cause
1372 * a reply to be generated. Any returned error will be
1373 * placed in the event queue.
1375 xcb_sync_get_priority_cookie_t
1376 xcb_sync_get_priority_unchecked (xcb_connection_t
*c
/**< */,
1377 uint32_t id
/**< */);
1381 * @param c The connection
1382 * @param cookie The cookie
1383 * @param e The xcb_generic_error_t supplied
1385 * Returns the reply of the request asked by
1387 * The parameter @p e supplied to this function must be NULL if
1388 * xcb_sync_get_priority_unchecked(). is used.
1389 * Otherwise, it stores the error if any.
1391 * The returned value must be freed by the caller using free().
1393 xcb_sync_get_priority_reply_t
*
1394 xcb_sync_get_priority_reply (xcb_connection_t
*c
/**< */,
1395 xcb_sync_get_priority_cookie_t cookie
/**< */,
1396 xcb_generic_error_t
**e
/**< */);
1400 * @param c The connection
1403 * Delivers a request to the X server.
1405 * This form can be used only if the request will not cause
1406 * a reply to be generated. Any returned error will be
1407 * saved for handling by xcb_request_check().
1410 xcb_sync_create_fence_checked (xcb_connection_t
*c
/**< */,
1411 xcb_drawable_t drawable
/**< */,
1412 xcb_sync_fence_t fence
/**< */,
1413 uint8_t initially_triggered
/**< */);
1417 * @param c The connection
1420 * Delivers a request to the X server.
1424 xcb_sync_create_fence (xcb_connection_t
*c
/**< */,
1425 xcb_drawable_t drawable
/**< */,
1426 xcb_sync_fence_t fence
/**< */,
1427 uint8_t initially_triggered
/**< */);
1431 * @param c The connection
1434 * Delivers a request to the X server.
1436 * This form can be used only if the request will not cause
1437 * a reply to be generated. Any returned error will be
1438 * saved for handling by xcb_request_check().
1441 xcb_sync_trigger_fence_checked (xcb_connection_t
*c
/**< */,
1442 xcb_sync_fence_t fence
/**< */);
1446 * @param c The connection
1449 * Delivers a request to the X server.
1453 xcb_sync_trigger_fence (xcb_connection_t
*c
/**< */,
1454 xcb_sync_fence_t fence
/**< */);
1458 * @param c The connection
1461 * Delivers a request to the X server.
1463 * This form can be used only if the request will not cause
1464 * a reply to be generated. Any returned error will be
1465 * saved for handling by xcb_request_check().
1468 xcb_sync_reset_fence_checked (xcb_connection_t
*c
/**< */,
1469 xcb_sync_fence_t fence
/**< */);
1473 * @param c The connection
1476 * Delivers a request to the X server.
1480 xcb_sync_reset_fence (xcb_connection_t
*c
/**< */,
1481 xcb_sync_fence_t fence
/**< */);
1485 * @param c The connection
1488 * Delivers a request to the X server.
1490 * This form can be used only if the request will not cause
1491 * a reply to be generated. Any returned error will be
1492 * saved for handling by xcb_request_check().
1495 xcb_sync_destroy_fence_checked (xcb_connection_t
*c
/**< */,
1496 xcb_sync_fence_t fence
/**< */);
1500 * @param c The connection
1503 * Delivers a request to the X server.
1507 xcb_sync_destroy_fence (xcb_connection_t
*c
/**< */,
1508 xcb_sync_fence_t fence
/**< */);
1512 * @param c The connection
1515 * Delivers a request to the X server.
1518 xcb_sync_query_fence_cookie_t
1519 xcb_sync_query_fence (xcb_connection_t
*c
/**< */,
1520 xcb_sync_fence_t fence
/**< */);
1524 * @param c The connection
1527 * Delivers a request to the X server.
1529 * This form can be used only if the request will cause
1530 * a reply to be generated. Any returned error will be
1531 * placed in the event queue.
1533 xcb_sync_query_fence_cookie_t
1534 xcb_sync_query_fence_unchecked (xcb_connection_t
*c
/**< */,
1535 xcb_sync_fence_t fence
/**< */);
1539 * @param c The connection
1540 * @param cookie The cookie
1541 * @param e The xcb_generic_error_t supplied
1543 * Returns the reply of the request asked by
1545 * The parameter @p e supplied to this function must be NULL if
1546 * xcb_sync_query_fence_unchecked(). is used.
1547 * Otherwise, it stores the error if any.
1549 * The returned value must be freed by the caller using free().
1551 xcb_sync_query_fence_reply_t
*
1552 xcb_sync_query_fence_reply (xcb_connection_t
*c
/**< */,
1553 xcb_sync_query_fence_cookie_t cookie
/**< */,
1554 xcb_generic_error_t
**e
/**< */);
1557 xcb_sync_await_fence_sizeof (const void *_buffer
/**< */,
1558 uint32_t fence_list_len
/**< */);
1562 * @param c The connection
1565 * Delivers a request to the X server.
1567 * This form can be used only if the request will not cause
1568 * a reply to be generated. Any returned error will be
1569 * saved for handling by xcb_request_check().
1572 xcb_sync_await_fence_checked (xcb_connection_t
*c
/**< */,
1573 uint32_t fence_list_len
/**< */,
1574 const xcb_sync_fence_t
*fence_list
/**< */);
1578 * @param c The connection
1581 * Delivers a request to the X server.
1585 xcb_sync_await_fence (xcb_connection_t
*c
/**< */,
1586 uint32_t fence_list_len
/**< */,
1587 const xcb_sync_fence_t
*fence_list
/**< */);