XCB
1.11.1
|
00001 /* 00002 * This file generated automatically from present.xml by c_client.py. 00003 * Edit at your peril. 00004 */ 00005 00012 #ifndef __PRESENT_H 00013 #define __PRESENT_H 00014 00015 #include "xcb.h" 00016 #include "xproto.h" 00017 #include "randr.h" 00018 #include "xfixes.h" 00019 #include "sync.h" 00020 00021 #ifdef __cplusplus 00022 extern "C" { 00023 #endif 00024 00025 #define XCB_PRESENT_MAJOR_VERSION 1 00026 #define XCB_PRESENT_MINOR_VERSION 0 00027 00028 extern xcb_extension_t xcb_present_id; 00029 00030 typedef enum xcb_present_event_enum_t { 00031 XCB_PRESENT_EVENT_CONFIGURE_NOTIFY = 0, 00032 XCB_PRESENT_EVENT_COMPLETE_NOTIFY = 1, 00033 XCB_PRESENT_EVENT_IDLE_NOTIFY = 2, 00034 XCB_PRESENT_EVENT_REDIRECT_NOTIFY = 3 00035 } xcb_present_event_enum_t; 00036 00037 typedef enum xcb_present_event_mask_t { 00038 XCB_PRESENT_EVENT_MASK_NO_EVENT = 0, 00039 XCB_PRESENT_EVENT_MASK_CONFIGURE_NOTIFY = 1, 00040 XCB_PRESENT_EVENT_MASK_COMPLETE_NOTIFY = 2, 00041 XCB_PRESENT_EVENT_MASK_IDLE_NOTIFY = 4, 00042 XCB_PRESENT_EVENT_MASK_REDIRECT_NOTIFY = 8 00043 } xcb_present_event_mask_t; 00044 00045 typedef enum xcb_present_option_t { 00046 XCB_PRESENT_OPTION_NONE = 0, 00047 XCB_PRESENT_OPTION_ASYNC = 1, 00048 XCB_PRESENT_OPTION_COPY = 2, 00049 XCB_PRESENT_OPTION_UST = 4 00050 } xcb_present_option_t; 00051 00052 typedef enum xcb_present_capability_t { 00053 XCB_PRESENT_CAPABILITY_NONE = 0, 00054 XCB_PRESENT_CAPABILITY_ASYNC = 1, 00055 XCB_PRESENT_CAPABILITY_FENCE = 2, 00056 XCB_PRESENT_CAPABILITY_UST = 4 00057 } xcb_present_capability_t; 00058 00059 typedef enum xcb_present_complete_kind_t { 00060 XCB_PRESENT_COMPLETE_KIND_PIXMAP = 0, 00061 XCB_PRESENT_COMPLETE_KIND_NOTIFY_MSC = 1 00062 } xcb_present_complete_kind_t; 00063 00064 typedef enum xcb_present_complete_mode_t { 00065 XCB_PRESENT_COMPLETE_MODE_COPY = 0, 00066 XCB_PRESENT_COMPLETE_MODE_FLIP = 1, 00067 XCB_PRESENT_COMPLETE_MODE_SKIP = 2 00068 } xcb_present_complete_mode_t; 00069 00073 typedef struct xcb_present_notify_t { 00074 xcb_window_t window; 00075 uint32_t serial; 00076 } xcb_present_notify_t; 00077 00081 typedef struct xcb_present_notify_iterator_t { 00082 xcb_present_notify_t *data; 00083 int rem; 00084 int index; 00085 } xcb_present_notify_iterator_t; 00086 00090 typedef struct xcb_present_query_version_cookie_t { 00091 unsigned int sequence; 00092 } xcb_present_query_version_cookie_t; 00093 00095 #define XCB_PRESENT_QUERY_VERSION 0 00096 00100 typedef struct xcb_present_query_version_request_t { 00101 uint8_t major_opcode; 00102 uint8_t minor_opcode; 00103 uint16_t length; 00104 uint32_t major_version; 00105 uint32_t minor_version; 00106 } xcb_present_query_version_request_t; 00107 00111 typedef struct xcb_present_query_version_reply_t { 00112 uint8_t response_type; 00113 uint8_t pad0; 00114 uint16_t sequence; 00115 uint32_t length; 00116 uint32_t major_version; 00117 uint32_t minor_version; 00118 } xcb_present_query_version_reply_t; 00119 00121 #define XCB_PRESENT_PIXMAP 1 00122 00126 typedef struct xcb_present_pixmap_request_t { 00127 uint8_t major_opcode; 00128 uint8_t minor_opcode; 00129 uint16_t length; 00130 xcb_window_t window; 00131 xcb_pixmap_t pixmap; 00132 uint32_t serial; 00133 xcb_xfixes_region_t valid; 00134 xcb_xfixes_region_t update; 00135 int16_t x_off; 00136 int16_t y_off; 00137 xcb_randr_crtc_t target_crtc; 00138 xcb_sync_fence_t wait_fence; 00139 xcb_sync_fence_t idle_fence; 00140 uint32_t options; 00141 uint8_t pad0[4]; 00142 uint64_t target_msc; 00143 uint64_t divisor; 00144 uint64_t remainder; 00145 } xcb_present_pixmap_request_t; 00146 00148 #define XCB_PRESENT_NOTIFY_MSC 2 00149 00153 typedef struct xcb_present_notify_msc_request_t { 00154 uint8_t major_opcode; 00155 uint8_t minor_opcode; 00156 uint16_t length; 00157 xcb_window_t window; 00158 uint32_t serial; 00159 uint8_t pad0[4]; 00160 uint64_t target_msc; 00161 uint64_t divisor; 00162 uint64_t remainder; 00163 } xcb_present_notify_msc_request_t; 00164 00165 typedef uint32_t xcb_present_event_t; 00166 00170 typedef struct xcb_present_event_iterator_t { 00171 xcb_present_event_t *data; 00172 int rem; 00173 int index; 00174 } xcb_present_event_iterator_t; 00175 00177 #define XCB_PRESENT_SELECT_INPUT 3 00178 00182 typedef struct xcb_present_select_input_request_t { 00183 uint8_t major_opcode; 00184 uint8_t minor_opcode; 00185 uint16_t length; 00186 xcb_present_event_t eid; 00187 xcb_window_t window; 00188 uint32_t event_mask; 00189 } xcb_present_select_input_request_t; 00190 00194 typedef struct xcb_present_query_capabilities_cookie_t { 00195 unsigned int sequence; 00196 } xcb_present_query_capabilities_cookie_t; 00197 00199 #define XCB_PRESENT_QUERY_CAPABILITIES 4 00200 00204 typedef struct xcb_present_query_capabilities_request_t { 00205 uint8_t major_opcode; 00206 uint8_t minor_opcode; 00207 uint16_t length; 00208 uint32_t target; 00209 } xcb_present_query_capabilities_request_t; 00210 00214 typedef struct xcb_present_query_capabilities_reply_t { 00215 uint8_t response_type; 00216 uint8_t pad0; 00217 uint16_t sequence; 00218 uint32_t length; 00219 uint32_t capabilities; 00220 } xcb_present_query_capabilities_reply_t; 00221 00223 #define XCB_PRESENT_GENERIC 0 00224 00228 typedef struct xcb_present_generic_event_t { 00229 uint8_t response_type; 00230 uint8_t extension; 00231 uint16_t sequence; 00232 uint32_t length; 00233 uint16_t evtype; 00234 uint8_t pad0[2]; 00235 xcb_present_event_t event; 00236 } xcb_present_generic_event_t; 00237 00239 #define XCB_PRESENT_CONFIGURE_NOTIFY 0 00240 00244 typedef struct xcb_present_configure_notify_event_t { 00245 uint8_t response_type; 00246 uint8_t extension; 00247 uint16_t sequence; 00248 uint32_t length; 00249 uint16_t event_type; 00250 uint8_t pad0[2]; 00251 xcb_present_event_t event; 00252 xcb_window_t window; 00253 int16_t x; 00254 int16_t y; 00255 uint16_t width; 00256 uint16_t height; 00257 int16_t off_x; 00258 int16_t off_y; 00259 uint32_t full_sequence; 00260 uint16_t pixmap_width; 00261 uint16_t pixmap_height; 00262 uint32_t pixmap_flags; 00263 } xcb_present_configure_notify_event_t; 00264 00266 #define XCB_PRESENT_COMPLETE_NOTIFY 1 00267 00271 typedef struct xcb_present_complete_notify_event_t { 00272 uint8_t response_type; 00273 uint8_t extension; 00274 uint16_t sequence; 00275 uint32_t length; 00276 uint16_t event_type; 00277 uint8_t kind; 00278 uint8_t mode; 00279 xcb_present_event_t event; 00280 xcb_window_t window; 00281 uint32_t serial; 00282 uint64_t ust; 00283 uint32_t full_sequence; 00284 uint64_t msc; 00285 } XCB_PACKED xcb_present_complete_notify_event_t; 00286 00288 #define XCB_PRESENT_IDLE_NOTIFY 2 00289 00293 typedef struct xcb_present_idle_notify_event_t { 00294 uint8_t response_type; 00295 uint8_t extension; 00296 uint16_t sequence; 00297 uint32_t length; 00298 uint16_t event_type; 00299 uint8_t pad0[2]; 00300 xcb_present_event_t event; 00301 xcb_window_t window; 00302 uint32_t serial; 00303 xcb_pixmap_t pixmap; 00304 xcb_sync_fence_t idle_fence; 00305 uint32_t full_sequence; 00306 } xcb_present_idle_notify_event_t; 00307 00309 #define XCB_PRESENT_REDIRECT_NOTIFY 3 00310 00314 typedef struct xcb_present_redirect_notify_event_t { 00315 uint8_t response_type; 00316 uint8_t extension; 00317 uint16_t sequence; 00318 uint32_t length; 00319 uint16_t event_type; 00320 uint8_t update_window; 00321 uint8_t pad0; 00322 xcb_present_event_t event; 00323 xcb_window_t event_window; 00324 xcb_window_t window; 00325 xcb_pixmap_t pixmap; 00326 uint32_t serial; 00327 uint32_t full_sequence; 00328 xcb_xfixes_region_t valid_region; 00329 xcb_xfixes_region_t update_region; 00330 xcb_rectangle_t valid_rect; 00331 xcb_rectangle_t update_rect; 00332 int16_t x_off; 00333 int16_t y_off; 00334 xcb_randr_crtc_t target_crtc; 00335 xcb_sync_fence_t wait_fence; 00336 xcb_sync_fence_t idle_fence; 00337 uint32_t options; 00338 uint8_t pad1[4]; 00339 uint64_t target_msc; 00340 uint64_t divisor; 00341 uint64_t remainder; 00342 } XCB_PACKED xcb_present_redirect_notify_event_t; 00343 00352 void 00353 xcb_present_notify_next (xcb_present_notify_iterator_t *i ); 00354 00364 xcb_generic_iterator_t 00365 xcb_present_notify_end (xcb_present_notify_iterator_t i ); 00366 00375 xcb_present_query_version_cookie_t 00376 xcb_present_query_version (xcb_connection_t *c , 00377 uint32_t major_version , 00378 uint32_t minor_version ); 00379 00391 xcb_present_query_version_cookie_t 00392 xcb_present_query_version_unchecked (xcb_connection_t *c , 00393 uint32_t major_version , 00394 uint32_t minor_version ); 00395 00410 xcb_present_query_version_reply_t * 00411 xcb_present_query_version_reply (xcb_connection_t *c , 00412 xcb_present_query_version_cookie_t cookie , 00413 xcb_generic_error_t **e ); 00414 00415 int 00416 xcb_present_pixmap_sizeof (const void *_buffer , 00417 uint32_t notifies_len ); 00418 00430 xcb_void_cookie_t 00431 xcb_present_pixmap_checked (xcb_connection_t *c , 00432 xcb_window_t window , 00433 xcb_pixmap_t pixmap , 00434 uint32_t serial , 00435 xcb_xfixes_region_t valid , 00436 xcb_xfixes_region_t update , 00437 int16_t x_off , 00438 int16_t y_off , 00439 xcb_randr_crtc_t target_crtc , 00440 xcb_sync_fence_t wait_fence , 00441 xcb_sync_fence_t idle_fence , 00442 uint32_t options , 00443 uint64_t target_msc , 00444 uint64_t divisor , 00445 uint64_t remainder , 00446 uint32_t notifies_len , 00447 const xcb_present_notify_t *notifies ); 00448 00457 xcb_void_cookie_t 00458 xcb_present_pixmap (xcb_connection_t *c , 00459 xcb_window_t window , 00460 xcb_pixmap_t pixmap , 00461 uint32_t serial , 00462 xcb_xfixes_region_t valid , 00463 xcb_xfixes_region_t update , 00464 int16_t x_off , 00465 int16_t y_off , 00466 xcb_randr_crtc_t target_crtc , 00467 xcb_sync_fence_t wait_fence , 00468 xcb_sync_fence_t idle_fence , 00469 uint32_t options , 00470 uint64_t target_msc , 00471 uint64_t divisor , 00472 uint64_t remainder , 00473 uint32_t notifies_len , 00474 const xcb_present_notify_t *notifies ); 00475 00487 xcb_void_cookie_t 00488 xcb_present_notify_msc_checked (xcb_connection_t *c , 00489 xcb_window_t window , 00490 uint32_t serial , 00491 uint64_t target_msc , 00492 uint64_t divisor , 00493 uint64_t remainder ); 00494 00503 xcb_void_cookie_t 00504 xcb_present_notify_msc (xcb_connection_t *c , 00505 xcb_window_t window , 00506 uint32_t serial , 00507 uint64_t target_msc , 00508 uint64_t divisor , 00509 uint64_t remainder ); 00510 00519 void 00520 xcb_present_event_next (xcb_present_event_iterator_t *i ); 00521 00531 xcb_generic_iterator_t 00532 xcb_present_event_end (xcb_present_event_iterator_t i ); 00533 00545 xcb_void_cookie_t 00546 xcb_present_select_input_checked (xcb_connection_t *c , 00547 xcb_present_event_t eid , 00548 xcb_window_t window , 00549 uint32_t event_mask ); 00550 00559 xcb_void_cookie_t 00560 xcb_present_select_input (xcb_connection_t *c , 00561 xcb_present_event_t eid , 00562 xcb_window_t window , 00563 uint32_t event_mask ); 00564 00573 xcb_present_query_capabilities_cookie_t 00574 xcb_present_query_capabilities (xcb_connection_t *c , 00575 uint32_t target ); 00576 00588 xcb_present_query_capabilities_cookie_t 00589 xcb_present_query_capabilities_unchecked (xcb_connection_t *c , 00590 uint32_t target ); 00591 00606 xcb_present_query_capabilities_reply_t * 00607 xcb_present_query_capabilities_reply (xcb_connection_t *c , 00608 xcb_present_query_capabilities_cookie_t cookie , 00609 xcb_generic_error_t **e ); 00610 00611 int 00612 xcb_present_redirect_notify_sizeof (const void *_buffer , 00613 uint32_t notifies_len ); 00614 00615 00616 #ifdef __cplusplus 00617 } 00618 #endif 00619 00620 #endif 00621