00001
00002
00003
00004
00005
00012 #ifndef __DRI2_H
00013 #define __DRI2_H
00014
00015 #include "xcb.h"
00016 #include "xproto.h"
00017
00018 #ifdef __cplusplus
00019 extern "C" {
00020 #endif
00021
00022 #define XCB_DRI2_MAJOR_VERSION 1
00023 #define XCB_DRI2_MINOR_VERSION 4
00024
00025 extern xcb_extension_t xcb_dri2_id;
00026
00027 typedef enum xcb_dri2_attachment_t {
00028 XCB_DRI2_ATTACHMENT_BUFFER_FRONT_LEFT = 0,
00029 XCB_DRI2_ATTACHMENT_BUFFER_BACK_LEFT = 1,
00030 XCB_DRI2_ATTACHMENT_BUFFER_FRONT_RIGHT = 2,
00031 XCB_DRI2_ATTACHMENT_BUFFER_BACK_RIGHT = 3,
00032 XCB_DRI2_ATTACHMENT_BUFFER_DEPTH = 4,
00033 XCB_DRI2_ATTACHMENT_BUFFER_STENCIL = 5,
00034 XCB_DRI2_ATTACHMENT_BUFFER_ACCUM = 6,
00035 XCB_DRI2_ATTACHMENT_BUFFER_FAKE_FRONT_LEFT = 7,
00036 XCB_DRI2_ATTACHMENT_BUFFER_FAKE_FRONT_RIGHT = 8,
00037 XCB_DRI2_ATTACHMENT_BUFFER_DEPTH_STENCIL = 9,
00038 XCB_DRI2_ATTACHMENT_BUFFER_HIZ = 10
00039 } xcb_dri2_attachment_t;
00040
00041 typedef enum xcb_dri2_driver_type_t {
00042 XCB_DRI2_DRIVER_TYPE_DRI = 0,
00043 XCB_DRI2_DRIVER_TYPE_VDPAU = 1
00044 } xcb_dri2_driver_type_t;
00045
00046 typedef enum xcb_dri2_event_type_t {
00047 XCB_DRI2_EVENT_TYPE_EXCHANGE_COMPLETE = 1,
00048 XCB_DRI2_EVENT_TYPE_BLIT_COMPLETE = 2,
00049 XCB_DRI2_EVENT_TYPE_FLIP_COMPLETE = 3
00050 } xcb_dri2_event_type_t;
00051
00055 typedef struct xcb_dri2_dri2_buffer_t {
00056 uint32_t attachment;
00057 uint32_t name;
00058 uint32_t pitch;
00059 uint32_t cpp;
00060 uint32_t flags;
00061 } xcb_dri2_dri2_buffer_t;
00062
00066 typedef struct xcb_dri2_dri2_buffer_iterator_t {
00067 xcb_dri2_dri2_buffer_t *data;
00068 int rem;
00069 int index;
00070 } xcb_dri2_dri2_buffer_iterator_t;
00071
00075 typedef struct xcb_dri2_attach_format_t {
00076 uint32_t attachment;
00077 uint32_t format;
00078 } xcb_dri2_attach_format_t;
00079
00083 typedef struct xcb_dri2_attach_format_iterator_t {
00084 xcb_dri2_attach_format_t *data;
00085 int rem;
00086 int index;
00087 } xcb_dri2_attach_format_iterator_t;
00088
00092 typedef struct xcb_dri2_query_version_cookie_t {
00093 unsigned int sequence;
00094 } xcb_dri2_query_version_cookie_t;
00095
00097 #define XCB_DRI2_QUERY_VERSION 0
00098
00102 typedef struct xcb_dri2_query_version_request_t {
00103 uint8_t major_opcode;
00104 uint8_t minor_opcode;
00105 uint16_t length;
00106 uint32_t major_version;
00107 uint32_t minor_version;
00108 } xcb_dri2_query_version_request_t;
00109
00113 typedef struct xcb_dri2_query_version_reply_t {
00114 uint8_t response_type;
00115 uint8_t pad0;
00116 uint16_t sequence;
00117 uint32_t length;
00118 uint32_t major_version;
00119 uint32_t minor_version;
00120 } xcb_dri2_query_version_reply_t;
00121
00125 typedef struct xcb_dri2_connect_cookie_t {
00126 unsigned int sequence;
00127 } xcb_dri2_connect_cookie_t;
00128
00130 #define XCB_DRI2_CONNECT 1
00131
00135 typedef struct xcb_dri2_connect_request_t {
00136 uint8_t major_opcode;
00137 uint8_t minor_opcode;
00138 uint16_t length;
00139 xcb_window_t window;
00140 uint32_t driver_type;
00141 } xcb_dri2_connect_request_t;
00142
00146 typedef struct xcb_dri2_connect_reply_t {
00147 uint8_t response_type;
00148 uint8_t pad0;
00149 uint16_t sequence;
00150 uint32_t length;
00151 uint32_t driver_name_length;
00152 uint32_t device_name_length;
00153 uint8_t pad1[16];
00154 } xcb_dri2_connect_reply_t;
00155
00159 typedef struct xcb_dri2_authenticate_cookie_t {
00160 unsigned int sequence;
00161 } xcb_dri2_authenticate_cookie_t;
00162
00164 #define XCB_DRI2_AUTHENTICATE 2
00165
00169 typedef struct xcb_dri2_authenticate_request_t {
00170 uint8_t major_opcode;
00171 uint8_t minor_opcode;
00172 uint16_t length;
00173 xcb_window_t window;
00174 uint32_t magic;
00175 } xcb_dri2_authenticate_request_t;
00176
00180 typedef struct xcb_dri2_authenticate_reply_t {
00181 uint8_t response_type;
00182 uint8_t pad0;
00183 uint16_t sequence;
00184 uint32_t length;
00185 uint32_t authenticated;
00186 } xcb_dri2_authenticate_reply_t;
00187
00189 #define XCB_DRI2_CREATE_DRAWABLE 3
00190
00194 typedef struct xcb_dri2_create_drawable_request_t {
00195 uint8_t major_opcode;
00196 uint8_t minor_opcode;
00197 uint16_t length;
00198 xcb_drawable_t drawable;
00199 } xcb_dri2_create_drawable_request_t;
00200
00202 #define XCB_DRI2_DESTROY_DRAWABLE 4
00203
00207 typedef struct xcb_dri2_destroy_drawable_request_t {
00208 uint8_t major_opcode;
00209 uint8_t minor_opcode;
00210 uint16_t length;
00211 xcb_drawable_t drawable;
00212 } xcb_dri2_destroy_drawable_request_t;
00213
00217 typedef struct xcb_dri2_get_buffers_cookie_t {
00218 unsigned int sequence;
00219 } xcb_dri2_get_buffers_cookie_t;
00220
00222 #define XCB_DRI2_GET_BUFFERS 5
00223
00227 typedef struct xcb_dri2_get_buffers_request_t {
00228 uint8_t major_opcode;
00229 uint8_t minor_opcode;
00230 uint16_t length;
00231 xcb_drawable_t drawable;
00232 uint32_t count;
00233 } xcb_dri2_get_buffers_request_t;
00234
00238 typedef struct xcb_dri2_get_buffers_reply_t {
00239 uint8_t response_type;
00240 uint8_t pad0;
00241 uint16_t sequence;
00242 uint32_t length;
00243 uint32_t width;
00244 uint32_t height;
00245 uint32_t count;
00246 uint8_t pad1[12];
00247 } xcb_dri2_get_buffers_reply_t;
00248
00252 typedef struct xcb_dri2_copy_region_cookie_t {
00253 unsigned int sequence;
00254 } xcb_dri2_copy_region_cookie_t;
00255
00257 #define XCB_DRI2_COPY_REGION 6
00258
00262 typedef struct xcb_dri2_copy_region_request_t {
00263 uint8_t major_opcode;
00264 uint8_t minor_opcode;
00265 uint16_t length;
00266 xcb_drawable_t drawable;
00267 uint32_t region;
00268 uint32_t dest;
00269 uint32_t src;
00270 } xcb_dri2_copy_region_request_t;
00271
00275 typedef struct xcb_dri2_copy_region_reply_t {
00276 uint8_t response_type;
00277 uint8_t pad0;
00278 uint16_t sequence;
00279 uint32_t length;
00280 } xcb_dri2_copy_region_reply_t;
00281
00285 typedef struct xcb_dri2_get_buffers_with_format_cookie_t {
00286 unsigned int sequence;
00287 } xcb_dri2_get_buffers_with_format_cookie_t;
00288
00290 #define XCB_DRI2_GET_BUFFERS_WITH_FORMAT 7
00291
00295 typedef struct xcb_dri2_get_buffers_with_format_request_t {
00296 uint8_t major_opcode;
00297 uint8_t minor_opcode;
00298 uint16_t length;
00299 xcb_drawable_t drawable;
00300 uint32_t count;
00301 } xcb_dri2_get_buffers_with_format_request_t;
00302
00306 typedef struct xcb_dri2_get_buffers_with_format_reply_t {
00307 uint8_t response_type;
00308 uint8_t pad0;
00309 uint16_t sequence;
00310 uint32_t length;
00311 uint32_t width;
00312 uint32_t height;
00313 uint32_t count;
00314 uint8_t pad1[12];
00315 } xcb_dri2_get_buffers_with_format_reply_t;
00316
00320 typedef struct xcb_dri2_swap_buffers_cookie_t {
00321 unsigned int sequence;
00322 } xcb_dri2_swap_buffers_cookie_t;
00323
00325 #define XCB_DRI2_SWAP_BUFFERS 8
00326
00330 typedef struct xcb_dri2_swap_buffers_request_t {
00331 uint8_t major_opcode;
00332 uint8_t minor_opcode;
00333 uint16_t length;
00334 xcb_drawable_t drawable;
00335 uint32_t target_msc_hi;
00336 uint32_t target_msc_lo;
00337 uint32_t divisor_hi;
00338 uint32_t divisor_lo;
00339 uint32_t remainder_hi;
00340 uint32_t remainder_lo;
00341 } xcb_dri2_swap_buffers_request_t;
00342
00346 typedef struct xcb_dri2_swap_buffers_reply_t {
00347 uint8_t response_type;
00348 uint8_t pad0;
00349 uint16_t sequence;
00350 uint32_t length;
00351 uint32_t swap_hi;
00352 uint32_t swap_lo;
00353 } xcb_dri2_swap_buffers_reply_t;
00354
00358 typedef struct xcb_dri2_get_msc_cookie_t {
00359 unsigned int sequence;
00360 } xcb_dri2_get_msc_cookie_t;
00361
00363 #define XCB_DRI2_GET_MSC 9
00364
00368 typedef struct xcb_dri2_get_msc_request_t {
00369 uint8_t major_opcode;
00370 uint8_t minor_opcode;
00371 uint16_t length;
00372 xcb_drawable_t drawable;
00373 } xcb_dri2_get_msc_request_t;
00374
00378 typedef struct xcb_dri2_get_msc_reply_t {
00379 uint8_t response_type;
00380 uint8_t pad0;
00381 uint16_t sequence;
00382 uint32_t length;
00383 uint32_t ust_hi;
00384 uint32_t ust_lo;
00385 uint32_t msc_hi;
00386 uint32_t msc_lo;
00387 uint32_t sbc_hi;
00388 uint32_t sbc_lo;
00389 } xcb_dri2_get_msc_reply_t;
00390
00394 typedef struct xcb_dri2_wait_msc_cookie_t {
00395 unsigned int sequence;
00396 } xcb_dri2_wait_msc_cookie_t;
00397
00399 #define XCB_DRI2_WAIT_MSC 10
00400
00404 typedef struct xcb_dri2_wait_msc_request_t {
00405 uint8_t major_opcode;
00406 uint8_t minor_opcode;
00407 uint16_t length;
00408 xcb_drawable_t drawable;
00409 uint32_t target_msc_hi;
00410 uint32_t target_msc_lo;
00411 uint32_t divisor_hi;
00412 uint32_t divisor_lo;
00413 uint32_t remainder_hi;
00414 uint32_t remainder_lo;
00415 } xcb_dri2_wait_msc_request_t;
00416
00420 typedef struct xcb_dri2_wait_msc_reply_t {
00421 uint8_t response_type;
00422 uint8_t pad0;
00423 uint16_t sequence;
00424 uint32_t length;
00425 uint32_t ust_hi;
00426 uint32_t ust_lo;
00427 uint32_t msc_hi;
00428 uint32_t msc_lo;
00429 uint32_t sbc_hi;
00430 uint32_t sbc_lo;
00431 } xcb_dri2_wait_msc_reply_t;
00432
00436 typedef struct xcb_dri2_wait_sbc_cookie_t {
00437 unsigned int sequence;
00438 } xcb_dri2_wait_sbc_cookie_t;
00439
00441 #define XCB_DRI2_WAIT_SBC 11
00442
00446 typedef struct xcb_dri2_wait_sbc_request_t {
00447 uint8_t major_opcode;
00448 uint8_t minor_opcode;
00449 uint16_t length;
00450 xcb_drawable_t drawable;
00451 uint32_t target_sbc_hi;
00452 uint32_t target_sbc_lo;
00453 } xcb_dri2_wait_sbc_request_t;
00454
00458 typedef struct xcb_dri2_wait_sbc_reply_t {
00459 uint8_t response_type;
00460 uint8_t pad0;
00461 uint16_t sequence;
00462 uint32_t length;
00463 uint32_t ust_hi;
00464 uint32_t ust_lo;
00465 uint32_t msc_hi;
00466 uint32_t msc_lo;
00467 uint32_t sbc_hi;
00468 uint32_t sbc_lo;
00469 } xcb_dri2_wait_sbc_reply_t;
00470
00472 #define XCB_DRI2_SWAP_INTERVAL 12
00473
00477 typedef struct xcb_dri2_swap_interval_request_t {
00478 uint8_t major_opcode;
00479 uint8_t minor_opcode;
00480 uint16_t length;
00481 xcb_drawable_t drawable;
00482 uint32_t interval;
00483 } xcb_dri2_swap_interval_request_t;
00484
00488 typedef struct xcb_dri2_get_param_cookie_t {
00489 unsigned int sequence;
00490 } xcb_dri2_get_param_cookie_t;
00491
00493 #define XCB_DRI2_GET_PARAM 13
00494
00498 typedef struct xcb_dri2_get_param_request_t {
00499 uint8_t major_opcode;
00500 uint8_t minor_opcode;
00501 uint16_t length;
00502 xcb_drawable_t drawable;
00503 uint32_t param;
00504 } xcb_dri2_get_param_request_t;
00505
00509 typedef struct xcb_dri2_get_param_reply_t {
00510 uint8_t response_type;
00511 uint8_t is_param_recognized;
00512 uint16_t sequence;
00513 uint32_t length;
00514 uint32_t value_hi;
00515 uint32_t value_lo;
00516 } xcb_dri2_get_param_reply_t;
00517
00519 #define XCB_DRI2_BUFFER_SWAP_COMPLETE 0
00520
00524 typedef struct xcb_dri2_buffer_swap_complete_event_t {
00525 uint8_t response_type;
00526 uint8_t pad0;
00527 uint16_t sequence;
00528 uint16_t event_type;
00529 uint8_t pad1[2];
00530 xcb_drawable_t drawable;
00531 uint32_t ust_hi;
00532 uint32_t ust_lo;
00533 uint32_t msc_hi;
00534 uint32_t msc_lo;
00535 uint32_t sbc;
00536 } xcb_dri2_buffer_swap_complete_event_t;
00537
00539 #define XCB_DRI2_INVALIDATE_BUFFERS 1
00540
00544 typedef struct xcb_dri2_invalidate_buffers_event_t {
00545 uint8_t response_type;
00546 uint8_t pad0;
00547 uint16_t sequence;
00548 xcb_drawable_t drawable;
00549 } xcb_dri2_invalidate_buffers_event_t;
00550
00559 void
00560 xcb_dri2_dri2_buffer_next (xcb_dri2_dri2_buffer_iterator_t *i );
00561
00571 xcb_generic_iterator_t
00572 xcb_dri2_dri2_buffer_end (xcb_dri2_dri2_buffer_iterator_t i );
00573
00582 void
00583 xcb_dri2_attach_format_next (xcb_dri2_attach_format_iterator_t *i );
00584
00594 xcb_generic_iterator_t
00595 xcb_dri2_attach_format_end (xcb_dri2_attach_format_iterator_t i );
00596
00605 xcb_dri2_query_version_cookie_t
00606 xcb_dri2_query_version (xcb_connection_t *c ,
00607 uint32_t major_version ,
00608 uint32_t minor_version );
00609
00621 xcb_dri2_query_version_cookie_t
00622 xcb_dri2_query_version_unchecked (xcb_connection_t *c ,
00623 uint32_t major_version ,
00624 uint32_t minor_version );
00625
00640 xcb_dri2_query_version_reply_t *
00641 xcb_dri2_query_version_reply (xcb_connection_t *c ,
00642 xcb_dri2_query_version_cookie_t cookie ,
00643 xcb_generic_error_t **e );
00644
00645 int
00646 xcb_dri2_connect_sizeof (const void *_buffer );
00647
00656 xcb_dri2_connect_cookie_t
00657 xcb_dri2_connect (xcb_connection_t *c ,
00658 xcb_window_t window ,
00659 uint32_t driver_type );
00660
00672 xcb_dri2_connect_cookie_t
00673 xcb_dri2_connect_unchecked (xcb_connection_t *c ,
00674 xcb_window_t window ,
00675 uint32_t driver_type );
00676
00677 char *
00678 xcb_dri2_connect_driver_name (const xcb_dri2_connect_reply_t *R );
00679
00680 int
00681 xcb_dri2_connect_driver_name_length (const xcb_dri2_connect_reply_t *R );
00682
00683 xcb_generic_iterator_t
00684 xcb_dri2_connect_driver_name_end (const xcb_dri2_connect_reply_t *R );
00685
00686 void *
00687 xcb_dri2_connect_alignment_pad (const xcb_dri2_connect_reply_t *R );
00688
00689 int
00690 xcb_dri2_connect_alignment_pad_length (const xcb_dri2_connect_reply_t *R );
00691
00692 xcb_generic_iterator_t
00693 xcb_dri2_connect_alignment_pad_end (const xcb_dri2_connect_reply_t *R );
00694
00695 char *
00696 xcb_dri2_connect_device_name (const xcb_dri2_connect_reply_t *R );
00697
00698 int
00699 xcb_dri2_connect_device_name_length (const xcb_dri2_connect_reply_t *R );
00700
00701 xcb_generic_iterator_t
00702 xcb_dri2_connect_device_name_end (const xcb_dri2_connect_reply_t *R );
00703
00718 xcb_dri2_connect_reply_t *
00719 xcb_dri2_connect_reply (xcb_connection_t *c ,
00720 xcb_dri2_connect_cookie_t cookie ,
00721 xcb_generic_error_t **e );
00722
00731 xcb_dri2_authenticate_cookie_t
00732 xcb_dri2_authenticate (xcb_connection_t *c ,
00733 xcb_window_t window ,
00734 uint32_t magic );
00735
00747 xcb_dri2_authenticate_cookie_t
00748 xcb_dri2_authenticate_unchecked (xcb_connection_t *c ,
00749 xcb_window_t window ,
00750 uint32_t magic );
00751
00766 xcb_dri2_authenticate_reply_t *
00767 xcb_dri2_authenticate_reply (xcb_connection_t *c ,
00768 xcb_dri2_authenticate_cookie_t cookie ,
00769 xcb_generic_error_t **e );
00770
00782 xcb_void_cookie_t
00783 xcb_dri2_create_drawable_checked (xcb_connection_t *c ,
00784 xcb_drawable_t drawable );
00785
00794 xcb_void_cookie_t
00795 xcb_dri2_create_drawable (xcb_connection_t *c ,
00796 xcb_drawable_t drawable );
00797
00809 xcb_void_cookie_t
00810 xcb_dri2_destroy_drawable_checked (xcb_connection_t *c ,
00811 xcb_drawable_t drawable );
00812
00821 xcb_void_cookie_t
00822 xcb_dri2_destroy_drawable (xcb_connection_t *c ,
00823 xcb_drawable_t drawable );
00824
00825 int
00826 xcb_dri2_get_buffers_sizeof (const void *_buffer ,
00827 uint32_t attachments_len );
00828
00837 xcb_dri2_get_buffers_cookie_t
00838 xcb_dri2_get_buffers (xcb_connection_t *c ,
00839 xcb_drawable_t drawable ,
00840 uint32_t count ,
00841 uint32_t attachments_len ,
00842 const uint32_t *attachments );
00843
00855 xcb_dri2_get_buffers_cookie_t
00856 xcb_dri2_get_buffers_unchecked (xcb_connection_t *c ,
00857 xcb_drawable_t drawable ,
00858 uint32_t count ,
00859 uint32_t attachments_len ,
00860 const uint32_t *attachments );
00861
00862 xcb_dri2_dri2_buffer_t *
00863 xcb_dri2_get_buffers_buffers (const xcb_dri2_get_buffers_reply_t *R );
00864
00865 int
00866 xcb_dri2_get_buffers_buffers_length (const xcb_dri2_get_buffers_reply_t *R );
00867
00868 xcb_dri2_dri2_buffer_iterator_t
00869 xcb_dri2_get_buffers_buffers_iterator (const xcb_dri2_get_buffers_reply_t *R );
00870
00885 xcb_dri2_get_buffers_reply_t *
00886 xcb_dri2_get_buffers_reply (xcb_connection_t *c ,
00887 xcb_dri2_get_buffers_cookie_t cookie ,
00888 xcb_generic_error_t **e );
00889
00898 xcb_dri2_copy_region_cookie_t
00899 xcb_dri2_copy_region (xcb_connection_t *c ,
00900 xcb_drawable_t drawable ,
00901 uint32_t region ,
00902 uint32_t dest ,
00903 uint32_t src );
00904
00916 xcb_dri2_copy_region_cookie_t
00917 xcb_dri2_copy_region_unchecked (xcb_connection_t *c ,
00918 xcb_drawable_t drawable ,
00919 uint32_t region ,
00920 uint32_t dest ,
00921 uint32_t src );
00922
00937 xcb_dri2_copy_region_reply_t *
00938 xcb_dri2_copy_region_reply (xcb_connection_t *c ,
00939 xcb_dri2_copy_region_cookie_t cookie ,
00940 xcb_generic_error_t **e );
00941
00942 int
00943 xcb_dri2_get_buffers_with_format_sizeof (const void *_buffer ,
00944 uint32_t attachments_len );
00945
00954 xcb_dri2_get_buffers_with_format_cookie_t
00955 xcb_dri2_get_buffers_with_format (xcb_connection_t *c ,
00956 xcb_drawable_t drawable ,
00957 uint32_t count ,
00958 uint32_t attachments_len ,
00959 const xcb_dri2_attach_format_t *attachments );
00960
00972 xcb_dri2_get_buffers_with_format_cookie_t
00973 xcb_dri2_get_buffers_with_format_unchecked (xcb_connection_t *c ,
00974 xcb_drawable_t drawable ,
00975 uint32_t count ,
00976 uint32_t attachments_len ,
00977 const xcb_dri2_attach_format_t *attachments );
00978
00979 xcb_dri2_dri2_buffer_t *
00980 xcb_dri2_get_buffers_with_format_buffers (const xcb_dri2_get_buffers_with_format_reply_t *R );
00981
00982 int
00983 xcb_dri2_get_buffers_with_format_buffers_length (const xcb_dri2_get_buffers_with_format_reply_t *R );
00984
00985 xcb_dri2_dri2_buffer_iterator_t
00986 xcb_dri2_get_buffers_with_format_buffers_iterator (const xcb_dri2_get_buffers_with_format_reply_t *R );
00987
01002 xcb_dri2_get_buffers_with_format_reply_t *
01003 xcb_dri2_get_buffers_with_format_reply (xcb_connection_t *c ,
01004 xcb_dri2_get_buffers_with_format_cookie_t cookie ,
01005 xcb_generic_error_t **e );
01006
01015 xcb_dri2_swap_buffers_cookie_t
01016 xcb_dri2_swap_buffers (xcb_connection_t *c ,
01017 xcb_drawable_t drawable ,
01018 uint32_t target_msc_hi ,
01019 uint32_t target_msc_lo ,
01020 uint32_t divisor_hi ,
01021 uint32_t divisor_lo ,
01022 uint32_t remainder_hi ,
01023 uint32_t remainder_lo );
01024
01036 xcb_dri2_swap_buffers_cookie_t
01037 xcb_dri2_swap_buffers_unchecked (xcb_connection_t *c ,
01038 xcb_drawable_t drawable ,
01039 uint32_t target_msc_hi ,
01040 uint32_t target_msc_lo ,
01041 uint32_t divisor_hi ,
01042 uint32_t divisor_lo ,
01043 uint32_t remainder_hi ,
01044 uint32_t remainder_lo );
01045
01060 xcb_dri2_swap_buffers_reply_t *
01061 xcb_dri2_swap_buffers_reply (xcb_connection_t *c ,
01062 xcb_dri2_swap_buffers_cookie_t cookie ,
01063 xcb_generic_error_t **e );
01064
01073 xcb_dri2_get_msc_cookie_t
01074 xcb_dri2_get_msc (xcb_connection_t *c ,
01075 xcb_drawable_t drawable );
01076
01088 xcb_dri2_get_msc_cookie_t
01089 xcb_dri2_get_msc_unchecked (xcb_connection_t *c ,
01090 xcb_drawable_t drawable );
01091
01106 xcb_dri2_get_msc_reply_t *
01107 xcb_dri2_get_msc_reply (xcb_connection_t *c ,
01108 xcb_dri2_get_msc_cookie_t cookie ,
01109 xcb_generic_error_t **e );
01110
01119 xcb_dri2_wait_msc_cookie_t
01120 xcb_dri2_wait_msc (xcb_connection_t *c ,
01121 xcb_drawable_t drawable ,
01122 uint32_t target_msc_hi ,
01123 uint32_t target_msc_lo ,
01124 uint32_t divisor_hi ,
01125 uint32_t divisor_lo ,
01126 uint32_t remainder_hi ,
01127 uint32_t remainder_lo );
01128
01140 xcb_dri2_wait_msc_cookie_t
01141 xcb_dri2_wait_msc_unchecked (xcb_connection_t *c ,
01142 xcb_drawable_t drawable ,
01143 uint32_t target_msc_hi ,
01144 uint32_t target_msc_lo ,
01145 uint32_t divisor_hi ,
01146 uint32_t divisor_lo ,
01147 uint32_t remainder_hi ,
01148 uint32_t remainder_lo );
01149
01164 xcb_dri2_wait_msc_reply_t *
01165 xcb_dri2_wait_msc_reply (xcb_connection_t *c ,
01166 xcb_dri2_wait_msc_cookie_t cookie ,
01167 xcb_generic_error_t **e );
01168
01177 xcb_dri2_wait_sbc_cookie_t
01178 xcb_dri2_wait_sbc (xcb_connection_t *c ,
01179 xcb_drawable_t drawable ,
01180 uint32_t target_sbc_hi ,
01181 uint32_t target_sbc_lo );
01182
01194 xcb_dri2_wait_sbc_cookie_t
01195 xcb_dri2_wait_sbc_unchecked (xcb_connection_t *c ,
01196 xcb_drawable_t drawable ,
01197 uint32_t target_sbc_hi ,
01198 uint32_t target_sbc_lo );
01199
01214 xcb_dri2_wait_sbc_reply_t *
01215 xcb_dri2_wait_sbc_reply (xcb_connection_t *c ,
01216 xcb_dri2_wait_sbc_cookie_t cookie ,
01217 xcb_generic_error_t **e );
01218
01230 xcb_void_cookie_t
01231 xcb_dri2_swap_interval_checked (xcb_connection_t *c ,
01232 xcb_drawable_t drawable ,
01233 uint32_t interval );
01234
01243 xcb_void_cookie_t
01244 xcb_dri2_swap_interval (xcb_connection_t *c ,
01245 xcb_drawable_t drawable ,
01246 uint32_t interval );
01247
01256 xcb_dri2_get_param_cookie_t
01257 xcb_dri2_get_param (xcb_connection_t *c ,
01258 xcb_drawable_t drawable ,
01259 uint32_t param );
01260
01272 xcb_dri2_get_param_cookie_t
01273 xcb_dri2_get_param_unchecked (xcb_connection_t *c ,
01274 xcb_drawable_t drawable ,
01275 uint32_t param );
01276
01291 xcb_dri2_get_param_reply_t *
01292 xcb_dri2_get_param_reply (xcb_connection_t *c ,
01293 xcb_dri2_get_param_cookie_t cookie ,
01294 xcb_generic_error_t **e );
01295
01296
01297 #ifdef __cplusplus
01298 }
01299 #endif
01300
01301 #endif
01302