File indexing completed on 2025-01-18 10:14:42
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #ifndef __XF86DRI_H
0013 #define __XF86DRI_H
0014
0015 #include "xcb.h"
0016
0017 #ifdef __cplusplus
0018 extern "C" {
0019 #endif
0020
0021 #define XCB_XF86DRI_MAJOR_VERSION 4
0022 #define XCB_XF86DRI_MINOR_VERSION 1
0023
0024 extern xcb_extension_t xcb_xf86dri_id;
0025
0026
0027
0028
0029 typedef struct xcb_xf86dri_drm_clip_rect_t {
0030 int16_t x1;
0031 int16_t y1;
0032 int16_t x2;
0033 int16_t x3;
0034 } xcb_xf86dri_drm_clip_rect_t;
0035
0036
0037
0038
0039 typedef struct xcb_xf86dri_drm_clip_rect_iterator_t {
0040 xcb_xf86dri_drm_clip_rect_t *data;
0041 int rem;
0042 int index;
0043 } xcb_xf86dri_drm_clip_rect_iterator_t;
0044
0045
0046
0047
0048 typedef struct xcb_xf86dri_query_version_cookie_t {
0049 unsigned int sequence;
0050 } xcb_xf86dri_query_version_cookie_t;
0051
0052
0053 #define XCB_XF86DRI_QUERY_VERSION 0
0054
0055
0056
0057
0058 typedef struct xcb_xf86dri_query_version_request_t {
0059 uint8_t major_opcode;
0060 uint8_t minor_opcode;
0061 uint16_t length;
0062 } xcb_xf86dri_query_version_request_t;
0063
0064
0065
0066
0067 typedef struct xcb_xf86dri_query_version_reply_t {
0068 uint8_t response_type;
0069 uint8_t pad0;
0070 uint16_t sequence;
0071 uint32_t length;
0072 uint16_t dri_major_version;
0073 uint16_t dri_minor_version;
0074 uint32_t dri_minor_patch;
0075 } xcb_xf86dri_query_version_reply_t;
0076
0077
0078
0079
0080 typedef struct xcb_xf86dri_query_direct_rendering_capable_cookie_t {
0081 unsigned int sequence;
0082 } xcb_xf86dri_query_direct_rendering_capable_cookie_t;
0083
0084
0085 #define XCB_XF86DRI_QUERY_DIRECT_RENDERING_CAPABLE 1
0086
0087
0088
0089
0090 typedef struct xcb_xf86dri_query_direct_rendering_capable_request_t {
0091 uint8_t major_opcode;
0092 uint8_t minor_opcode;
0093 uint16_t length;
0094 uint32_t screen;
0095 } xcb_xf86dri_query_direct_rendering_capable_request_t;
0096
0097
0098
0099
0100 typedef struct xcb_xf86dri_query_direct_rendering_capable_reply_t {
0101 uint8_t response_type;
0102 uint8_t pad0;
0103 uint16_t sequence;
0104 uint32_t length;
0105 uint8_t is_capable;
0106 } xcb_xf86dri_query_direct_rendering_capable_reply_t;
0107
0108
0109
0110
0111 typedef struct xcb_xf86dri_open_connection_cookie_t {
0112 unsigned int sequence;
0113 } xcb_xf86dri_open_connection_cookie_t;
0114
0115
0116 #define XCB_XF86DRI_OPEN_CONNECTION 2
0117
0118
0119
0120
0121 typedef struct xcb_xf86dri_open_connection_request_t {
0122 uint8_t major_opcode;
0123 uint8_t minor_opcode;
0124 uint16_t length;
0125 uint32_t screen;
0126 } xcb_xf86dri_open_connection_request_t;
0127
0128
0129
0130
0131 typedef struct xcb_xf86dri_open_connection_reply_t {
0132 uint8_t response_type;
0133 uint8_t pad0;
0134 uint16_t sequence;
0135 uint32_t length;
0136 uint32_t sarea_handle_low;
0137 uint32_t sarea_handle_high;
0138 uint32_t bus_id_len;
0139 uint8_t pad1[12];
0140 } xcb_xf86dri_open_connection_reply_t;
0141
0142
0143 #define XCB_XF86DRI_CLOSE_CONNECTION 3
0144
0145
0146
0147
0148 typedef struct xcb_xf86dri_close_connection_request_t {
0149 uint8_t major_opcode;
0150 uint8_t minor_opcode;
0151 uint16_t length;
0152 uint32_t screen;
0153 } xcb_xf86dri_close_connection_request_t;
0154
0155
0156
0157
0158 typedef struct xcb_xf86dri_get_client_driver_name_cookie_t {
0159 unsigned int sequence;
0160 } xcb_xf86dri_get_client_driver_name_cookie_t;
0161
0162
0163 #define XCB_XF86DRI_GET_CLIENT_DRIVER_NAME 4
0164
0165
0166
0167
0168 typedef struct xcb_xf86dri_get_client_driver_name_request_t {
0169 uint8_t major_opcode;
0170 uint8_t minor_opcode;
0171 uint16_t length;
0172 uint32_t screen;
0173 } xcb_xf86dri_get_client_driver_name_request_t;
0174
0175
0176
0177
0178 typedef struct xcb_xf86dri_get_client_driver_name_reply_t {
0179 uint8_t response_type;
0180 uint8_t pad0;
0181 uint16_t sequence;
0182 uint32_t length;
0183 uint32_t client_driver_major_version;
0184 uint32_t client_driver_minor_version;
0185 uint32_t client_driver_patch_version;
0186 uint32_t client_driver_name_len;
0187 uint8_t pad1[8];
0188 } xcb_xf86dri_get_client_driver_name_reply_t;
0189
0190
0191
0192
0193 typedef struct xcb_xf86dri_create_context_cookie_t {
0194 unsigned int sequence;
0195 } xcb_xf86dri_create_context_cookie_t;
0196
0197
0198 #define XCB_XF86DRI_CREATE_CONTEXT 5
0199
0200
0201
0202
0203 typedef struct xcb_xf86dri_create_context_request_t {
0204 uint8_t major_opcode;
0205 uint8_t minor_opcode;
0206 uint16_t length;
0207 uint32_t screen;
0208 uint32_t visual;
0209 uint32_t context;
0210 } xcb_xf86dri_create_context_request_t;
0211
0212
0213
0214
0215 typedef struct xcb_xf86dri_create_context_reply_t {
0216 uint8_t response_type;
0217 uint8_t pad0;
0218 uint16_t sequence;
0219 uint32_t length;
0220 uint32_t hw_context;
0221 } xcb_xf86dri_create_context_reply_t;
0222
0223
0224 #define XCB_XF86DRI_DESTROY_CONTEXT 6
0225
0226
0227
0228
0229 typedef struct xcb_xf86dri_destroy_context_request_t {
0230 uint8_t major_opcode;
0231 uint8_t minor_opcode;
0232 uint16_t length;
0233 uint32_t screen;
0234 uint32_t context;
0235 } xcb_xf86dri_destroy_context_request_t;
0236
0237
0238
0239
0240 typedef struct xcb_xf86dri_create_drawable_cookie_t {
0241 unsigned int sequence;
0242 } xcb_xf86dri_create_drawable_cookie_t;
0243
0244
0245 #define XCB_XF86DRI_CREATE_DRAWABLE 7
0246
0247
0248
0249
0250 typedef struct xcb_xf86dri_create_drawable_request_t {
0251 uint8_t major_opcode;
0252 uint8_t minor_opcode;
0253 uint16_t length;
0254 uint32_t screen;
0255 uint32_t drawable;
0256 } xcb_xf86dri_create_drawable_request_t;
0257
0258
0259
0260
0261 typedef struct xcb_xf86dri_create_drawable_reply_t {
0262 uint8_t response_type;
0263 uint8_t pad0;
0264 uint16_t sequence;
0265 uint32_t length;
0266 uint32_t hw_drawable_handle;
0267 } xcb_xf86dri_create_drawable_reply_t;
0268
0269
0270 #define XCB_XF86DRI_DESTROY_DRAWABLE 8
0271
0272
0273
0274
0275 typedef struct xcb_xf86dri_destroy_drawable_request_t {
0276 uint8_t major_opcode;
0277 uint8_t minor_opcode;
0278 uint16_t length;
0279 uint32_t screen;
0280 uint32_t drawable;
0281 } xcb_xf86dri_destroy_drawable_request_t;
0282
0283
0284
0285
0286 typedef struct xcb_xf86dri_get_drawable_info_cookie_t {
0287 unsigned int sequence;
0288 } xcb_xf86dri_get_drawable_info_cookie_t;
0289
0290
0291 #define XCB_XF86DRI_GET_DRAWABLE_INFO 9
0292
0293
0294
0295
0296 typedef struct xcb_xf86dri_get_drawable_info_request_t {
0297 uint8_t major_opcode;
0298 uint8_t minor_opcode;
0299 uint16_t length;
0300 uint32_t screen;
0301 uint32_t drawable;
0302 } xcb_xf86dri_get_drawable_info_request_t;
0303
0304
0305
0306
0307 typedef struct xcb_xf86dri_get_drawable_info_reply_t {
0308 uint8_t response_type;
0309 uint8_t pad0;
0310 uint16_t sequence;
0311 uint32_t length;
0312 uint32_t drawable_table_index;
0313 uint32_t drawable_table_stamp;
0314 int16_t drawable_origin_X;
0315 int16_t drawable_origin_Y;
0316 int16_t drawable_size_W;
0317 int16_t drawable_size_H;
0318 uint32_t num_clip_rects;
0319 int16_t back_x;
0320 int16_t back_y;
0321 uint32_t num_back_clip_rects;
0322 } xcb_xf86dri_get_drawable_info_reply_t;
0323
0324
0325
0326
0327 typedef struct xcb_xf86dri_get_device_info_cookie_t {
0328 unsigned int sequence;
0329 } xcb_xf86dri_get_device_info_cookie_t;
0330
0331
0332 #define XCB_XF86DRI_GET_DEVICE_INFO 10
0333
0334
0335
0336
0337 typedef struct xcb_xf86dri_get_device_info_request_t {
0338 uint8_t major_opcode;
0339 uint8_t minor_opcode;
0340 uint16_t length;
0341 uint32_t screen;
0342 } xcb_xf86dri_get_device_info_request_t;
0343
0344
0345
0346
0347 typedef struct xcb_xf86dri_get_device_info_reply_t {
0348 uint8_t response_type;
0349 uint8_t pad0;
0350 uint16_t sequence;
0351 uint32_t length;
0352 uint32_t framebuffer_handle_low;
0353 uint32_t framebuffer_handle_high;
0354 uint32_t framebuffer_origin_offset;
0355 uint32_t framebuffer_size;
0356 uint32_t framebuffer_stride;
0357 uint32_t device_private_size;
0358 } xcb_xf86dri_get_device_info_reply_t;
0359
0360
0361
0362
0363 typedef struct xcb_xf86dri_auth_connection_cookie_t {
0364 unsigned int sequence;
0365 } xcb_xf86dri_auth_connection_cookie_t;
0366
0367
0368 #define XCB_XF86DRI_AUTH_CONNECTION 11
0369
0370
0371
0372
0373 typedef struct xcb_xf86dri_auth_connection_request_t {
0374 uint8_t major_opcode;
0375 uint8_t minor_opcode;
0376 uint16_t length;
0377 uint32_t screen;
0378 uint32_t magic;
0379 } xcb_xf86dri_auth_connection_request_t;
0380
0381
0382
0383
0384 typedef struct xcb_xf86dri_auth_connection_reply_t {
0385 uint8_t response_type;
0386 uint8_t pad0;
0387 uint16_t sequence;
0388 uint32_t length;
0389 uint32_t authenticated;
0390 } xcb_xf86dri_auth_connection_reply_t;
0391
0392
0393
0394
0395
0396
0397
0398
0399
0400 void
0401 xcb_xf86dri_drm_clip_rect_next (xcb_xf86dri_drm_clip_rect_iterator_t *i);
0402
0403
0404
0405
0406
0407
0408
0409
0410
0411
0412 xcb_generic_iterator_t
0413 xcb_xf86dri_drm_clip_rect_end (xcb_xf86dri_drm_clip_rect_iterator_t i);
0414
0415
0416
0417
0418
0419
0420
0421
0422
0423 xcb_xf86dri_query_version_cookie_t
0424 xcb_xf86dri_query_version (xcb_connection_t *c);
0425
0426
0427
0428
0429
0430
0431
0432
0433
0434
0435
0436
0437 xcb_xf86dri_query_version_cookie_t
0438 xcb_xf86dri_query_version_unchecked (xcb_connection_t *c);
0439
0440
0441
0442
0443
0444
0445
0446
0447
0448
0449
0450
0451
0452
0453
0454 xcb_xf86dri_query_version_reply_t *
0455 xcb_xf86dri_query_version_reply (xcb_connection_t *c,
0456 xcb_xf86dri_query_version_cookie_t cookie ,
0457 xcb_generic_error_t **e);
0458
0459
0460
0461
0462
0463
0464
0465
0466
0467 xcb_xf86dri_query_direct_rendering_capable_cookie_t
0468 xcb_xf86dri_query_direct_rendering_capable (xcb_connection_t *c,
0469 uint32_t screen);
0470
0471
0472
0473
0474
0475
0476
0477
0478
0479
0480
0481
0482 xcb_xf86dri_query_direct_rendering_capable_cookie_t
0483 xcb_xf86dri_query_direct_rendering_capable_unchecked (xcb_connection_t *c,
0484 uint32_t screen);
0485
0486
0487
0488
0489
0490
0491
0492
0493
0494
0495
0496
0497
0498
0499
0500 xcb_xf86dri_query_direct_rendering_capable_reply_t *
0501 xcb_xf86dri_query_direct_rendering_capable_reply (xcb_connection_t *c,
0502 xcb_xf86dri_query_direct_rendering_capable_cookie_t cookie ,
0503 xcb_generic_error_t **e);
0504
0505 int
0506 xcb_xf86dri_open_connection_sizeof (const void *_buffer);
0507
0508
0509
0510
0511
0512
0513
0514
0515
0516 xcb_xf86dri_open_connection_cookie_t
0517 xcb_xf86dri_open_connection (xcb_connection_t *c,
0518 uint32_t screen);
0519
0520
0521
0522
0523
0524
0525
0526
0527
0528
0529
0530
0531 xcb_xf86dri_open_connection_cookie_t
0532 xcb_xf86dri_open_connection_unchecked (xcb_connection_t *c,
0533 uint32_t screen);
0534
0535 char *
0536 xcb_xf86dri_open_connection_bus_id (const xcb_xf86dri_open_connection_reply_t *R);
0537
0538 int
0539 xcb_xf86dri_open_connection_bus_id_length (const xcb_xf86dri_open_connection_reply_t *R);
0540
0541 xcb_generic_iterator_t
0542 xcb_xf86dri_open_connection_bus_id_end (const xcb_xf86dri_open_connection_reply_t *R);
0543
0544
0545
0546
0547
0548
0549
0550
0551
0552
0553
0554
0555
0556
0557
0558 xcb_xf86dri_open_connection_reply_t *
0559 xcb_xf86dri_open_connection_reply (xcb_connection_t *c,
0560 xcb_xf86dri_open_connection_cookie_t cookie ,
0561 xcb_generic_error_t **e);
0562
0563
0564
0565
0566
0567
0568
0569
0570
0571
0572
0573
0574 xcb_void_cookie_t
0575 xcb_xf86dri_close_connection_checked (xcb_connection_t *c,
0576 uint32_t screen);
0577
0578
0579
0580
0581
0582
0583
0584
0585
0586 xcb_void_cookie_t
0587 xcb_xf86dri_close_connection (xcb_connection_t *c,
0588 uint32_t screen);
0589
0590 int
0591 xcb_xf86dri_get_client_driver_name_sizeof (const void *_buffer);
0592
0593
0594
0595
0596
0597
0598
0599
0600
0601 xcb_xf86dri_get_client_driver_name_cookie_t
0602 xcb_xf86dri_get_client_driver_name (xcb_connection_t *c,
0603 uint32_t screen);
0604
0605
0606
0607
0608
0609
0610
0611
0612
0613
0614
0615
0616 xcb_xf86dri_get_client_driver_name_cookie_t
0617 xcb_xf86dri_get_client_driver_name_unchecked (xcb_connection_t *c,
0618 uint32_t screen);
0619
0620 char *
0621 xcb_xf86dri_get_client_driver_name_client_driver_name (const xcb_xf86dri_get_client_driver_name_reply_t *R);
0622
0623 int
0624 xcb_xf86dri_get_client_driver_name_client_driver_name_length (const xcb_xf86dri_get_client_driver_name_reply_t *R);
0625
0626 xcb_generic_iterator_t
0627 xcb_xf86dri_get_client_driver_name_client_driver_name_end (const xcb_xf86dri_get_client_driver_name_reply_t *R);
0628
0629
0630
0631
0632
0633
0634
0635
0636
0637
0638
0639
0640
0641
0642
0643 xcb_xf86dri_get_client_driver_name_reply_t *
0644 xcb_xf86dri_get_client_driver_name_reply (xcb_connection_t *c,
0645 xcb_xf86dri_get_client_driver_name_cookie_t cookie ,
0646 xcb_generic_error_t **e);
0647
0648
0649
0650
0651
0652
0653
0654
0655
0656 xcb_xf86dri_create_context_cookie_t
0657 xcb_xf86dri_create_context (xcb_connection_t *c,
0658 uint32_t screen,
0659 uint32_t visual,
0660 uint32_t context);
0661
0662
0663
0664
0665
0666
0667
0668
0669
0670
0671
0672
0673 xcb_xf86dri_create_context_cookie_t
0674 xcb_xf86dri_create_context_unchecked (xcb_connection_t *c,
0675 uint32_t screen,
0676 uint32_t visual,
0677 uint32_t context);
0678
0679
0680
0681
0682
0683
0684
0685
0686
0687
0688
0689
0690
0691
0692
0693 xcb_xf86dri_create_context_reply_t *
0694 xcb_xf86dri_create_context_reply (xcb_connection_t *c,
0695 xcb_xf86dri_create_context_cookie_t cookie ,
0696 xcb_generic_error_t **e);
0697
0698
0699
0700
0701
0702
0703
0704
0705
0706
0707
0708
0709 xcb_void_cookie_t
0710 xcb_xf86dri_destroy_context_checked (xcb_connection_t *c,
0711 uint32_t screen,
0712 uint32_t context);
0713
0714
0715
0716
0717
0718
0719
0720
0721
0722 xcb_void_cookie_t
0723 xcb_xf86dri_destroy_context (xcb_connection_t *c,
0724 uint32_t screen,
0725 uint32_t context);
0726
0727
0728
0729
0730
0731
0732
0733
0734
0735 xcb_xf86dri_create_drawable_cookie_t
0736 xcb_xf86dri_create_drawable (xcb_connection_t *c,
0737 uint32_t screen,
0738 uint32_t drawable);
0739
0740
0741
0742
0743
0744
0745
0746
0747
0748
0749
0750
0751 xcb_xf86dri_create_drawable_cookie_t
0752 xcb_xf86dri_create_drawable_unchecked (xcb_connection_t *c,
0753 uint32_t screen,
0754 uint32_t drawable);
0755
0756
0757
0758
0759
0760
0761
0762
0763
0764
0765
0766
0767
0768
0769
0770 xcb_xf86dri_create_drawable_reply_t *
0771 xcb_xf86dri_create_drawable_reply (xcb_connection_t *c,
0772 xcb_xf86dri_create_drawable_cookie_t cookie ,
0773 xcb_generic_error_t **e);
0774
0775
0776
0777
0778
0779
0780
0781
0782
0783
0784
0785
0786 xcb_void_cookie_t
0787 xcb_xf86dri_destroy_drawable_checked (xcb_connection_t *c,
0788 uint32_t screen,
0789 uint32_t drawable);
0790
0791
0792
0793
0794
0795
0796
0797
0798
0799 xcb_void_cookie_t
0800 xcb_xf86dri_destroy_drawable (xcb_connection_t *c,
0801 uint32_t screen,
0802 uint32_t drawable);
0803
0804 int
0805 xcb_xf86dri_get_drawable_info_sizeof (const void *_buffer);
0806
0807
0808
0809
0810
0811
0812
0813
0814
0815 xcb_xf86dri_get_drawable_info_cookie_t
0816 xcb_xf86dri_get_drawable_info (xcb_connection_t *c,
0817 uint32_t screen,
0818 uint32_t drawable);
0819
0820
0821
0822
0823
0824
0825
0826
0827
0828
0829
0830
0831 xcb_xf86dri_get_drawable_info_cookie_t
0832 xcb_xf86dri_get_drawable_info_unchecked (xcb_connection_t *c,
0833 uint32_t screen,
0834 uint32_t drawable);
0835
0836 xcb_xf86dri_drm_clip_rect_t *
0837 xcb_xf86dri_get_drawable_info_clip_rects (const xcb_xf86dri_get_drawable_info_reply_t *R);
0838
0839 int
0840 xcb_xf86dri_get_drawable_info_clip_rects_length (const xcb_xf86dri_get_drawable_info_reply_t *R);
0841
0842 xcb_xf86dri_drm_clip_rect_iterator_t
0843 xcb_xf86dri_get_drawable_info_clip_rects_iterator (const xcb_xf86dri_get_drawable_info_reply_t *R);
0844
0845 xcb_xf86dri_drm_clip_rect_t *
0846 xcb_xf86dri_get_drawable_info_back_clip_rects (const xcb_xf86dri_get_drawable_info_reply_t *R);
0847
0848 int
0849 xcb_xf86dri_get_drawable_info_back_clip_rects_length (const xcb_xf86dri_get_drawable_info_reply_t *R);
0850
0851 xcb_xf86dri_drm_clip_rect_iterator_t
0852 xcb_xf86dri_get_drawable_info_back_clip_rects_iterator (const xcb_xf86dri_get_drawable_info_reply_t *R);
0853
0854
0855
0856
0857
0858
0859
0860
0861
0862
0863
0864
0865
0866
0867
0868 xcb_xf86dri_get_drawable_info_reply_t *
0869 xcb_xf86dri_get_drawable_info_reply (xcb_connection_t *c,
0870 xcb_xf86dri_get_drawable_info_cookie_t cookie ,
0871 xcb_generic_error_t **e);
0872
0873 int
0874 xcb_xf86dri_get_device_info_sizeof (const void *_buffer);
0875
0876
0877
0878
0879
0880
0881
0882
0883
0884 xcb_xf86dri_get_device_info_cookie_t
0885 xcb_xf86dri_get_device_info (xcb_connection_t *c,
0886 uint32_t screen);
0887
0888
0889
0890
0891
0892
0893
0894
0895
0896
0897
0898
0899 xcb_xf86dri_get_device_info_cookie_t
0900 xcb_xf86dri_get_device_info_unchecked (xcb_connection_t *c,
0901 uint32_t screen);
0902
0903 uint32_t *
0904 xcb_xf86dri_get_device_info_device_private (const xcb_xf86dri_get_device_info_reply_t *R);
0905
0906 int
0907 xcb_xf86dri_get_device_info_device_private_length (const xcb_xf86dri_get_device_info_reply_t *R);
0908
0909 xcb_generic_iterator_t
0910 xcb_xf86dri_get_device_info_device_private_end (const xcb_xf86dri_get_device_info_reply_t *R);
0911
0912
0913
0914
0915
0916
0917
0918
0919
0920
0921
0922
0923
0924
0925
0926 xcb_xf86dri_get_device_info_reply_t *
0927 xcb_xf86dri_get_device_info_reply (xcb_connection_t *c,
0928 xcb_xf86dri_get_device_info_cookie_t cookie ,
0929 xcb_generic_error_t **e);
0930
0931
0932
0933
0934
0935
0936
0937
0938
0939 xcb_xf86dri_auth_connection_cookie_t
0940 xcb_xf86dri_auth_connection (xcb_connection_t *c,
0941 uint32_t screen,
0942 uint32_t magic);
0943
0944
0945
0946
0947
0948
0949
0950
0951
0952
0953
0954
0955 xcb_xf86dri_auth_connection_cookie_t
0956 xcb_xf86dri_auth_connection_unchecked (xcb_connection_t *c,
0957 uint32_t screen,
0958 uint32_t magic);
0959
0960
0961
0962
0963
0964
0965
0966
0967
0968
0969
0970
0971
0972
0973
0974 xcb_xf86dri_auth_connection_reply_t *
0975 xcb_xf86dri_auth_connection_reply (xcb_connection_t *c,
0976 xcb_xf86dri_auth_connection_cookie_t cookie ,
0977 xcb_generic_error_t **e);
0978
0979
0980 #ifdef __cplusplus
0981 }
0982 #endif
0983
0984 #endif
0985
0986
0987
0988