26#define XCB_PRESENT_MAJOR_VERSION 1
27#define XCB_PRESENT_MINOR_VERSION 4
31typedef enum xcb_present_event_enum_t {
32 XCB_PRESENT_EVENT_CONFIGURE_NOTIFY = 0,
33 XCB_PRESENT_EVENT_COMPLETE_NOTIFY = 1,
34 XCB_PRESENT_EVENT_IDLE_NOTIFY = 2,
35 XCB_PRESENT_EVENT_REDIRECT_NOTIFY = 3
36} xcb_present_event_enum_t;
38typedef enum xcb_present_event_mask_t {
39 XCB_PRESENT_EVENT_MASK_NO_EVENT = 0,
40 XCB_PRESENT_EVENT_MASK_CONFIGURE_NOTIFY = 1,
41 XCB_PRESENT_EVENT_MASK_COMPLETE_NOTIFY = 2,
42 XCB_PRESENT_EVENT_MASK_IDLE_NOTIFY = 4,
43 XCB_PRESENT_EVENT_MASK_REDIRECT_NOTIFY = 8
44} xcb_present_event_mask_t;
46typedef enum xcb_present_option_t {
47 XCB_PRESENT_OPTION_NONE = 0,
48 XCB_PRESENT_OPTION_ASYNC = 1,
49 XCB_PRESENT_OPTION_COPY = 2,
50 XCB_PRESENT_OPTION_UST = 4,
51 XCB_PRESENT_OPTION_SUBOPTIMAL = 8,
52 XCB_PRESENT_OPTION_ASYNC_MAY_TEAR = 16
53} xcb_present_option_t;
55typedef enum xcb_present_capability_t {
56 XCB_PRESENT_CAPABILITY_NONE = 0,
57 XCB_PRESENT_CAPABILITY_ASYNC = 1,
58 XCB_PRESENT_CAPABILITY_FENCE = 2,
59 XCB_PRESENT_CAPABILITY_UST = 4,
60 XCB_PRESENT_CAPABILITY_ASYNC_MAY_TEAR = 8,
61 XCB_PRESENT_CAPABILITY_SYNCOBJ = 16
62} xcb_present_capability_t;
64typedef enum xcb_present_complete_kind_t {
65 XCB_PRESENT_COMPLETE_KIND_PIXMAP = 0,
66 XCB_PRESENT_COMPLETE_KIND_NOTIFY_MSC = 1
67} xcb_present_complete_kind_t;
69typedef enum xcb_present_complete_mode_t {
70 XCB_PRESENT_COMPLETE_MODE_COPY = 0,
71 XCB_PRESENT_COMPLETE_MODE_FLIP = 1,
72 XCB_PRESENT_COMPLETE_MODE_SKIP = 2,
73 XCB_PRESENT_COMPLETE_MODE_SUBOPTIMAL_COPY = 3
74} xcb_present_complete_mode_t;
97 unsigned int sequence;
101#define XCB_PRESENT_QUERY_VERSION 0
107 uint8_t major_opcode;
108 uint8_t minor_opcode;
110 uint32_t major_version;
111 uint32_t minor_version;
118 uint8_t response_type;
122 uint32_t major_version;
123 uint32_t minor_version;
127#define XCB_PRESENT_PIXMAP 1
133 uint8_t major_opcode;
134 uint8_t minor_opcode;
139 xcb_xfixes_region_t valid;
140 xcb_xfixes_region_t update;
143 xcb_randr_crtc_t target_crtc;
144 xcb_sync_fence_t wait_fence;
145 xcb_sync_fence_t idle_fence;
154#define XCB_PRESENT_NOTIFY_MSC 2
160 uint8_t major_opcode;
161 uint8_t minor_opcode;
171typedef uint32_t xcb_present_event_t;
177 xcb_present_event_t *data;
183#define XCB_PRESENT_SELECT_INPUT 3
189 uint8_t major_opcode;
190 uint8_t minor_opcode;
192 xcb_present_event_t eid;
201 unsigned int sequence;
205#define XCB_PRESENT_QUERY_CAPABILITIES 4
211 uint8_t major_opcode;
212 uint8_t minor_opcode;
221 uint8_t response_type;
225 uint32_t capabilities;
229#define XCB_PRESENT_PIXMAP_SYNCED 5
235 uint8_t major_opcode;
236 uint8_t minor_opcode;
241 xcb_xfixes_region_t valid;
242 xcb_xfixes_region_t update;
245 xcb_randr_crtc_t target_crtc;
246 xcb_dri3_syncobj_t acquire_syncobj;
247 xcb_dri3_syncobj_t release_syncobj;
248 uint64_t acquire_point;
249 uint64_t release_point;
258#define XCB_PRESENT_GENERIC 0
264 uint8_t response_type;
270 xcb_present_event_t event;
274#define XCB_PRESENT_CONFIGURE_NOTIFY 0
280 uint8_t response_type;
286 xcb_present_event_t event;
294 uint32_t full_sequence;
295 uint16_t pixmap_width;
296 uint16_t pixmap_height;
297 uint32_t pixmap_flags;
301#define XCB_PRESENT_COMPLETE_NOTIFY 1
307 uint8_t response_type;
314 xcb_present_event_t event;
318 uint32_t full_sequence;
323#define XCB_PRESENT_IDLE_NOTIFY 2
329 uint8_t response_type;
335 xcb_present_event_t event;
339 xcb_sync_fence_t idle_fence;
340 uint32_t full_sequence;
344#define XCB_PRESENT_REDIRECT_NOTIFY 3
350 uint8_t response_type;
355 uint8_t update_window;
357 xcb_present_event_t event;
358 xcb_window_t event_window;
362 uint32_t full_sequence;
363 xcb_xfixes_region_t valid_region;
364 xcb_xfixes_region_t update_region;
369 xcb_randr_crtc_t target_crtc;
370 xcb_sync_fence_t wait_fence;
371 xcb_sync_fence_t idle_fence;
412 uint32_t major_version,
413 uint32_t minor_version);
428 uint32_t major_version,
429 uint32_t minor_version);
451xcb_present_pixmap_sizeof (
const void *_buffer,
452 uint32_t notifies_len);
470 xcb_xfixes_region_t valid,
471 xcb_xfixes_region_t update,
474 xcb_randr_crtc_t target_crtc,
475 xcb_sync_fence_t wait_fence,
476 xcb_sync_fence_t idle_fence,
481 uint32_t notifies_len,
497 xcb_xfixes_region_t valid,
498 xcb_xfixes_region_t update,
501 xcb_randr_crtc_t target_crtc,
502 xcb_sync_fence_t wait_fence,
503 xcb_sync_fence_t idle_fence,
508 uint32_t notifies_len,
591 xcb_present_event_t eid,
593 uint32_t event_mask);
605 xcb_present_event_t eid,
607 uint32_t event_mask);
656xcb_present_pixmap_synced_sizeof (
const void *_buffer,
657 uint32_t notifies_len);
675 xcb_xfixes_region_t valid,
676 xcb_xfixes_region_t update,
679 xcb_randr_crtc_t target_crtc,
680 xcb_dri3_syncobj_t acquire_syncobj,
681 xcb_dri3_syncobj_t release_syncobj,
682 uint64_t acquire_point,
683 uint64_t release_point,
688 uint32_t notifies_len,
704 xcb_xfixes_region_t valid,
705 xcb_xfixes_region_t update,
708 xcb_randr_crtc_t target_crtc,
709 xcb_dri3_syncobj_t acquire_syncobj,
710 xcb_dri3_syncobj_t release_syncobj,
711 uint64_t acquire_point,
712 uint64_t release_point,
717 uint32_t notifies_len,
730xcb_present_redirect_notify_sizeof (
const void *_buffer,
731 uint32_t notifies_len);
xcb_present_query_capabilities_cookie_t xcb_present_query_capabilities(xcb_connection_t *c, uint32_t target)
Definition present.c:429
xcb_void_cookie_t xcb_present_pixmap_synced_checked(xcb_connection_t *c, xcb_window_t window, xcb_pixmap_t pixmap, uint32_t serial, xcb_xfixes_region_t valid, xcb_xfixes_region_t update, int16_t x_off, int16_t y_off, xcb_randr_crtc_t target_crtc, xcb_dri3_syncobj_t acquire_syncobj, xcb_dri3_syncobj_t release_syncobj, uint64_t acquire_point, uint64_t release_point, uint32_t options, uint64_t target_msc, uint64_t divisor, uint64_t remainder, uint32_t notifies_len, const xcb_present_notify_t *notifies)
Definition present.c:520
void xcb_present_notify_next(xcb_present_notify_iterator_t *i)
Definition present.c:26
xcb_void_cookie_t xcb_present_pixmap_synced(xcb_connection_t *c, xcb_window_t window, xcb_pixmap_t pixmap, uint32_t serial, xcb_xfixes_region_t valid, xcb_xfixes_region_t update, int16_t x_off, int16_t y_off, xcb_randr_crtc_t target_crtc, xcb_dri3_syncobj_t acquire_syncobj, xcb_dri3_syncobj_t release_syncobj, uint64_t acquire_point, uint64_t release_point, uint32_t options, uint64_t target_msc, uint64_t divisor, uint64_t remainder, uint32_t notifies_len, const xcb_present_notify_t *notifies)
Definition present.c:584
xcb_void_cookie_t xcb_present_notify_msc(xcb_connection_t *c, xcb_window_t window, uint32_t serial, uint64_t target_msc, uint64_t divisor, uint64_t remainder)
Definition present.c:316
xcb_void_cookie_t xcb_present_select_input_checked(xcb_connection_t *c, xcb_present_event_t eid, xcb_window_t window, uint32_t event_mask)
Definition present.c:369
xcb_present_query_version_cookie_t xcb_present_query_version_unchecked(xcb_connection_t *c, uint32_t major_version, uint32_t minor_version)
Definition present.c:72
xcb_void_cookie_t xcb_present_pixmap(xcb_connection_t *c, xcb_window_t window, xcb_pixmap_t pixmap, uint32_t serial, xcb_xfixes_region_t valid, xcb_xfixes_region_t update, int16_t x_off, int16_t y_off, xcb_randr_crtc_t target_crtc, xcb_sync_fence_t wait_fence, xcb_sync_fence_t idle_fence, uint32_t options, uint64_t target_msc, uint64_t divisor, uint64_t remainder, uint32_t notifies_len, const xcb_present_notify_t *notifies)
Definition present.c:199
void xcb_present_event_next(xcb_present_event_iterator_t *i)
Definition present.c:351
xcb_void_cookie_t xcb_present_notify_msc_checked(xcb_connection_t *c, xcb_window_t window, uint32_t serial, uint64_t target_msc, uint64_t divisor, uint64_t remainder)
Definition present.c:281
xcb_generic_iterator_t xcb_present_event_end(xcb_present_event_iterator_t i)
Definition present.c:359
xcb_void_cookie_t xcb_present_pixmap_checked(xcb_connection_t *c, xcb_window_t window, xcb_pixmap_t pixmap, uint32_t serial, xcb_xfixes_region_t valid, xcb_xfixes_region_t update, int16_t x_off, int16_t y_off, xcb_randr_crtc_t target_crtc, xcb_sync_fence_t wait_fence, xcb_sync_fence_t idle_fence, uint32_t options, uint64_t target_msc, uint64_t divisor, uint64_t remainder, uint32_t notifies_len, const xcb_present_notify_t *notifies)
Definition present.c:139
xcb_void_cookie_t xcb_present_select_input(xcb_connection_t *c, xcb_present_event_t eid, xcb_window_t window, uint32_t event_mask)
Definition present.c:399
xcb_generic_iterator_t xcb_present_notify_end(xcb_present_notify_iterator_t i)
Definition present.c:34
xcb_present_query_capabilities_reply_t * xcb_present_query_capabilities_reply(xcb_connection_t *c, xcb_present_query_capabilities_cookie_t cookie, xcb_generic_error_t **e)
Definition present.c:481
xcb_present_query_capabilities_cookie_t xcb_present_query_capabilities_unchecked(xcb_connection_t *c, uint32_t target)
Definition present.c:455
xcb_present_query_version_reply_t * xcb_present_query_version_reply(xcb_connection_t *c, xcb_present_query_version_cookie_t cookie, xcb_generic_error_t **e)
Definition present.c:100
xcb_present_query_version_cookie_t xcb_present_query_version(xcb_connection_t *c, uint32_t major_version, uint32_t minor_version)
Definition present.c:44
Generic error.
Definition xcb.h:186
Generic iterator.
Definition xcb.h:118
xcb_present_complete_notify_event_t
Definition present.h:306
xcb_present_event_iterator_t
Definition present.h:176
xcb_present_generic_event_t
Definition present.h:263
xcb_present_idle_notify_event_t
Definition present.h:328
xcb_present_notify_iterator_t
Definition present.h:87
xcb_present_notify_msc_request_t
Definition present.h:159
xcb_present_notify_t
Definition present.h:79
xcb_present_pixmap_request_t
Definition present.h:132
xcb_present_pixmap_synced_request_t
Definition present.h:234
xcb_present_query_capabilities_cookie_t
Definition present.h:200
xcb_present_query_capabilities_reply_t
Definition present.h:220
xcb_present_query_capabilities_request_t
Definition present.h:210
xcb_present_query_version_cookie_t
Definition present.h:96
xcb_present_query_version_reply_t
Definition present.h:117
xcb_present_query_version_request_t
Definition present.h:106
xcb_present_redirect_notify_event_t
Definition present.h:349
xcb_rectangle_t
Definition xproto.h:234
Generic cookie.
Definition xcb.h:203