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,
00029 XCB_DRI2_ATTACHMENT_BUFFER_BACK_LEFT,
00030 XCB_DRI2_ATTACHMENT_BUFFER_FRONT_RIGHT,
00031 XCB_DRI2_ATTACHMENT_BUFFER_BACK_RIGHT,
00032 XCB_DRI2_ATTACHMENT_BUFFER_DEPTH,
00033 XCB_DRI2_ATTACHMENT_BUFFER_STENCIL,
00034 XCB_DRI2_ATTACHMENT_BUFFER_ACCUM,
00035 XCB_DRI2_ATTACHMENT_BUFFER_FAKE_FRONT_LEFT,
00036 XCB_DRI2_ATTACHMENT_BUFFER_FAKE_FRONT_RIGHT,
00037 XCB_DRI2_ATTACHMENT_BUFFER_DEPTH_STENCIL,
00038 XCB_DRI2_ATTACHMENT_BUFFER_HIZ
00039 } xcb_dri2_attachment_t;
00040
00041 typedef enum xcb_dri2_driver_type_t {
00042 XCB_DRI2_DRIVER_TYPE_DRI,
00043 XCB_DRI2_DRIVER_TYPE_VDPAU
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
00560
00561
00562
00563
00564
00565
00566
00567
00568
00569 void
00570 xcb_dri2_dri2_buffer_next (xcb_dri2_dri2_buffer_iterator_t *i );
00571
00582
00583
00584
00585
00586
00587
00588
00589
00590
00591 xcb_generic_iterator_t
00592 xcb_dri2_dri2_buffer_end (xcb_dri2_dri2_buffer_iterator_t i );
00593
00603
00604
00605
00606
00607
00608
00609
00610
00611
00612 void
00613 xcb_dri2_attach_format_next (xcb_dri2_attach_format_iterator_t *i );
00614
00625
00626
00627
00628
00629
00630
00631
00632
00633
00634 xcb_generic_iterator_t
00635 xcb_dri2_attach_format_end (xcb_dri2_attach_format_iterator_t i );
00636
00646
00647
00648
00649
00650
00651
00652
00653
00654
00655
00656
00657 xcb_dri2_query_version_cookie_t
00658 xcb_dri2_query_version (xcb_connection_t *c ,
00659 uint32_t major_version ,
00660 uint32_t minor_version );
00661
00674
00675
00676
00677
00678
00679
00680
00681
00682
00683
00684
00685 xcb_dri2_query_version_cookie_t
00686 xcb_dri2_query_version_unchecked (xcb_connection_t *c ,
00687 uint32_t major_version ,
00688 uint32_t minor_version );
00689
00705
00706
00707
00708
00709
00710
00711
00712
00713
00714
00715
00716 xcb_dri2_query_version_reply_t *
00717 xcb_dri2_query_version_reply (xcb_connection_t *c ,
00718 xcb_dri2_query_version_cookie_t cookie ,
00719 xcb_generic_error_t **e );
00720
00721 int
00722 xcb_dri2_connect_sizeof (const void *_buffer );
00723
00733
00734
00735
00736
00737
00738
00739
00740
00741
00742
00743
00744 xcb_dri2_connect_cookie_t
00745 xcb_dri2_connect (xcb_connection_t *c ,
00746 xcb_window_t window ,
00747 uint32_t driver_type );
00748
00761
00762
00763
00764
00765
00766
00767
00768
00769
00770
00771
00772 xcb_dri2_connect_cookie_t
00773 xcb_dri2_connect_unchecked (xcb_connection_t *c ,
00774 xcb_window_t window ,
00775 uint32_t driver_type );
00776
00777
00778
00779
00780
00781
00782
00783
00784
00785
00786
00787 char *
00788 xcb_dri2_connect_driver_name (const xcb_dri2_connect_reply_t *R );
00789
00790
00791
00792
00793
00794
00795
00796
00797
00798
00799
00800 int
00801 xcb_dri2_connect_driver_name_length (const xcb_dri2_connect_reply_t *R );
00802
00803
00804
00805
00806
00807
00808
00809
00810
00811
00812
00813 xcb_generic_iterator_t
00814 xcb_dri2_connect_driver_name_end (const xcb_dri2_connect_reply_t *R );
00815
00816
00817
00818
00819
00820
00821
00822
00823
00824
00825
00826 void *
00827 xcb_dri2_connect_alignment_pad (const xcb_dri2_connect_reply_t *R );
00828
00829
00830
00831
00832
00833
00834
00835
00836
00837
00838
00839 int
00840 xcb_dri2_connect_alignment_pad_length (const xcb_dri2_connect_reply_t *R );
00841
00842
00843
00844
00845
00846
00847
00848
00849
00850
00851
00852 xcb_generic_iterator_t
00853 xcb_dri2_connect_alignment_pad_end (const xcb_dri2_connect_reply_t *R );
00854
00855
00856
00857
00858
00859
00860
00861
00862
00863
00864
00865 char *
00866 xcb_dri2_connect_device_name (const xcb_dri2_connect_reply_t *R );
00867
00868
00869
00870
00871
00872
00873
00874
00875
00876
00877
00878 int
00879 xcb_dri2_connect_device_name_length (const xcb_dri2_connect_reply_t *R );
00880
00881
00882
00883
00884
00885
00886
00887
00888
00889
00890
00891 xcb_generic_iterator_t
00892 xcb_dri2_connect_device_name_end (const xcb_dri2_connect_reply_t *R );
00893
00909
00910
00911
00912
00913
00914
00915
00916
00917
00918
00919
00920 xcb_dri2_connect_reply_t *
00921 xcb_dri2_connect_reply (xcb_connection_t *c ,
00922 xcb_dri2_connect_cookie_t cookie ,
00923 xcb_generic_error_t **e );
00924
00934
00935
00936
00937
00938
00939
00940
00941
00942
00943
00944
00945 xcb_dri2_authenticate_cookie_t
00946 xcb_dri2_authenticate (xcb_connection_t *c ,
00947 xcb_window_t window ,
00948 uint32_t magic );
00949
00962
00963
00964
00965
00966
00967
00968
00969
00970
00971
00972
00973 xcb_dri2_authenticate_cookie_t
00974 xcb_dri2_authenticate_unchecked (xcb_connection_t *c ,
00975 xcb_window_t window ,
00976 uint32_t magic );
00977
00993
00994
00995
00996
00997
00998
00999
01000
01001
01002
01003
01004 xcb_dri2_authenticate_reply_t *
01005 xcb_dri2_authenticate_reply (xcb_connection_t *c ,
01006 xcb_dri2_authenticate_cookie_t cookie ,
01007 xcb_generic_error_t **e );
01008
01021
01022
01023
01024
01025
01026
01027
01028
01029
01030
01031 xcb_void_cookie_t
01032 xcb_dri2_create_drawable_checked (xcb_connection_t *c ,
01033 xcb_drawable_t drawable );
01034
01044
01045
01046
01047
01048
01049
01050
01051
01052
01053
01054 xcb_void_cookie_t
01055 xcb_dri2_create_drawable (xcb_connection_t *c ,
01056 xcb_drawable_t drawable );
01057
01070
01071
01072
01073
01074
01075
01076
01077
01078
01079
01080 xcb_void_cookie_t
01081 xcb_dri2_destroy_drawable_checked (xcb_connection_t *c ,
01082 xcb_drawable_t drawable );
01083
01093
01094
01095
01096
01097
01098
01099
01100
01101
01102
01103 xcb_void_cookie_t
01104 xcb_dri2_destroy_drawable (xcb_connection_t *c ,
01105 xcb_drawable_t drawable );
01106
01107 int
01108 xcb_dri2_get_buffers_sizeof (const void *_buffer ,
01109 uint32_t attachments_len );
01110
01120
01121
01122
01123
01124
01125
01126
01127
01128
01129
01130
01131
01132
01133 xcb_dri2_get_buffers_cookie_t
01134 xcb_dri2_get_buffers (xcb_connection_t *c ,
01135 xcb_drawable_t drawable ,
01136 uint32_t count ,
01137 uint32_t attachments_len ,
01138 const uint32_t *attachments );
01139
01152
01153
01154
01155
01156
01157
01158
01159
01160
01161
01162
01163
01164
01165 xcb_dri2_get_buffers_cookie_t
01166 xcb_dri2_get_buffers_unchecked (xcb_connection_t *c ,
01167 xcb_drawable_t drawable ,
01168 uint32_t count ,
01169 uint32_t attachments_len ,
01170 const uint32_t *attachments );
01171
01172
01173
01174
01175
01176
01177
01178
01179
01180
01181
01182 xcb_dri2_dri2_buffer_t *
01183 xcb_dri2_get_buffers_buffers (const xcb_dri2_get_buffers_reply_t *R );
01184
01185
01186
01187
01188
01189
01190
01191
01192
01193
01194
01195 int
01196 xcb_dri2_get_buffers_buffers_length (const xcb_dri2_get_buffers_reply_t *R );
01197
01198
01199
01200
01201
01202
01203
01204
01205
01206
01207
01208 xcb_dri2_dri2_buffer_iterator_t
01209 xcb_dri2_get_buffers_buffers_iterator (const xcb_dri2_get_buffers_reply_t *R );
01210
01226
01227
01228
01229
01230
01231
01232
01233
01234
01235
01236
01237 xcb_dri2_get_buffers_reply_t *
01238 xcb_dri2_get_buffers_reply (xcb_connection_t *c ,
01239 xcb_dri2_get_buffers_cookie_t cookie ,
01240 xcb_generic_error_t **e );
01241
01251
01252
01253
01254
01255
01256
01257
01258
01259
01260
01261
01262
01263
01264 xcb_dri2_copy_region_cookie_t
01265 xcb_dri2_copy_region (xcb_connection_t *c ,
01266 xcb_drawable_t drawable ,
01267 uint32_t region ,
01268 uint32_t dest ,
01269 uint32_t src );
01270
01283
01284
01285
01286
01287
01288
01289
01290
01291
01292
01293
01294
01295
01296 xcb_dri2_copy_region_cookie_t
01297 xcb_dri2_copy_region_unchecked (xcb_connection_t *c ,
01298 xcb_drawable_t drawable ,
01299 uint32_t region ,
01300 uint32_t dest ,
01301 uint32_t src );
01302
01318
01319
01320
01321
01322
01323
01324
01325
01326
01327
01328
01329 xcb_dri2_copy_region_reply_t *
01330 xcb_dri2_copy_region_reply (xcb_connection_t *c ,
01331 xcb_dri2_copy_region_cookie_t cookie ,
01332 xcb_generic_error_t **e );
01333
01334 int
01335 xcb_dri2_get_buffers_with_format_sizeof (const void *_buffer ,
01336 uint32_t attachments_len );
01337
01347
01348
01349
01350
01351
01352
01353
01354
01355
01356
01357
01358
01359
01360 xcb_dri2_get_buffers_with_format_cookie_t
01361 xcb_dri2_get_buffers_with_format (xcb_connection_t *c ,
01362 xcb_drawable_t drawable ,
01363 uint32_t count ,
01364 uint32_t attachments_len ,
01365 const xcb_dri2_attach_format_t *attachments );
01366
01379
01380
01381
01382
01383
01384
01385
01386
01387
01388
01389
01390
01391
01392 xcb_dri2_get_buffers_with_format_cookie_t
01393 xcb_dri2_get_buffers_with_format_unchecked (xcb_connection_t *c ,
01394 xcb_drawable_t drawable ,
01395 uint32_t count ,
01396 uint32_t attachments_len ,
01397 const xcb_dri2_attach_format_t *attachments );
01398
01399
01400
01401
01402
01403
01404
01405
01406
01407
01408
01409 xcb_dri2_dri2_buffer_t *
01410 xcb_dri2_get_buffers_with_format_buffers (const xcb_dri2_get_buffers_with_format_reply_t *R );
01411
01412
01413
01414
01415
01416
01417
01418
01419
01420
01421
01422 int
01423 xcb_dri2_get_buffers_with_format_buffers_length (const xcb_dri2_get_buffers_with_format_reply_t *R );
01424
01425
01426
01427
01428
01429
01430
01431
01432
01433
01434
01435 xcb_dri2_dri2_buffer_iterator_t
01436 xcb_dri2_get_buffers_with_format_buffers_iterator (const xcb_dri2_get_buffers_with_format_reply_t *R );
01437
01453
01454
01455
01456
01457
01458
01459
01460
01461
01462
01463
01464 xcb_dri2_get_buffers_with_format_reply_t *
01465 xcb_dri2_get_buffers_with_format_reply (xcb_connection_t *c ,
01466 xcb_dri2_get_buffers_with_format_cookie_t cookie ,
01467 xcb_generic_error_t **e );
01468
01478
01479
01480
01481
01482
01483
01484
01485
01486
01487
01488
01489
01490
01491
01492
01493
01494 xcb_dri2_swap_buffers_cookie_t
01495 xcb_dri2_swap_buffers (xcb_connection_t *c ,
01496 xcb_drawable_t drawable ,
01497 uint32_t target_msc_hi ,
01498 uint32_t target_msc_lo ,
01499 uint32_t divisor_hi ,
01500 uint32_t divisor_lo ,
01501 uint32_t remainder_hi ,
01502 uint32_t remainder_lo );
01503
01516
01517
01518
01519
01520
01521
01522
01523
01524
01525
01526
01527
01528
01529
01530
01531
01532 xcb_dri2_swap_buffers_cookie_t
01533 xcb_dri2_swap_buffers_unchecked (xcb_connection_t *c ,
01534 xcb_drawable_t drawable ,
01535 uint32_t target_msc_hi ,
01536 uint32_t target_msc_lo ,
01537 uint32_t divisor_hi ,
01538 uint32_t divisor_lo ,
01539 uint32_t remainder_hi ,
01540 uint32_t remainder_lo );
01541
01557
01558
01559
01560
01561
01562
01563
01564
01565
01566
01567
01568 xcb_dri2_swap_buffers_reply_t *
01569 xcb_dri2_swap_buffers_reply (xcb_connection_t *c ,
01570 xcb_dri2_swap_buffers_cookie_t cookie ,
01571 xcb_generic_error_t **e );
01572
01582
01583
01584
01585
01586
01587
01588
01589
01590
01591
01592 xcb_dri2_get_msc_cookie_t
01593 xcb_dri2_get_msc (xcb_connection_t *c ,
01594 xcb_drawable_t drawable );
01595
01608
01609
01610
01611
01612
01613
01614
01615
01616
01617
01618 xcb_dri2_get_msc_cookie_t
01619 xcb_dri2_get_msc_unchecked (xcb_connection_t *c ,
01620 xcb_drawable_t drawable );
01621
01637
01638
01639
01640
01641
01642
01643
01644
01645
01646
01647
01648 xcb_dri2_get_msc_reply_t *
01649 xcb_dri2_get_msc_reply (xcb_connection_t *c ,
01650 xcb_dri2_get_msc_cookie_t cookie ,
01651 xcb_generic_error_t **e );
01652
01662
01663
01664
01665
01666
01667
01668
01669
01670
01671
01672
01673
01674
01675
01676
01677
01678 xcb_dri2_wait_msc_cookie_t
01679 xcb_dri2_wait_msc (xcb_connection_t *c ,
01680 xcb_drawable_t drawable ,
01681 uint32_t target_msc_hi ,
01682 uint32_t target_msc_lo ,
01683 uint32_t divisor_hi ,
01684 uint32_t divisor_lo ,
01685 uint32_t remainder_hi ,
01686 uint32_t remainder_lo );
01687
01700
01701
01702
01703
01704
01705
01706
01707
01708
01709
01710
01711
01712
01713
01714
01715
01716 xcb_dri2_wait_msc_cookie_t
01717 xcb_dri2_wait_msc_unchecked (xcb_connection_t *c ,
01718 xcb_drawable_t drawable ,
01719 uint32_t target_msc_hi ,
01720 uint32_t target_msc_lo ,
01721 uint32_t divisor_hi ,
01722 uint32_t divisor_lo ,
01723 uint32_t remainder_hi ,
01724 uint32_t remainder_lo );
01725
01741
01742
01743
01744
01745
01746
01747
01748
01749
01750
01751
01752 xcb_dri2_wait_msc_reply_t *
01753 xcb_dri2_wait_msc_reply (xcb_connection_t *c ,
01754 xcb_dri2_wait_msc_cookie_t cookie ,
01755 xcb_generic_error_t **e );
01756
01766
01767
01768
01769
01770
01771
01772
01773
01774
01775
01776
01777
01778 xcb_dri2_wait_sbc_cookie_t
01779 xcb_dri2_wait_sbc (xcb_connection_t *c ,
01780 xcb_drawable_t drawable ,
01781 uint32_t target_sbc_hi ,
01782 uint32_t target_sbc_lo );
01783
01796
01797
01798
01799
01800
01801
01802
01803
01804
01805
01806
01807
01808 xcb_dri2_wait_sbc_cookie_t
01809 xcb_dri2_wait_sbc_unchecked (xcb_connection_t *c ,
01810 xcb_drawable_t drawable ,
01811 uint32_t target_sbc_hi ,
01812 uint32_t target_sbc_lo );
01813
01829
01830
01831
01832
01833
01834
01835
01836
01837
01838
01839
01840 xcb_dri2_wait_sbc_reply_t *
01841 xcb_dri2_wait_sbc_reply (xcb_connection_t *c ,
01842 xcb_dri2_wait_sbc_cookie_t cookie ,
01843 xcb_generic_error_t **e );
01844
01857
01858
01859
01860
01861
01862
01863
01864
01865
01866
01867
01868 xcb_void_cookie_t
01869 xcb_dri2_swap_interval_checked (xcb_connection_t *c ,
01870 xcb_drawable_t drawable ,
01871 uint32_t interval );
01872
01882
01883
01884
01885
01886
01887
01888
01889
01890
01891
01892
01893 xcb_void_cookie_t
01894 xcb_dri2_swap_interval (xcb_connection_t *c ,
01895 xcb_drawable_t drawable ,
01896 uint32_t interval );
01897
01907
01908
01909
01910
01911
01912
01913
01914
01915
01916
01917
01918 xcb_dri2_get_param_cookie_t
01919 xcb_dri2_get_param (xcb_connection_t *c ,
01920 xcb_drawable_t drawable ,
01921 uint32_t param );
01922
01935
01936
01937
01938
01939
01940
01941
01942
01943
01944
01945
01946 xcb_dri2_get_param_cookie_t
01947 xcb_dri2_get_param_unchecked (xcb_connection_t *c ,
01948 xcb_drawable_t drawable ,
01949 uint32_t param );
01950
01966
01967
01968
01969
01970
01971
01972
01973
01974
01975
01976
01977 xcb_dri2_get_param_reply_t *
01978 xcb_dri2_get_param_reply (xcb_connection_t *c ,
01979 xcb_dri2_get_param_cookie_t cookie ,
01980 xcb_generic_error_t **e );
01981
01982
01983 #ifdef __cplusplus
01984 }
01985 #endif
01986
01987 #endif
01988