Home | History | Annotate | Line # | Download | only in files
randr.h revision 1.4.2.1
      1 /*
      2  * This file generated automatically from randr.xml by c_client.py.
      3  * Edit at your peril.
      4  */
      5 
      6 /**
      7  * @defgroup XCB_RandR_API XCB RandR API
      8  * @brief RandR XCB Protocol Implementation.
      9  * @{
     10  **/
     11 
     12 #ifndef __RANDR_H
     13 #define __RANDR_H
     14 
     15 #include "xcb.h"
     16 #include "xproto.h"
     17 #include "render.h"
     18 
     19 #ifdef __cplusplus
     20 extern "C" {
     21 #endif
     22 
     23 #define XCB_RANDR_MAJOR_VERSION 1
     24 #define XCB_RANDR_MINOR_VERSION 5
     25 
     26 extern xcb_extension_t xcb_randr_id;
     27 
     28 typedef uint32_t xcb_randr_mode_t;
     29 
     30 /**
     31  * @brief xcb_randr_mode_iterator_t
     32  **/
     33 typedef struct xcb_randr_mode_iterator_t {
     34     xcb_randr_mode_t *data;
     35     int               rem;
     36     int               index;
     37 } xcb_randr_mode_iterator_t;
     38 
     39 typedef uint32_t xcb_randr_crtc_t;
     40 
     41 /**
     42  * @brief xcb_randr_crtc_iterator_t
     43  **/
     44 typedef struct xcb_randr_crtc_iterator_t {
     45     xcb_randr_crtc_t *data;
     46     int               rem;
     47     int               index;
     48 } xcb_randr_crtc_iterator_t;
     49 
     50 typedef uint32_t xcb_randr_output_t;
     51 
     52 /**
     53  * @brief xcb_randr_output_iterator_t
     54  **/
     55 typedef struct xcb_randr_output_iterator_t {
     56     xcb_randr_output_t *data;
     57     int                 rem;
     58     int                 index;
     59 } xcb_randr_output_iterator_t;
     60 
     61 typedef uint32_t xcb_randr_provider_t;
     62 
     63 /**
     64  * @brief xcb_randr_provider_iterator_t
     65  **/
     66 typedef struct xcb_randr_provider_iterator_t {
     67     xcb_randr_provider_t *data;
     68     int                   rem;
     69     int                   index;
     70 } xcb_randr_provider_iterator_t;
     71 
     72 /** Opcode for xcb_randr_bad_output. */
     73 #define XCB_RANDR_BAD_OUTPUT 0
     74 
     75 /**
     76  * @brief xcb_randr_bad_output_error_t
     77  **/
     78 typedef struct xcb_randr_bad_output_error_t {
     79     uint8_t  response_type;
     80     uint8_t  error_code;
     81     uint16_t sequence;
     82 } xcb_randr_bad_output_error_t;
     83 
     84 /** Opcode for xcb_randr_bad_crtc. */
     85 #define XCB_RANDR_BAD_CRTC 1
     86 
     87 /**
     88  * @brief xcb_randr_bad_crtc_error_t
     89  **/
     90 typedef struct xcb_randr_bad_crtc_error_t {
     91     uint8_t  response_type;
     92     uint8_t  error_code;
     93     uint16_t sequence;
     94 } xcb_randr_bad_crtc_error_t;
     95 
     96 /** Opcode for xcb_randr_bad_mode. */
     97 #define XCB_RANDR_BAD_MODE 2
     98 
     99 /**
    100  * @brief xcb_randr_bad_mode_error_t
    101  **/
    102 typedef struct xcb_randr_bad_mode_error_t {
    103     uint8_t  response_type;
    104     uint8_t  error_code;
    105     uint16_t sequence;
    106 } xcb_randr_bad_mode_error_t;
    107 
    108 /** Opcode for xcb_randr_bad_provider. */
    109 #define XCB_RANDR_BAD_PROVIDER 3
    110 
    111 /**
    112  * @brief xcb_randr_bad_provider_error_t
    113  **/
    114 typedef struct xcb_randr_bad_provider_error_t {
    115     uint8_t  response_type;
    116     uint8_t  error_code;
    117     uint16_t sequence;
    118 } xcb_randr_bad_provider_error_t;
    119 
    120 typedef enum xcb_randr_rotation_t {
    121     XCB_RANDR_ROTATION_ROTATE_0 = 1,
    122     XCB_RANDR_ROTATION_ROTATE_90 = 2,
    123     XCB_RANDR_ROTATION_ROTATE_180 = 4,
    124     XCB_RANDR_ROTATION_ROTATE_270 = 8,
    125     XCB_RANDR_ROTATION_REFLECT_X = 16,
    126     XCB_RANDR_ROTATION_REFLECT_Y = 32
    127 } xcb_randr_rotation_t;
    128 
    129 /**
    130  * @brief xcb_randr_screen_size_t
    131  **/
    132 typedef struct xcb_randr_screen_size_t {
    133     uint16_t width;
    134     uint16_t height;
    135     uint16_t mwidth;
    136     uint16_t mheight;
    137 } xcb_randr_screen_size_t;
    138 
    139 /**
    140  * @brief xcb_randr_screen_size_iterator_t
    141  **/
    142 typedef struct xcb_randr_screen_size_iterator_t {
    143     xcb_randr_screen_size_t *data;
    144     int                      rem;
    145     int                      index;
    146 } xcb_randr_screen_size_iterator_t;
    147 
    148 /**
    149  * @brief xcb_randr_refresh_rates_t
    150  **/
    151 typedef struct xcb_randr_refresh_rates_t {
    152     uint16_t nRates;
    153 } xcb_randr_refresh_rates_t;
    154 
    155 /**
    156  * @brief xcb_randr_refresh_rates_iterator_t
    157  **/
    158 typedef struct xcb_randr_refresh_rates_iterator_t {
    159     xcb_randr_refresh_rates_t *data;
    160     int                        rem;
    161     int                        index;
    162 } xcb_randr_refresh_rates_iterator_t;
    163 
    164 /**
    165  * @brief xcb_randr_query_version_cookie_t
    166  **/
    167 typedef struct xcb_randr_query_version_cookie_t {
    168     unsigned int sequence;
    169 } xcb_randr_query_version_cookie_t;
    170 
    171 /** Opcode for xcb_randr_query_version. */
    172 #define XCB_RANDR_QUERY_VERSION 0
    173 
    174 /**
    175  * @brief xcb_randr_query_version_request_t
    176  **/
    177 typedef struct xcb_randr_query_version_request_t {
    178     uint8_t  major_opcode;
    179     uint8_t  minor_opcode;
    180     uint16_t length;
    181     uint32_t major_version;
    182     uint32_t minor_version;
    183 } xcb_randr_query_version_request_t;
    184 
    185 /**
    186  * @brief xcb_randr_query_version_reply_t
    187  **/
    188 typedef struct xcb_randr_query_version_reply_t {
    189     uint8_t  response_type;
    190     uint8_t  pad0;
    191     uint16_t sequence;
    192     uint32_t length;
    193     uint32_t major_version;
    194     uint32_t minor_version;
    195     uint8_t  pad1[16];
    196 } xcb_randr_query_version_reply_t;
    197 
    198 typedef enum xcb_randr_set_config_t {
    199     XCB_RANDR_SET_CONFIG_SUCCESS = 0,
    200     XCB_RANDR_SET_CONFIG_INVALID_CONFIG_TIME = 1,
    201     XCB_RANDR_SET_CONFIG_INVALID_TIME = 2,
    202     XCB_RANDR_SET_CONFIG_FAILED = 3
    203 } xcb_randr_set_config_t;
    204 
    205 /**
    206  * @brief xcb_randr_set_screen_config_cookie_t
    207  **/
    208 typedef struct xcb_randr_set_screen_config_cookie_t {
    209     unsigned int sequence;
    210 } xcb_randr_set_screen_config_cookie_t;
    211 
    212 /** Opcode for xcb_randr_set_screen_config. */
    213 #define XCB_RANDR_SET_SCREEN_CONFIG 2
    214 
    215 /**
    216  * @brief xcb_randr_set_screen_config_request_t
    217  **/
    218 typedef struct xcb_randr_set_screen_config_request_t {
    219     uint8_t         major_opcode;
    220     uint8_t         minor_opcode;
    221     uint16_t        length;
    222     xcb_window_t    window;
    223     xcb_timestamp_t timestamp;
    224     xcb_timestamp_t config_timestamp;
    225     uint16_t        sizeID;
    226     uint16_t        rotation;
    227     uint16_t        rate;
    228     uint8_t         pad0[2];
    229 } xcb_randr_set_screen_config_request_t;
    230 
    231 /**
    232  * @brief xcb_randr_set_screen_config_reply_t
    233  **/
    234 typedef struct xcb_randr_set_screen_config_reply_t {
    235     uint8_t         response_type;
    236     uint8_t         status;
    237     uint16_t        sequence;
    238     uint32_t        length;
    239     xcb_timestamp_t new_timestamp;
    240     xcb_timestamp_t config_timestamp;
    241     xcb_window_t    root;
    242     uint16_t        subpixel_order;
    243     uint8_t         pad0[10];
    244 } xcb_randr_set_screen_config_reply_t;
    245 
    246 typedef enum xcb_randr_notify_mask_t {
    247     XCB_RANDR_NOTIFY_MASK_SCREEN_CHANGE = 1,
    248     XCB_RANDR_NOTIFY_MASK_CRTC_CHANGE = 2,
    249     XCB_RANDR_NOTIFY_MASK_OUTPUT_CHANGE = 4,
    250     XCB_RANDR_NOTIFY_MASK_OUTPUT_PROPERTY = 8,
    251     XCB_RANDR_NOTIFY_MASK_PROVIDER_CHANGE = 16,
    252     XCB_RANDR_NOTIFY_MASK_PROVIDER_PROPERTY = 32,
    253     XCB_RANDR_NOTIFY_MASK_RESOURCE_CHANGE = 64
    254 } xcb_randr_notify_mask_t;
    255 
    256 /** Opcode for xcb_randr_select_input. */
    257 #define XCB_RANDR_SELECT_INPUT 4
    258 
    259 /**
    260  * @brief xcb_randr_select_input_request_t
    261  **/
    262 typedef struct xcb_randr_select_input_request_t {
    263     uint8_t      major_opcode;
    264     uint8_t      minor_opcode;
    265     uint16_t     length;
    266     xcb_window_t window;
    267     uint16_t     enable;
    268     uint8_t      pad0[2];
    269 } xcb_randr_select_input_request_t;
    270 
    271 /**
    272  * @brief xcb_randr_get_screen_info_cookie_t
    273  **/
    274 typedef struct xcb_randr_get_screen_info_cookie_t {
    275     unsigned int sequence;
    276 } xcb_randr_get_screen_info_cookie_t;
    277 
    278 /** Opcode for xcb_randr_get_screen_info. */
    279 #define XCB_RANDR_GET_SCREEN_INFO 5
    280 
    281 /**
    282  * @brief xcb_randr_get_screen_info_request_t
    283  **/
    284 typedef struct xcb_randr_get_screen_info_request_t {
    285     uint8_t      major_opcode;
    286     uint8_t      minor_opcode;
    287     uint16_t     length;
    288     xcb_window_t window;
    289 } xcb_randr_get_screen_info_request_t;
    290 
    291 /**
    292  * @brief xcb_randr_get_screen_info_reply_t
    293  **/
    294 typedef struct xcb_randr_get_screen_info_reply_t {
    295     uint8_t         response_type;
    296     uint8_t         rotations;
    297     uint16_t        sequence;
    298     uint32_t        length;
    299     xcb_window_t    root;
    300     xcb_timestamp_t timestamp;
    301     xcb_timestamp_t config_timestamp;
    302     uint16_t        nSizes;
    303     uint16_t        sizeID;
    304     uint16_t        rotation;
    305     uint16_t        rate;
    306     uint16_t        nInfo;
    307     uint8_t         pad0[2];
    308 } xcb_randr_get_screen_info_reply_t;
    309 
    310 /**
    311  * @brief xcb_randr_get_screen_size_range_cookie_t
    312  **/
    313 typedef struct xcb_randr_get_screen_size_range_cookie_t {
    314     unsigned int sequence;
    315 } xcb_randr_get_screen_size_range_cookie_t;
    316 
    317 /** Opcode for xcb_randr_get_screen_size_range. */
    318 #define XCB_RANDR_GET_SCREEN_SIZE_RANGE 6
    319 
    320 /**
    321  * @brief xcb_randr_get_screen_size_range_request_t
    322  **/
    323 typedef struct xcb_randr_get_screen_size_range_request_t {
    324     uint8_t      major_opcode;
    325     uint8_t      minor_opcode;
    326     uint16_t     length;
    327     xcb_window_t window;
    328 } xcb_randr_get_screen_size_range_request_t;
    329 
    330 /**
    331  * @brief xcb_randr_get_screen_size_range_reply_t
    332  **/
    333 typedef struct xcb_randr_get_screen_size_range_reply_t {
    334     uint8_t  response_type;
    335     uint8_t  pad0;
    336     uint16_t sequence;
    337     uint32_t length;
    338     uint16_t min_width;
    339     uint16_t min_height;
    340     uint16_t max_width;
    341     uint16_t max_height;
    342     uint8_t  pad1[16];
    343 } xcb_randr_get_screen_size_range_reply_t;
    344 
    345 /** Opcode for xcb_randr_set_screen_size. */
    346 #define XCB_RANDR_SET_SCREEN_SIZE 7
    347 
    348 /**
    349  * @brief xcb_randr_set_screen_size_request_t
    350  **/
    351 typedef struct xcb_randr_set_screen_size_request_t {
    352     uint8_t      major_opcode;
    353     uint8_t      minor_opcode;
    354     uint16_t     length;
    355     xcb_window_t window;
    356     uint16_t     width;
    357     uint16_t     height;
    358     uint32_t     mm_width;
    359     uint32_t     mm_height;
    360 } xcb_randr_set_screen_size_request_t;
    361 
    362 typedef enum xcb_randr_mode_flag_t {
    363     XCB_RANDR_MODE_FLAG_HSYNC_POSITIVE = 1,
    364     XCB_RANDR_MODE_FLAG_HSYNC_NEGATIVE = 2,
    365     XCB_RANDR_MODE_FLAG_VSYNC_POSITIVE = 4,
    366     XCB_RANDR_MODE_FLAG_VSYNC_NEGATIVE = 8,
    367     XCB_RANDR_MODE_FLAG_INTERLACE = 16,
    368     XCB_RANDR_MODE_FLAG_DOUBLE_SCAN = 32,
    369     XCB_RANDR_MODE_FLAG_CSYNC = 64,
    370     XCB_RANDR_MODE_FLAG_CSYNC_POSITIVE = 128,
    371     XCB_RANDR_MODE_FLAG_CSYNC_NEGATIVE = 256,
    372     XCB_RANDR_MODE_FLAG_HSKEW_PRESENT = 512,
    373     XCB_RANDR_MODE_FLAG_BCAST = 1024,
    374     XCB_RANDR_MODE_FLAG_PIXEL_MULTIPLEX = 2048,
    375     XCB_RANDR_MODE_FLAG_DOUBLE_CLOCK = 4096,
    376     XCB_RANDR_MODE_FLAG_HALVE_CLOCK = 8192
    377 } xcb_randr_mode_flag_t;
    378 
    379 /**
    380  * @brief xcb_randr_mode_info_t
    381  **/
    382 typedef struct xcb_randr_mode_info_t {
    383     uint32_t id;
    384     uint16_t width;
    385     uint16_t height;
    386     uint32_t dot_clock;
    387     uint16_t hsync_start;
    388     uint16_t hsync_end;
    389     uint16_t htotal;
    390     uint16_t hskew;
    391     uint16_t vsync_start;
    392     uint16_t vsync_end;
    393     uint16_t vtotal;
    394     uint16_t name_len;
    395     uint32_t mode_flags;
    396 } xcb_randr_mode_info_t;
    397 
    398 /**
    399  * @brief xcb_randr_mode_info_iterator_t
    400  **/
    401 typedef struct xcb_randr_mode_info_iterator_t {
    402     xcb_randr_mode_info_t *data;
    403     int                    rem;
    404     int                    index;
    405 } xcb_randr_mode_info_iterator_t;
    406 
    407 /**
    408  * @brief xcb_randr_get_screen_resources_cookie_t
    409  **/
    410 typedef struct xcb_randr_get_screen_resources_cookie_t {
    411     unsigned int sequence;
    412 } xcb_randr_get_screen_resources_cookie_t;
    413 
    414 /** Opcode for xcb_randr_get_screen_resources. */
    415 #define XCB_RANDR_GET_SCREEN_RESOURCES 8
    416 
    417 /**
    418  * @brief xcb_randr_get_screen_resources_request_t
    419  **/
    420 typedef struct xcb_randr_get_screen_resources_request_t {
    421     uint8_t      major_opcode;
    422     uint8_t      minor_opcode;
    423     uint16_t     length;
    424     xcb_window_t window;
    425 } xcb_randr_get_screen_resources_request_t;
    426 
    427 /**
    428  * @brief xcb_randr_get_screen_resources_reply_t
    429  **/
    430 typedef struct xcb_randr_get_screen_resources_reply_t {
    431     uint8_t         response_type;
    432     uint8_t         pad0;
    433     uint16_t        sequence;
    434     uint32_t        length;
    435     xcb_timestamp_t timestamp;
    436     xcb_timestamp_t config_timestamp;
    437     uint16_t        num_crtcs;
    438     uint16_t        num_outputs;
    439     uint16_t        num_modes;
    440     uint16_t        names_len;
    441     uint8_t         pad1[8];
    442 } xcb_randr_get_screen_resources_reply_t;
    443 
    444 typedef enum xcb_randr_connection_t {
    445     XCB_RANDR_CONNECTION_CONNECTED = 0,
    446     XCB_RANDR_CONNECTION_DISCONNECTED = 1,
    447     XCB_RANDR_CONNECTION_UNKNOWN = 2
    448 } xcb_randr_connection_t;
    449 
    450 /**
    451  * @brief xcb_randr_get_output_info_cookie_t
    452  **/
    453 typedef struct xcb_randr_get_output_info_cookie_t {
    454     unsigned int sequence;
    455 } xcb_randr_get_output_info_cookie_t;
    456 
    457 /** Opcode for xcb_randr_get_output_info. */
    458 #define XCB_RANDR_GET_OUTPUT_INFO 9
    459 
    460 /**
    461  * @brief xcb_randr_get_output_info_request_t
    462  **/
    463 typedef struct xcb_randr_get_output_info_request_t {
    464     uint8_t            major_opcode;
    465     uint8_t            minor_opcode;
    466     uint16_t           length;
    467     xcb_randr_output_t output;
    468     xcb_timestamp_t    config_timestamp;
    469 } xcb_randr_get_output_info_request_t;
    470 
    471 /**
    472  * @brief xcb_randr_get_output_info_reply_t
    473  **/
    474 typedef struct xcb_randr_get_output_info_reply_t {
    475     uint8_t          response_type;
    476     uint8_t          status;
    477     uint16_t         sequence;
    478     uint32_t         length;
    479     xcb_timestamp_t  timestamp;
    480     xcb_randr_crtc_t crtc;
    481     uint32_t         mm_width;
    482     uint32_t         mm_height;
    483     uint8_t          connection;
    484     uint8_t          subpixel_order;
    485     uint16_t         num_crtcs;
    486     uint16_t         num_modes;
    487     uint16_t         num_preferred;
    488     uint16_t         num_clones;
    489     uint16_t         name_len;
    490 } xcb_randr_get_output_info_reply_t;
    491 
    492 /**
    493  * @brief xcb_randr_list_output_properties_cookie_t
    494  **/
    495 typedef struct xcb_randr_list_output_properties_cookie_t {
    496     unsigned int sequence;
    497 } xcb_randr_list_output_properties_cookie_t;
    498 
    499 /** Opcode for xcb_randr_list_output_properties. */
    500 #define XCB_RANDR_LIST_OUTPUT_PROPERTIES 10
    501 
    502 /**
    503  * @brief xcb_randr_list_output_properties_request_t
    504  **/
    505 typedef struct xcb_randr_list_output_properties_request_t {
    506     uint8_t            major_opcode;
    507     uint8_t            minor_opcode;
    508     uint16_t           length;
    509     xcb_randr_output_t output;
    510 } xcb_randr_list_output_properties_request_t;
    511 
    512 /**
    513  * @brief xcb_randr_list_output_properties_reply_t
    514  **/
    515 typedef struct xcb_randr_list_output_properties_reply_t {
    516     uint8_t  response_type;
    517     uint8_t  pad0;
    518     uint16_t sequence;
    519     uint32_t length;
    520     uint16_t num_atoms;
    521     uint8_t  pad1[22];
    522 } xcb_randr_list_output_properties_reply_t;
    523 
    524 /**
    525  * @brief xcb_randr_query_output_property_cookie_t
    526  **/
    527 typedef struct xcb_randr_query_output_property_cookie_t {
    528     unsigned int sequence;
    529 } xcb_randr_query_output_property_cookie_t;
    530 
    531 /** Opcode for xcb_randr_query_output_property. */
    532 #define XCB_RANDR_QUERY_OUTPUT_PROPERTY 11
    533 
    534 /**
    535  * @brief xcb_randr_query_output_property_request_t
    536  **/
    537 typedef struct xcb_randr_query_output_property_request_t {
    538     uint8_t            major_opcode;
    539     uint8_t            minor_opcode;
    540     uint16_t           length;
    541     xcb_randr_output_t output;
    542     xcb_atom_t         property;
    543 } xcb_randr_query_output_property_request_t;
    544 
    545 /**
    546  * @brief xcb_randr_query_output_property_reply_t
    547  **/
    548 typedef struct xcb_randr_query_output_property_reply_t {
    549     uint8_t  response_type;
    550     uint8_t  pad0;
    551     uint16_t sequence;
    552     uint32_t length;
    553     uint8_t  pending;
    554     uint8_t  range;
    555     uint8_t  immutable;
    556     uint8_t  pad1[21];
    557 } xcb_randr_query_output_property_reply_t;
    558 
    559 /** Opcode for xcb_randr_configure_output_property. */
    560 #define XCB_RANDR_CONFIGURE_OUTPUT_PROPERTY 12
    561 
    562 /**
    563  * @brief xcb_randr_configure_output_property_request_t
    564  **/
    565 typedef struct xcb_randr_configure_output_property_request_t {
    566     uint8_t            major_opcode;
    567     uint8_t            minor_opcode;
    568     uint16_t           length;
    569     xcb_randr_output_t output;
    570     xcb_atom_t         property;
    571     uint8_t            pending;
    572     uint8_t            range;
    573     uint8_t            pad0[2];
    574 } xcb_randr_configure_output_property_request_t;
    575 
    576 /** Opcode for xcb_randr_change_output_property. */
    577 #define XCB_RANDR_CHANGE_OUTPUT_PROPERTY 13
    578 
    579 /**
    580  * @brief xcb_randr_change_output_property_request_t
    581  **/
    582 typedef struct xcb_randr_change_output_property_request_t {
    583     uint8_t            major_opcode;
    584     uint8_t            minor_opcode;
    585     uint16_t           length;
    586     xcb_randr_output_t output;
    587     xcb_atom_t         property;
    588     xcb_atom_t         type;
    589     uint8_t            format;
    590     uint8_t            mode;
    591     uint8_t            pad0[2];
    592     uint32_t           num_units;
    593 } xcb_randr_change_output_property_request_t;
    594 
    595 /** Opcode for xcb_randr_delete_output_property. */
    596 #define XCB_RANDR_DELETE_OUTPUT_PROPERTY 14
    597 
    598 /**
    599  * @brief xcb_randr_delete_output_property_request_t
    600  **/
    601 typedef struct xcb_randr_delete_output_property_request_t {
    602     uint8_t            major_opcode;
    603     uint8_t            minor_opcode;
    604     uint16_t           length;
    605     xcb_randr_output_t output;
    606     xcb_atom_t         property;
    607 } xcb_randr_delete_output_property_request_t;
    608 
    609 /**
    610  * @brief xcb_randr_get_output_property_cookie_t
    611  **/
    612 typedef struct xcb_randr_get_output_property_cookie_t {
    613     unsigned int sequence;
    614 } xcb_randr_get_output_property_cookie_t;
    615 
    616 /** Opcode for xcb_randr_get_output_property. */
    617 #define XCB_RANDR_GET_OUTPUT_PROPERTY 15
    618 
    619 /**
    620  * @brief xcb_randr_get_output_property_request_t
    621  **/
    622 typedef struct xcb_randr_get_output_property_request_t {
    623     uint8_t            major_opcode;
    624     uint8_t            minor_opcode;
    625     uint16_t           length;
    626     xcb_randr_output_t output;
    627     xcb_atom_t         property;
    628     xcb_atom_t         type;
    629     uint32_t           long_offset;
    630     uint32_t           long_length;
    631     uint8_t            _delete;
    632     uint8_t            pending;
    633     uint8_t            pad0[2];
    634 } xcb_randr_get_output_property_request_t;
    635 
    636 /**
    637  * @brief xcb_randr_get_output_property_reply_t
    638  **/
    639 typedef struct xcb_randr_get_output_property_reply_t {
    640     uint8_t    response_type;
    641     uint8_t    format;
    642     uint16_t   sequence;
    643     uint32_t   length;
    644     xcb_atom_t type;
    645     uint32_t   bytes_after;
    646     uint32_t   num_items;
    647     uint8_t    pad0[12];
    648 } xcb_randr_get_output_property_reply_t;
    649 
    650 /**
    651  * @brief xcb_randr_create_mode_cookie_t
    652  **/
    653 typedef struct xcb_randr_create_mode_cookie_t {
    654     unsigned int sequence;
    655 } xcb_randr_create_mode_cookie_t;
    656 
    657 /** Opcode for xcb_randr_create_mode. */
    658 #define XCB_RANDR_CREATE_MODE 16
    659 
    660 /**
    661  * @brief xcb_randr_create_mode_request_t
    662  **/
    663 typedef struct xcb_randr_create_mode_request_t {
    664     uint8_t               major_opcode;
    665     uint8_t               minor_opcode;
    666     uint16_t              length;
    667     xcb_window_t          window;
    668     xcb_randr_mode_info_t mode_info;
    669 } xcb_randr_create_mode_request_t;
    670 
    671 /**
    672  * @brief xcb_randr_create_mode_reply_t
    673  **/
    674 typedef struct xcb_randr_create_mode_reply_t {
    675     uint8_t          response_type;
    676     uint8_t          pad0;
    677     uint16_t         sequence;
    678     uint32_t         length;
    679     xcb_randr_mode_t mode;
    680     uint8_t          pad1[20];
    681 } xcb_randr_create_mode_reply_t;
    682 
    683 /** Opcode for xcb_randr_destroy_mode. */
    684 #define XCB_RANDR_DESTROY_MODE 17
    685 
    686 /**
    687  * @brief xcb_randr_destroy_mode_request_t
    688  **/
    689 typedef struct xcb_randr_destroy_mode_request_t {
    690     uint8_t          major_opcode;
    691     uint8_t          minor_opcode;
    692     uint16_t         length;
    693     xcb_randr_mode_t mode;
    694 } xcb_randr_destroy_mode_request_t;
    695 
    696 /** Opcode for xcb_randr_add_output_mode. */
    697 #define XCB_RANDR_ADD_OUTPUT_MODE 18
    698 
    699 /**
    700  * @brief xcb_randr_add_output_mode_request_t
    701  **/
    702 typedef struct xcb_randr_add_output_mode_request_t {
    703     uint8_t            major_opcode;
    704     uint8_t            minor_opcode;
    705     uint16_t           length;
    706     xcb_randr_output_t output;
    707     xcb_randr_mode_t   mode;
    708 } xcb_randr_add_output_mode_request_t;
    709 
    710 /** Opcode for xcb_randr_delete_output_mode. */
    711 #define XCB_RANDR_DELETE_OUTPUT_MODE 19
    712 
    713 /**
    714  * @brief xcb_randr_delete_output_mode_request_t
    715  **/
    716 typedef struct xcb_randr_delete_output_mode_request_t {
    717     uint8_t            major_opcode;
    718     uint8_t            minor_opcode;
    719     uint16_t           length;
    720     xcb_randr_output_t output;
    721     xcb_randr_mode_t   mode;
    722 } xcb_randr_delete_output_mode_request_t;
    723 
    724 /**
    725  * @brief xcb_randr_get_crtc_info_cookie_t
    726  **/
    727 typedef struct xcb_randr_get_crtc_info_cookie_t {
    728     unsigned int sequence;
    729 } xcb_randr_get_crtc_info_cookie_t;
    730 
    731 /** Opcode for xcb_randr_get_crtc_info. */
    732 #define XCB_RANDR_GET_CRTC_INFO 20
    733 
    734 /**
    735  * @brief xcb_randr_get_crtc_info_request_t
    736  **/
    737 typedef struct xcb_randr_get_crtc_info_request_t {
    738     uint8_t          major_opcode;
    739     uint8_t          minor_opcode;
    740     uint16_t         length;
    741     xcb_randr_crtc_t crtc;
    742     xcb_timestamp_t  config_timestamp;
    743 } xcb_randr_get_crtc_info_request_t;
    744 
    745 /**
    746  * @brief xcb_randr_get_crtc_info_reply_t
    747  **/
    748 typedef struct xcb_randr_get_crtc_info_reply_t {
    749     uint8_t          response_type;
    750     uint8_t          status;
    751     uint16_t         sequence;
    752     uint32_t         length;
    753     xcb_timestamp_t  timestamp;
    754     int16_t          x;
    755     int16_t          y;
    756     uint16_t         width;
    757     uint16_t         height;
    758     xcb_randr_mode_t mode;
    759     uint16_t         rotation;
    760     uint16_t         rotations;
    761     uint16_t         num_outputs;
    762     uint16_t         num_possible_outputs;
    763 } xcb_randr_get_crtc_info_reply_t;
    764 
    765 /**
    766  * @brief xcb_randr_set_crtc_config_cookie_t
    767  **/
    768 typedef struct xcb_randr_set_crtc_config_cookie_t {
    769     unsigned int sequence;
    770 } xcb_randr_set_crtc_config_cookie_t;
    771 
    772 /** Opcode for xcb_randr_set_crtc_config. */
    773 #define XCB_RANDR_SET_CRTC_CONFIG 21
    774 
    775 /**
    776  * @brief xcb_randr_set_crtc_config_request_t
    777  **/
    778 typedef struct xcb_randr_set_crtc_config_request_t {
    779     uint8_t          major_opcode;
    780     uint8_t          minor_opcode;
    781     uint16_t         length;
    782     xcb_randr_crtc_t crtc;
    783     xcb_timestamp_t  timestamp;
    784     xcb_timestamp_t  config_timestamp;
    785     int16_t          x;
    786     int16_t          y;
    787     xcb_randr_mode_t mode;
    788     uint16_t         rotation;
    789     uint8_t          pad0[2];
    790 } xcb_randr_set_crtc_config_request_t;
    791 
    792 /**
    793  * @brief xcb_randr_set_crtc_config_reply_t
    794  **/
    795 typedef struct xcb_randr_set_crtc_config_reply_t {
    796     uint8_t         response_type;
    797     uint8_t         status;
    798     uint16_t        sequence;
    799     uint32_t        length;
    800     xcb_timestamp_t timestamp;
    801     uint8_t         pad0[20];
    802 } xcb_randr_set_crtc_config_reply_t;
    803 
    804 /**
    805  * @brief xcb_randr_get_crtc_gamma_size_cookie_t
    806  **/
    807 typedef struct xcb_randr_get_crtc_gamma_size_cookie_t {
    808     unsigned int sequence;
    809 } xcb_randr_get_crtc_gamma_size_cookie_t;
    810 
    811 /** Opcode for xcb_randr_get_crtc_gamma_size. */
    812 #define XCB_RANDR_GET_CRTC_GAMMA_SIZE 22
    813 
    814 /**
    815  * @brief xcb_randr_get_crtc_gamma_size_request_t
    816  **/
    817 typedef struct xcb_randr_get_crtc_gamma_size_request_t {
    818     uint8_t          major_opcode;
    819     uint8_t          minor_opcode;
    820     uint16_t         length;
    821     xcb_randr_crtc_t crtc;
    822 } xcb_randr_get_crtc_gamma_size_request_t;
    823 
    824 /**
    825  * @brief xcb_randr_get_crtc_gamma_size_reply_t
    826  **/
    827 typedef struct xcb_randr_get_crtc_gamma_size_reply_t {
    828     uint8_t  response_type;
    829     uint8_t  pad0;
    830     uint16_t sequence;
    831     uint32_t length;
    832     uint16_t size;
    833     uint8_t  pad1[22];
    834 } xcb_randr_get_crtc_gamma_size_reply_t;
    835 
    836 /**
    837  * @brief xcb_randr_get_crtc_gamma_cookie_t
    838  **/
    839 typedef struct xcb_randr_get_crtc_gamma_cookie_t {
    840     unsigned int sequence;
    841 } xcb_randr_get_crtc_gamma_cookie_t;
    842 
    843 /** Opcode for xcb_randr_get_crtc_gamma. */
    844 #define XCB_RANDR_GET_CRTC_GAMMA 23
    845 
    846 /**
    847  * @brief xcb_randr_get_crtc_gamma_request_t
    848  **/
    849 typedef struct xcb_randr_get_crtc_gamma_request_t {
    850     uint8_t          major_opcode;
    851     uint8_t          minor_opcode;
    852     uint16_t         length;
    853     xcb_randr_crtc_t crtc;
    854 } xcb_randr_get_crtc_gamma_request_t;
    855 
    856 /**
    857  * @brief xcb_randr_get_crtc_gamma_reply_t
    858  **/
    859 typedef struct xcb_randr_get_crtc_gamma_reply_t {
    860     uint8_t  response_type;
    861     uint8_t  pad0;
    862     uint16_t sequence;
    863     uint32_t length;
    864     uint16_t size;
    865     uint8_t  pad1[22];
    866 } xcb_randr_get_crtc_gamma_reply_t;
    867 
    868 /** Opcode for xcb_randr_set_crtc_gamma. */
    869 #define XCB_RANDR_SET_CRTC_GAMMA 24
    870 
    871 /**
    872  * @brief xcb_randr_set_crtc_gamma_request_t
    873  **/
    874 typedef struct xcb_randr_set_crtc_gamma_request_t {
    875     uint8_t          major_opcode;
    876     uint8_t          minor_opcode;
    877     uint16_t         length;
    878     xcb_randr_crtc_t crtc;
    879     uint16_t         size;
    880     uint8_t          pad0[2];
    881 } xcb_randr_set_crtc_gamma_request_t;
    882 
    883 /**
    884  * @brief xcb_randr_get_screen_resources_current_cookie_t
    885  **/
    886 typedef struct xcb_randr_get_screen_resources_current_cookie_t {
    887     unsigned int sequence;
    888 } xcb_randr_get_screen_resources_current_cookie_t;
    889 
    890 /** Opcode for xcb_randr_get_screen_resources_current. */
    891 #define XCB_RANDR_GET_SCREEN_RESOURCES_CURRENT 25
    892 
    893 /**
    894  * @brief xcb_randr_get_screen_resources_current_request_t
    895  **/
    896 typedef struct xcb_randr_get_screen_resources_current_request_t {
    897     uint8_t      major_opcode;
    898     uint8_t      minor_opcode;
    899     uint16_t     length;
    900     xcb_window_t window;
    901 } xcb_randr_get_screen_resources_current_request_t;
    902 
    903 /**
    904  * @brief xcb_randr_get_screen_resources_current_reply_t
    905  **/
    906 typedef struct xcb_randr_get_screen_resources_current_reply_t {
    907     uint8_t         response_type;
    908     uint8_t         pad0;
    909     uint16_t        sequence;
    910     uint32_t        length;
    911     xcb_timestamp_t timestamp;
    912     xcb_timestamp_t config_timestamp;
    913     uint16_t        num_crtcs;
    914     uint16_t        num_outputs;
    915     uint16_t        num_modes;
    916     uint16_t        names_len;
    917     uint8_t         pad1[8];
    918 } xcb_randr_get_screen_resources_current_reply_t;
    919 
    920 typedef enum xcb_randr_transform_t {
    921     XCB_RANDR_TRANSFORM_UNIT = 1,
    922     XCB_RANDR_TRANSFORM_SCALE_UP = 2,
    923     XCB_RANDR_TRANSFORM_SCALE_DOWN = 4,
    924     XCB_RANDR_TRANSFORM_PROJECTIVE = 8
    925 } xcb_randr_transform_t;
    926 
    927 /** Opcode for xcb_randr_set_crtc_transform. */
    928 #define XCB_RANDR_SET_CRTC_TRANSFORM 26
    929 
    930 /**
    931  * @brief xcb_randr_set_crtc_transform_request_t
    932  **/
    933 typedef struct xcb_randr_set_crtc_transform_request_t {
    934     uint8_t                major_opcode;
    935     uint8_t                minor_opcode;
    936     uint16_t               length;
    937     xcb_randr_crtc_t       crtc;
    938     xcb_render_transform_t transform;
    939     uint16_t               filter_len;
    940     uint8_t                pad0[2];
    941 } xcb_randr_set_crtc_transform_request_t;
    942 
    943 /**
    944  * @brief xcb_randr_get_crtc_transform_cookie_t
    945  **/
    946 typedef struct xcb_randr_get_crtc_transform_cookie_t {
    947     unsigned int sequence;
    948 } xcb_randr_get_crtc_transform_cookie_t;
    949 
    950 /** Opcode for xcb_randr_get_crtc_transform. */
    951 #define XCB_RANDR_GET_CRTC_TRANSFORM 27
    952 
    953 /**
    954  * @brief xcb_randr_get_crtc_transform_request_t
    955  **/
    956 typedef struct xcb_randr_get_crtc_transform_request_t {
    957     uint8_t          major_opcode;
    958     uint8_t          minor_opcode;
    959     uint16_t         length;
    960     xcb_randr_crtc_t crtc;
    961 } xcb_randr_get_crtc_transform_request_t;
    962 
    963 /**
    964  * @brief xcb_randr_get_crtc_transform_reply_t
    965  **/
    966 typedef struct xcb_randr_get_crtc_transform_reply_t {
    967     uint8_t                response_type;
    968     uint8_t                pad0;
    969     uint16_t               sequence;
    970     uint32_t               length;
    971     xcb_render_transform_t pending_transform;
    972     uint8_t                has_transforms;
    973     uint8_t                pad1[3];
    974     xcb_render_transform_t current_transform;
    975     uint8_t                pad2[4];
    976     uint16_t               pending_len;
    977     uint16_t               pending_nparams;
    978     uint16_t               current_len;
    979     uint16_t               current_nparams;
    980 } xcb_randr_get_crtc_transform_reply_t;
    981 
    982 /**
    983  * @brief xcb_randr_get_panning_cookie_t
    984  **/
    985 typedef struct xcb_randr_get_panning_cookie_t {
    986     unsigned int sequence;
    987 } xcb_randr_get_panning_cookie_t;
    988 
    989 /** Opcode for xcb_randr_get_panning. */
    990 #define XCB_RANDR_GET_PANNING 28
    991 
    992 /**
    993  * @brief xcb_randr_get_panning_request_t
    994  **/
    995 typedef struct xcb_randr_get_panning_request_t {
    996     uint8_t          major_opcode;
    997     uint8_t          minor_opcode;
    998     uint16_t         length;
    999     xcb_randr_crtc_t crtc;
   1000 } xcb_randr_get_panning_request_t;
   1001 
   1002 /**
   1003  * @brief xcb_randr_get_panning_reply_t
   1004  **/
   1005 typedef struct xcb_randr_get_panning_reply_t {
   1006     uint8_t         response_type;
   1007     uint8_t         status;
   1008     uint16_t        sequence;
   1009     uint32_t        length;
   1010     xcb_timestamp_t timestamp;
   1011     uint16_t        left;
   1012     uint16_t        top;
   1013     uint16_t        width;
   1014     uint16_t        height;
   1015     uint16_t        track_left;
   1016     uint16_t        track_top;
   1017     uint16_t        track_width;
   1018     uint16_t        track_height;
   1019     int16_t         border_left;
   1020     int16_t         border_top;
   1021     int16_t         border_right;
   1022     int16_t         border_bottom;
   1023 } xcb_randr_get_panning_reply_t;
   1024 
   1025 /**
   1026  * @brief xcb_randr_set_panning_cookie_t
   1027  **/
   1028 typedef struct xcb_randr_set_panning_cookie_t {
   1029     unsigned int sequence;
   1030 } xcb_randr_set_panning_cookie_t;
   1031 
   1032 /** Opcode for xcb_randr_set_panning. */
   1033 #define XCB_RANDR_SET_PANNING 29
   1034 
   1035 /**
   1036  * @brief xcb_randr_set_panning_request_t
   1037  **/
   1038 typedef struct xcb_randr_set_panning_request_t {
   1039     uint8_t          major_opcode;
   1040     uint8_t          minor_opcode;
   1041     uint16_t         length;
   1042     xcb_randr_crtc_t crtc;
   1043     xcb_timestamp_t  timestamp;
   1044     uint16_t         left;
   1045     uint16_t         top;
   1046     uint16_t         width;
   1047     uint16_t         height;
   1048     uint16_t         track_left;
   1049     uint16_t         track_top;
   1050     uint16_t         track_width;
   1051     uint16_t         track_height;
   1052     int16_t          border_left;
   1053     int16_t          border_top;
   1054     int16_t          border_right;
   1055     int16_t          border_bottom;
   1056 } xcb_randr_set_panning_request_t;
   1057 
   1058 /**
   1059  * @brief xcb_randr_set_panning_reply_t
   1060  **/
   1061 typedef struct xcb_randr_set_panning_reply_t {
   1062     uint8_t         response_type;
   1063     uint8_t         status;
   1064     uint16_t        sequence;
   1065     uint32_t        length;
   1066     xcb_timestamp_t timestamp;
   1067 } xcb_randr_set_panning_reply_t;
   1068 
   1069 /** Opcode for xcb_randr_set_output_primary. */
   1070 #define XCB_RANDR_SET_OUTPUT_PRIMARY 30
   1071 
   1072 /**
   1073  * @brief xcb_randr_set_output_primary_request_t
   1074  **/
   1075 typedef struct xcb_randr_set_output_primary_request_t {
   1076     uint8_t            major_opcode;
   1077     uint8_t            minor_opcode;
   1078     uint16_t           length;
   1079     xcb_window_t       window;
   1080     xcb_randr_output_t output;
   1081 } xcb_randr_set_output_primary_request_t;
   1082 
   1083 /**
   1084  * @brief xcb_randr_get_output_primary_cookie_t
   1085  **/
   1086 typedef struct xcb_randr_get_output_primary_cookie_t {
   1087     unsigned int sequence;
   1088 } xcb_randr_get_output_primary_cookie_t;
   1089 
   1090 /** Opcode for xcb_randr_get_output_primary. */
   1091 #define XCB_RANDR_GET_OUTPUT_PRIMARY 31
   1092 
   1093 /**
   1094  * @brief xcb_randr_get_output_primary_request_t
   1095  **/
   1096 typedef struct xcb_randr_get_output_primary_request_t {
   1097     uint8_t      major_opcode;
   1098     uint8_t      minor_opcode;
   1099     uint16_t     length;
   1100     xcb_window_t window;
   1101 } xcb_randr_get_output_primary_request_t;
   1102 
   1103 /**
   1104  * @brief xcb_randr_get_output_primary_reply_t
   1105  **/
   1106 typedef struct xcb_randr_get_output_primary_reply_t {
   1107     uint8_t            response_type;
   1108     uint8_t            pad0;
   1109     uint16_t           sequence;
   1110     uint32_t           length;
   1111     xcb_randr_output_t output;
   1112 } xcb_randr_get_output_primary_reply_t;
   1113 
   1114 /**
   1115  * @brief xcb_randr_get_providers_cookie_t
   1116  **/
   1117 typedef struct xcb_randr_get_providers_cookie_t {
   1118     unsigned int sequence;
   1119 } xcb_randr_get_providers_cookie_t;
   1120 
   1121 /** Opcode for xcb_randr_get_providers. */
   1122 #define XCB_RANDR_GET_PROVIDERS 32
   1123 
   1124 /**
   1125  * @brief xcb_randr_get_providers_request_t
   1126  **/
   1127 typedef struct xcb_randr_get_providers_request_t {
   1128     uint8_t      major_opcode;
   1129     uint8_t      minor_opcode;
   1130     uint16_t     length;
   1131     xcb_window_t window;
   1132 } xcb_randr_get_providers_request_t;
   1133 
   1134 /**
   1135  * @brief xcb_randr_get_providers_reply_t
   1136  **/
   1137 typedef struct xcb_randr_get_providers_reply_t {
   1138     uint8_t         response_type;
   1139     uint8_t         pad0;
   1140     uint16_t        sequence;
   1141     uint32_t        length;
   1142     xcb_timestamp_t timestamp;
   1143     uint16_t        num_providers;
   1144     uint8_t         pad1[18];
   1145 } xcb_randr_get_providers_reply_t;
   1146 
   1147 typedef enum xcb_randr_provider_capability_t {
   1148     XCB_RANDR_PROVIDER_CAPABILITY_SOURCE_OUTPUT = 1,
   1149     XCB_RANDR_PROVIDER_CAPABILITY_SINK_OUTPUT = 2,
   1150     XCB_RANDR_PROVIDER_CAPABILITY_SOURCE_OFFLOAD = 4,
   1151     XCB_RANDR_PROVIDER_CAPABILITY_SINK_OFFLOAD = 8
   1152 } xcb_randr_provider_capability_t;
   1153 
   1154 /**
   1155  * @brief xcb_randr_get_provider_info_cookie_t
   1156  **/
   1157 typedef struct xcb_randr_get_provider_info_cookie_t {
   1158     unsigned int sequence;
   1159 } xcb_randr_get_provider_info_cookie_t;
   1160 
   1161 /** Opcode for xcb_randr_get_provider_info. */
   1162 #define XCB_RANDR_GET_PROVIDER_INFO 33
   1163 
   1164 /**
   1165  * @brief xcb_randr_get_provider_info_request_t
   1166  **/
   1167 typedef struct xcb_randr_get_provider_info_request_t {
   1168     uint8_t              major_opcode;
   1169     uint8_t              minor_opcode;
   1170     uint16_t             length;
   1171     xcb_randr_provider_t provider;
   1172     xcb_timestamp_t      config_timestamp;
   1173 } xcb_randr_get_provider_info_request_t;
   1174 
   1175 /**
   1176  * @brief xcb_randr_get_provider_info_reply_t
   1177  **/
   1178 typedef struct xcb_randr_get_provider_info_reply_t {
   1179     uint8_t         response_type;
   1180     uint8_t         status;
   1181     uint16_t        sequence;
   1182     uint32_t        length;
   1183     xcb_timestamp_t timestamp;
   1184     uint32_t        capabilities;
   1185     uint16_t        num_crtcs;
   1186     uint16_t        num_outputs;
   1187     uint16_t        num_associated_providers;
   1188     uint16_t        name_len;
   1189     uint8_t         pad0[8];
   1190 } xcb_randr_get_provider_info_reply_t;
   1191 
   1192 /** Opcode for xcb_randr_set_provider_offload_sink. */
   1193 #define XCB_RANDR_SET_PROVIDER_OFFLOAD_SINK 34
   1194 
   1195 /**
   1196  * @brief xcb_randr_set_provider_offload_sink_request_t
   1197  **/
   1198 typedef struct xcb_randr_set_provider_offload_sink_request_t {
   1199     uint8_t              major_opcode;
   1200     uint8_t              minor_opcode;
   1201     uint16_t             length;
   1202     xcb_randr_provider_t provider;
   1203     xcb_randr_provider_t sink_provider;
   1204     xcb_timestamp_t      config_timestamp;
   1205 } xcb_randr_set_provider_offload_sink_request_t;
   1206 
   1207 /** Opcode for xcb_randr_set_provider_output_source. */
   1208 #define XCB_RANDR_SET_PROVIDER_OUTPUT_SOURCE 35
   1209 
   1210 /**
   1211  * @brief xcb_randr_set_provider_output_source_request_t
   1212  **/
   1213 typedef struct xcb_randr_set_provider_output_source_request_t {
   1214     uint8_t              major_opcode;
   1215     uint8_t              minor_opcode;
   1216     uint16_t             length;
   1217     xcb_randr_provider_t provider;
   1218     xcb_randr_provider_t source_provider;
   1219     xcb_timestamp_t      config_timestamp;
   1220 } xcb_randr_set_provider_output_source_request_t;
   1221 
   1222 /**
   1223  * @brief xcb_randr_list_provider_properties_cookie_t
   1224  **/
   1225 typedef struct xcb_randr_list_provider_properties_cookie_t {
   1226     unsigned int sequence;
   1227 } xcb_randr_list_provider_properties_cookie_t;
   1228 
   1229 /** Opcode for xcb_randr_list_provider_properties. */
   1230 #define XCB_RANDR_LIST_PROVIDER_PROPERTIES 36
   1231 
   1232 /**
   1233  * @brief xcb_randr_list_provider_properties_request_t
   1234  **/
   1235 typedef struct xcb_randr_list_provider_properties_request_t {
   1236     uint8_t              major_opcode;
   1237     uint8_t              minor_opcode;
   1238     uint16_t             length;
   1239     xcb_randr_provider_t provider;
   1240 } xcb_randr_list_provider_properties_request_t;
   1241 
   1242 /**
   1243  * @brief xcb_randr_list_provider_properties_reply_t
   1244  **/
   1245 typedef struct xcb_randr_list_provider_properties_reply_t {
   1246     uint8_t  response_type;
   1247     uint8_t  pad0;
   1248     uint16_t sequence;
   1249     uint32_t length;
   1250     uint16_t num_atoms;
   1251     uint8_t  pad1[22];
   1252 } xcb_randr_list_provider_properties_reply_t;
   1253 
   1254 /**
   1255  * @brief xcb_randr_query_provider_property_cookie_t
   1256  **/
   1257 typedef struct xcb_randr_query_provider_property_cookie_t {
   1258     unsigned int sequence;
   1259 } xcb_randr_query_provider_property_cookie_t;
   1260 
   1261 /** Opcode for xcb_randr_query_provider_property. */
   1262 #define XCB_RANDR_QUERY_PROVIDER_PROPERTY 37
   1263 
   1264 /**
   1265  * @brief xcb_randr_query_provider_property_request_t
   1266  **/
   1267 typedef struct xcb_randr_query_provider_property_request_t {
   1268     uint8_t              major_opcode;
   1269     uint8_t              minor_opcode;
   1270     uint16_t             length;
   1271     xcb_randr_provider_t provider;
   1272     xcb_atom_t           property;
   1273 } xcb_randr_query_provider_property_request_t;
   1274 
   1275 /**
   1276  * @brief xcb_randr_query_provider_property_reply_t
   1277  **/
   1278 typedef struct xcb_randr_query_provider_property_reply_t {
   1279     uint8_t  response_type;
   1280     uint8_t  pad0;
   1281     uint16_t sequence;
   1282     uint32_t length;
   1283     uint8_t  pending;
   1284     uint8_t  range;
   1285     uint8_t  immutable;
   1286     uint8_t  pad1[21];
   1287 } xcb_randr_query_provider_property_reply_t;
   1288 
   1289 /** Opcode for xcb_randr_configure_provider_property. */
   1290 #define XCB_RANDR_CONFIGURE_PROVIDER_PROPERTY 38
   1291 
   1292 /**
   1293  * @brief xcb_randr_configure_provider_property_request_t
   1294  **/
   1295 typedef struct xcb_randr_configure_provider_property_request_t {
   1296     uint8_t              major_opcode;
   1297     uint8_t              minor_opcode;
   1298     uint16_t             length;
   1299     xcb_randr_provider_t provider;
   1300     xcb_atom_t           property;
   1301     uint8_t              pending;
   1302     uint8_t              range;
   1303     uint8_t              pad0[2];
   1304 } xcb_randr_configure_provider_property_request_t;
   1305 
   1306 /** Opcode for xcb_randr_change_provider_property. */
   1307 #define XCB_RANDR_CHANGE_PROVIDER_PROPERTY 39
   1308 
   1309 /**
   1310  * @brief xcb_randr_change_provider_property_request_t
   1311  **/
   1312 typedef struct xcb_randr_change_provider_property_request_t {
   1313     uint8_t              major_opcode;
   1314     uint8_t              minor_opcode;
   1315     uint16_t             length;
   1316     xcb_randr_provider_t provider;
   1317     xcb_atom_t           property;
   1318     xcb_atom_t           type;
   1319     uint8_t              format;
   1320     uint8_t              mode;
   1321     uint8_t              pad0[2];
   1322     uint32_t             num_items;
   1323 } xcb_randr_change_provider_property_request_t;
   1324 
   1325 /** Opcode for xcb_randr_delete_provider_property. */
   1326 #define XCB_RANDR_DELETE_PROVIDER_PROPERTY 40
   1327 
   1328 /**
   1329  * @brief xcb_randr_delete_provider_property_request_t
   1330  **/
   1331 typedef struct xcb_randr_delete_provider_property_request_t {
   1332     uint8_t              major_opcode;
   1333     uint8_t              minor_opcode;
   1334     uint16_t             length;
   1335     xcb_randr_provider_t provider;
   1336     xcb_atom_t           property;
   1337 } xcb_randr_delete_provider_property_request_t;
   1338 
   1339 /**
   1340  * @brief xcb_randr_get_provider_property_cookie_t
   1341  **/
   1342 typedef struct xcb_randr_get_provider_property_cookie_t {
   1343     unsigned int sequence;
   1344 } xcb_randr_get_provider_property_cookie_t;
   1345 
   1346 /** Opcode for xcb_randr_get_provider_property. */
   1347 #define XCB_RANDR_GET_PROVIDER_PROPERTY 41
   1348 
   1349 /**
   1350  * @brief xcb_randr_get_provider_property_request_t
   1351  **/
   1352 typedef struct xcb_randr_get_provider_property_request_t {
   1353     uint8_t              major_opcode;
   1354     uint8_t              minor_opcode;
   1355     uint16_t             length;
   1356     xcb_randr_provider_t provider;
   1357     xcb_atom_t           property;
   1358     xcb_atom_t           type;
   1359     uint32_t             long_offset;
   1360     uint32_t             long_length;
   1361     uint8_t              _delete;
   1362     uint8_t              pending;
   1363     uint8_t              pad0[2];
   1364 } xcb_randr_get_provider_property_request_t;
   1365 
   1366 /**
   1367  * @brief xcb_randr_get_provider_property_reply_t
   1368  **/
   1369 typedef struct xcb_randr_get_provider_property_reply_t {
   1370     uint8_t    response_type;
   1371     uint8_t    format;
   1372     uint16_t   sequence;
   1373     uint32_t   length;
   1374     xcb_atom_t type;
   1375     uint32_t   bytes_after;
   1376     uint32_t   num_items;
   1377     uint8_t    pad0[12];
   1378 } xcb_randr_get_provider_property_reply_t;
   1379 
   1380 /** Opcode for xcb_randr_screen_change_notify. */
   1381 #define XCB_RANDR_SCREEN_CHANGE_NOTIFY 0
   1382 
   1383 /**
   1384  * @brief xcb_randr_screen_change_notify_event_t
   1385  **/
   1386 typedef struct xcb_randr_screen_change_notify_event_t {
   1387     uint8_t         response_type;
   1388     uint8_t         rotation;
   1389     uint16_t        sequence;
   1390     xcb_timestamp_t timestamp;
   1391     xcb_timestamp_t config_timestamp;
   1392     xcb_window_t    root;
   1393     xcb_window_t    request_window;
   1394     uint16_t        sizeID;
   1395     uint16_t        subpixel_order;
   1396     uint16_t        width;
   1397     uint16_t        height;
   1398     uint16_t        mwidth;
   1399     uint16_t        mheight;
   1400 } xcb_randr_screen_change_notify_event_t;
   1401 
   1402 typedef enum xcb_randr_notify_t {
   1403     XCB_RANDR_NOTIFY_CRTC_CHANGE = 0,
   1404     XCB_RANDR_NOTIFY_OUTPUT_CHANGE = 1,
   1405     XCB_RANDR_NOTIFY_OUTPUT_PROPERTY = 2,
   1406     XCB_RANDR_NOTIFY_PROVIDER_CHANGE = 3,
   1407     XCB_RANDR_NOTIFY_PROVIDER_PROPERTY = 4,
   1408     XCB_RANDR_NOTIFY_RESOURCE_CHANGE = 5
   1409 } xcb_randr_notify_t;
   1410 
   1411 /**
   1412  * @brief xcb_randr_crtc_change_t
   1413  **/
   1414 typedef struct xcb_randr_crtc_change_t {
   1415     xcb_timestamp_t  timestamp;
   1416     xcb_window_t     window;
   1417     xcb_randr_crtc_t crtc;
   1418     xcb_randr_mode_t mode;
   1419     uint16_t         rotation;
   1420     uint8_t          pad0[2];
   1421     int16_t          x;
   1422     int16_t          y;
   1423     uint16_t         width;
   1424     uint16_t         height;
   1425 } xcb_randr_crtc_change_t;
   1426 
   1427 /**
   1428  * @brief xcb_randr_crtc_change_iterator_t
   1429  **/
   1430 typedef struct xcb_randr_crtc_change_iterator_t {
   1431     xcb_randr_crtc_change_t *data;
   1432     int                      rem;
   1433     int                      index;
   1434 } xcb_randr_crtc_change_iterator_t;
   1435 
   1436 /**
   1437  * @brief xcb_randr_output_change_t
   1438  **/
   1439 typedef struct xcb_randr_output_change_t {
   1440     xcb_timestamp_t    timestamp;
   1441     xcb_timestamp_t    config_timestamp;
   1442     xcb_window_t       window;
   1443     xcb_randr_output_t output;
   1444     xcb_randr_crtc_t   crtc;
   1445     xcb_randr_mode_t   mode;
   1446     uint16_t           rotation;
   1447     uint8_t            connection;
   1448     uint8_t            subpixel_order;
   1449 } xcb_randr_output_change_t;
   1450 
   1451 /**
   1452  * @brief xcb_randr_output_change_iterator_t
   1453  **/
   1454 typedef struct xcb_randr_output_change_iterator_t {
   1455     xcb_randr_output_change_t *data;
   1456     int                        rem;
   1457     int                        index;
   1458 } xcb_randr_output_change_iterator_t;
   1459 
   1460 /**
   1461  * @brief xcb_randr_output_property_t
   1462  **/
   1463 typedef struct xcb_randr_output_property_t {
   1464     xcb_window_t       window;
   1465     xcb_randr_output_t output;
   1466     xcb_atom_t         atom;
   1467     xcb_timestamp_t    timestamp;
   1468     uint8_t            status;
   1469     uint8_t            pad0[11];
   1470 } xcb_randr_output_property_t;
   1471 
   1472 /**
   1473  * @brief xcb_randr_output_property_iterator_t
   1474  **/
   1475 typedef struct xcb_randr_output_property_iterator_t {
   1476     xcb_randr_output_property_t *data;
   1477     int                          rem;
   1478     int                          index;
   1479 } xcb_randr_output_property_iterator_t;
   1480 
   1481 /**
   1482  * @brief xcb_randr_provider_change_t
   1483  **/
   1484 typedef struct xcb_randr_provider_change_t {
   1485     xcb_timestamp_t      timestamp;
   1486     xcb_window_t         window;
   1487     xcb_randr_provider_t provider;
   1488     uint8_t              pad0[16];
   1489 } xcb_randr_provider_change_t;
   1490 
   1491 /**
   1492  * @brief xcb_randr_provider_change_iterator_t
   1493  **/
   1494 typedef struct xcb_randr_provider_change_iterator_t {
   1495     xcb_randr_provider_change_t *data;
   1496     int                          rem;
   1497     int                          index;
   1498 } xcb_randr_provider_change_iterator_t;
   1499 
   1500 /**
   1501  * @brief xcb_randr_provider_property_t
   1502  **/
   1503 typedef struct xcb_randr_provider_property_t {
   1504     xcb_window_t         window;
   1505     xcb_randr_provider_t provider;
   1506     xcb_atom_t           atom;
   1507     xcb_timestamp_t      timestamp;
   1508     uint8_t              state;
   1509     uint8_t              pad0[11];
   1510 } xcb_randr_provider_property_t;
   1511 
   1512 /**
   1513  * @brief xcb_randr_provider_property_iterator_t
   1514  **/
   1515 typedef struct xcb_randr_provider_property_iterator_t {
   1516     xcb_randr_provider_property_t *data;
   1517     int                            rem;
   1518     int                            index;
   1519 } xcb_randr_provider_property_iterator_t;
   1520 
   1521 /**
   1522  * @brief xcb_randr_resource_change_t
   1523  **/
   1524 typedef struct xcb_randr_resource_change_t {
   1525     xcb_timestamp_t timestamp;
   1526     xcb_window_t    window;
   1527     uint8_t         pad0[20];
   1528 } xcb_randr_resource_change_t;
   1529 
   1530 /**
   1531  * @brief xcb_randr_resource_change_iterator_t
   1532  **/
   1533 typedef struct xcb_randr_resource_change_iterator_t {
   1534     xcb_randr_resource_change_t *data;
   1535     int                          rem;
   1536     int                          index;
   1537 } xcb_randr_resource_change_iterator_t;
   1538 
   1539 /**
   1540  * @brief xcb_randr_notify_data_t
   1541  **/
   1542 typedef union xcb_randr_notify_data_t {
   1543     xcb_randr_crtc_change_t       cc;
   1544     xcb_randr_output_change_t     oc;
   1545     xcb_randr_output_property_t   op;
   1546     xcb_randr_provider_change_t   pc;
   1547     xcb_randr_provider_property_t pp;
   1548     xcb_randr_resource_change_t   rc;
   1549 } xcb_randr_notify_data_t;
   1550 
   1551 /**
   1552  * @brief xcb_randr_notify_data_iterator_t
   1553  **/
   1554 typedef struct xcb_randr_notify_data_iterator_t {
   1555     xcb_randr_notify_data_t *data;
   1556     int                      rem;
   1557     int                      index;
   1558 } xcb_randr_notify_data_iterator_t;
   1559 
   1560 /** Opcode for xcb_randr_notify. */
   1561 #define XCB_RANDR_NOTIFY 1
   1562 
   1563 /**
   1564  * @brief xcb_randr_notify_event_t
   1565  **/
   1566 typedef struct xcb_randr_notify_event_t {
   1567     uint8_t                 response_type;
   1568     uint8_t                 subCode;
   1569     uint16_t                sequence;
   1570     xcb_randr_notify_data_t u;
   1571 } xcb_randr_notify_event_t;
   1572 
   1573 /**
   1574  * @brief xcb_randr_monitor_info_t
   1575  **/
   1576 typedef struct xcb_randr_monitor_info_t {
   1577     xcb_atom_t name;
   1578     uint8_t    primary;
   1579     uint8_t    automatic;
   1580     uint16_t   nOutput;
   1581     int16_t    x;
   1582     int16_t    y;
   1583     uint16_t   width;
   1584     uint16_t   height;
   1585     uint32_t   width_in_millimeters;
   1586     uint32_t   height_in_millimeters;
   1587 } xcb_randr_monitor_info_t;
   1588 
   1589 /**
   1590  * @brief xcb_randr_monitor_info_iterator_t
   1591  **/
   1592 typedef struct xcb_randr_monitor_info_iterator_t {
   1593     xcb_randr_monitor_info_t *data;
   1594     int                       rem;
   1595     int                       index;
   1596 } xcb_randr_monitor_info_iterator_t;
   1597 
   1598 /**
   1599  * @brief xcb_randr_get_monitors_cookie_t
   1600  **/
   1601 typedef struct xcb_randr_get_monitors_cookie_t {
   1602     unsigned int sequence;
   1603 } xcb_randr_get_monitors_cookie_t;
   1604 
   1605 /** Opcode for xcb_randr_get_monitors. */
   1606 #define XCB_RANDR_GET_MONITORS 42
   1607 
   1608 /**
   1609  * @brief xcb_randr_get_monitors_request_t
   1610  **/
   1611 typedef struct xcb_randr_get_monitors_request_t {
   1612     uint8_t      major_opcode;
   1613     uint8_t      minor_opcode;
   1614     uint16_t     length;
   1615     xcb_window_t window;
   1616     uint8_t      get_active;
   1617 } xcb_randr_get_monitors_request_t;
   1618 
   1619 /**
   1620  * @brief xcb_randr_get_monitors_reply_t
   1621  **/
   1622 typedef struct xcb_randr_get_monitors_reply_t {
   1623     uint8_t         response_type;
   1624     uint8_t         pad0;
   1625     uint16_t        sequence;
   1626     uint32_t        length;
   1627     xcb_timestamp_t timestamp;
   1628     uint32_t        nMonitors;
   1629     uint32_t        nOutputs;
   1630     uint8_t         pad1[12];
   1631 } xcb_randr_get_monitors_reply_t;
   1632 
   1633 /** Opcode for xcb_randr_set_monitor. */
   1634 #define XCB_RANDR_SET_MONITOR 43
   1635 
   1636 /**
   1637  * @brief xcb_randr_set_monitor_request_t
   1638  **/
   1639 typedef struct xcb_randr_set_monitor_request_t {
   1640     uint8_t      major_opcode;
   1641     uint8_t      minor_opcode;
   1642     uint16_t     length;
   1643     xcb_window_t window;
   1644 } xcb_randr_set_monitor_request_t;
   1645 
   1646 /** Opcode for xcb_randr_delete_monitor. */
   1647 #define XCB_RANDR_DELETE_MONITOR 44
   1648 
   1649 /**
   1650  * @brief xcb_randr_delete_monitor_request_t
   1651  **/
   1652 typedef struct xcb_randr_delete_monitor_request_t {
   1653     uint8_t      major_opcode;
   1654     uint8_t      minor_opcode;
   1655     uint16_t     length;
   1656     xcb_window_t window;
   1657     xcb_atom_t   name;
   1658 } xcb_randr_delete_monitor_request_t;
   1659 
   1660 /**
   1661  * Get the next element of the iterator
   1662  * @param i Pointer to a xcb_randr_mode_iterator_t
   1663  *
   1664  * Get the next element in the iterator. The member rem is
   1665  * decreased by one. The member data points to the next
   1666  * element. The member index is increased by sizeof(xcb_randr_mode_t)
   1667  */
   1668 void
   1669 xcb_randr_mode_next (xcb_randr_mode_iterator_t *i);
   1670 
   1671 /**
   1672  * Return the iterator pointing to the last element
   1673  * @param i An xcb_randr_mode_iterator_t
   1674  * @return  The iterator pointing to the last element
   1675  *
   1676  * Set the current element in the iterator to the last element.
   1677  * The member rem is set to 0. The member data points to the
   1678  * last element.
   1679  */
   1680 xcb_generic_iterator_t
   1681 xcb_randr_mode_end (xcb_randr_mode_iterator_t i);
   1682 
   1683 /**
   1684  * Get the next element of the iterator
   1685  * @param i Pointer to a xcb_randr_crtc_iterator_t
   1686  *
   1687  * Get the next element in the iterator. The member rem is
   1688  * decreased by one. The member data points to the next
   1689  * element. The member index is increased by sizeof(xcb_randr_crtc_t)
   1690  */
   1691 void
   1692 xcb_randr_crtc_next (xcb_randr_crtc_iterator_t *i);
   1693 
   1694 /**
   1695  * Return the iterator pointing to the last element
   1696  * @param i An xcb_randr_crtc_iterator_t
   1697  * @return  The iterator pointing to the last element
   1698  *
   1699  * Set the current element in the iterator to the last element.
   1700  * The member rem is set to 0. The member data points to the
   1701  * last element.
   1702  */
   1703 xcb_generic_iterator_t
   1704 xcb_randr_crtc_end (xcb_randr_crtc_iterator_t i);
   1705 
   1706 /**
   1707  * Get the next element of the iterator
   1708  * @param i Pointer to a xcb_randr_output_iterator_t
   1709  *
   1710  * Get the next element in the iterator. The member rem is
   1711  * decreased by one. The member data points to the next
   1712  * element. The member index is increased by sizeof(xcb_randr_output_t)
   1713  */
   1714 void
   1715 xcb_randr_output_next (xcb_randr_output_iterator_t *i);
   1716 
   1717 /**
   1718  * Return the iterator pointing to the last element
   1719  * @param i An xcb_randr_output_iterator_t
   1720  * @return  The iterator pointing to the last element
   1721  *
   1722  * Set the current element in the iterator to the last element.
   1723  * The member rem is set to 0. The member data points to the
   1724  * last element.
   1725  */
   1726 xcb_generic_iterator_t
   1727 xcb_randr_output_end (xcb_randr_output_iterator_t i);
   1728 
   1729 /**
   1730  * Get the next element of the iterator
   1731  * @param i Pointer to a xcb_randr_provider_iterator_t
   1732  *
   1733  * Get the next element in the iterator. The member rem is
   1734  * decreased by one. The member data points to the next
   1735  * element. The member index is increased by sizeof(xcb_randr_provider_t)
   1736  */
   1737 void
   1738 xcb_randr_provider_next (xcb_randr_provider_iterator_t *i);
   1739 
   1740 /**
   1741  * Return the iterator pointing to the last element
   1742  * @param i An xcb_randr_provider_iterator_t
   1743  * @return  The iterator pointing to the last element
   1744  *
   1745  * Set the current element in the iterator to the last element.
   1746  * The member rem is set to 0. The member data points to the
   1747  * last element.
   1748  */
   1749 xcb_generic_iterator_t
   1750 xcb_randr_provider_end (xcb_randr_provider_iterator_t i);
   1751 
   1752 /**
   1753  * Get the next element of the iterator
   1754  * @param i Pointer to a xcb_randr_screen_size_iterator_t
   1755  *
   1756  * Get the next element in the iterator. The member rem is
   1757  * decreased by one. The member data points to the next
   1758  * element. The member index is increased by sizeof(xcb_randr_screen_size_t)
   1759  */
   1760 void
   1761 xcb_randr_screen_size_next (xcb_randr_screen_size_iterator_t *i);
   1762 
   1763 /**
   1764  * Return the iterator pointing to the last element
   1765  * @param i An xcb_randr_screen_size_iterator_t
   1766  * @return  The iterator pointing to the last element
   1767  *
   1768  * Set the current element in the iterator to the last element.
   1769  * The member rem is set to 0. The member data points to the
   1770  * last element.
   1771  */
   1772 xcb_generic_iterator_t
   1773 xcb_randr_screen_size_end (xcb_randr_screen_size_iterator_t i);
   1774 
   1775 int
   1776 xcb_randr_refresh_rates_sizeof (const void  *_buffer);
   1777 
   1778 uint16_t *
   1779 xcb_randr_refresh_rates_rates (const xcb_randr_refresh_rates_t *R);
   1780 
   1781 int
   1782 xcb_randr_refresh_rates_rates_length (const xcb_randr_refresh_rates_t *R);
   1783 
   1784 xcb_generic_iterator_t
   1785 xcb_randr_refresh_rates_rates_end (const xcb_randr_refresh_rates_t *R);
   1786 
   1787 /**
   1788  * Get the next element of the iterator
   1789  * @param i Pointer to a xcb_randr_refresh_rates_iterator_t
   1790  *
   1791  * Get the next element in the iterator. The member rem is
   1792  * decreased by one. The member data points to the next
   1793  * element. The member index is increased by sizeof(xcb_randr_refresh_rates_t)
   1794  */
   1795 void
   1796 xcb_randr_refresh_rates_next (xcb_randr_refresh_rates_iterator_t *i);
   1797 
   1798 /**
   1799  * Return the iterator pointing to the last element
   1800  * @param i An xcb_randr_refresh_rates_iterator_t
   1801  * @return  The iterator pointing to the last element
   1802  *
   1803  * Set the current element in the iterator to the last element.
   1804  * The member rem is set to 0. The member data points to the
   1805  * last element.
   1806  */
   1807 xcb_generic_iterator_t
   1808 xcb_randr_refresh_rates_end (xcb_randr_refresh_rates_iterator_t i);
   1809 
   1810 /**
   1811  *
   1812  * @param c The connection
   1813  * @return A cookie
   1814  *
   1815  * Delivers a request to the X server.
   1816  *
   1817  */
   1818 xcb_randr_query_version_cookie_t
   1819 xcb_randr_query_version (xcb_connection_t *c,
   1820                          uint32_t          major_version,
   1821                          uint32_t          minor_version);
   1822 
   1823 /**
   1824  *
   1825  * @param c The connection
   1826  * @return A cookie
   1827  *
   1828  * Delivers a request to the X server.
   1829  *
   1830  * This form can be used only if the request will cause
   1831  * a reply to be generated. Any returned error will be
   1832  * placed in the event queue.
   1833  */
   1834 xcb_randr_query_version_cookie_t
   1835 xcb_randr_query_version_unchecked (xcb_connection_t *c,
   1836                                    uint32_t          major_version,
   1837                                    uint32_t          minor_version);
   1838 
   1839 /**
   1840  * Return the reply
   1841  * @param c      The connection
   1842  * @param cookie The cookie
   1843  * @param e      The xcb_generic_error_t supplied
   1844  *
   1845  * Returns the reply of the request asked by
   1846  *
   1847  * The parameter @p e supplied to this function must be NULL if
   1848  * xcb_randr_query_version_unchecked(). is used.
   1849  * Otherwise, it stores the error if any.
   1850  *
   1851  * The returned value must be freed by the caller using free().
   1852  */
   1853 xcb_randr_query_version_reply_t *
   1854 xcb_randr_query_version_reply (xcb_connection_t                  *c,
   1855                                xcb_randr_query_version_cookie_t   cookie  /**< */,
   1856                                xcb_generic_error_t              **e);
   1857 
   1858 /**
   1859  *
   1860  * @param c The connection
   1861  * @return A cookie
   1862  *
   1863  * Delivers a request to the X server.
   1864  *
   1865  */
   1866 xcb_randr_set_screen_config_cookie_t
   1867 xcb_randr_set_screen_config (xcb_connection_t *c,
   1868                              xcb_window_t      window,
   1869                              xcb_timestamp_t   timestamp,
   1870                              xcb_timestamp_t   config_timestamp,
   1871                              uint16_t          sizeID,
   1872                              uint16_t          rotation,
   1873                              uint16_t          rate);
   1874 
   1875 /**
   1876  *
   1877  * @param c The connection
   1878  * @return A cookie
   1879  *
   1880  * Delivers a request to the X server.
   1881  *
   1882  * This form can be used only if the request will cause
   1883  * a reply to be generated. Any returned error will be
   1884  * placed in the event queue.
   1885  */
   1886 xcb_randr_set_screen_config_cookie_t
   1887 xcb_randr_set_screen_config_unchecked (xcb_connection_t *c,
   1888                                        xcb_window_t      window,
   1889                                        xcb_timestamp_t   timestamp,
   1890                                        xcb_timestamp_t   config_timestamp,
   1891                                        uint16_t          sizeID,
   1892                                        uint16_t          rotation,
   1893                                        uint16_t          rate);
   1894 
   1895 /**
   1896  * Return the reply
   1897  * @param c      The connection
   1898  * @param cookie The cookie
   1899  * @param e      The xcb_generic_error_t supplied
   1900  *
   1901  * Returns the reply of the request asked by
   1902  *
   1903  * The parameter @p e supplied to this function must be NULL if
   1904  * xcb_randr_set_screen_config_unchecked(). is used.
   1905  * Otherwise, it stores the error if any.
   1906  *
   1907  * The returned value must be freed by the caller using free().
   1908  */
   1909 xcb_randr_set_screen_config_reply_t *
   1910 xcb_randr_set_screen_config_reply (xcb_connection_t                      *c,
   1911                                    xcb_randr_set_screen_config_cookie_t   cookie  /**< */,
   1912                                    xcb_generic_error_t                  **e);
   1913 
   1914 /**
   1915  *
   1916  * @param c The connection
   1917  * @return A cookie
   1918  *
   1919  * Delivers a request to the X server.
   1920  *
   1921  * This form can be used only if the request will not cause
   1922  * a reply to be generated. Any returned error will be
   1923  * saved for handling by xcb_request_check().
   1924  */
   1925 xcb_void_cookie_t
   1926 xcb_randr_select_input_checked (xcb_connection_t *c,
   1927                                 xcb_window_t      window,
   1928                                 uint16_t          enable);
   1929 
   1930 /**
   1931  *
   1932  * @param c The connection
   1933  * @return A cookie
   1934  *
   1935  * Delivers a request to the X server.
   1936  *
   1937  */
   1938 xcb_void_cookie_t
   1939 xcb_randr_select_input (xcb_connection_t *c,
   1940                         xcb_window_t      window,
   1941                         uint16_t          enable);
   1942 
   1943 int
   1944 xcb_randr_get_screen_info_sizeof (const void  *_buffer);
   1945 
   1946 /**
   1947  *
   1948  * @param c The connection
   1949  * @return A cookie
   1950  *
   1951  * Delivers a request to the X server.
   1952  *
   1953  */
   1954 xcb_randr_get_screen_info_cookie_t
   1955 xcb_randr_get_screen_info (xcb_connection_t *c,
   1956                            xcb_window_t      window);
   1957 
   1958 /**
   1959  *
   1960  * @param c The connection
   1961  * @return A cookie
   1962  *
   1963  * Delivers a request to the X server.
   1964  *
   1965  * This form can be used only if the request will cause
   1966  * a reply to be generated. Any returned error will be
   1967  * placed in the event queue.
   1968  */
   1969 xcb_randr_get_screen_info_cookie_t
   1970 xcb_randr_get_screen_info_unchecked (xcb_connection_t *c,
   1971                                      xcb_window_t      window);
   1972 
   1973 xcb_randr_screen_size_t *
   1974 xcb_randr_get_screen_info_sizes (const xcb_randr_get_screen_info_reply_t *R);
   1975 
   1976 int
   1977 xcb_randr_get_screen_info_sizes_length (const xcb_randr_get_screen_info_reply_t *R);
   1978 
   1979 xcb_randr_screen_size_iterator_t
   1980 xcb_randr_get_screen_info_sizes_iterator (const xcb_randr_get_screen_info_reply_t *R);
   1981 
   1982 int
   1983 xcb_randr_get_screen_info_rates_length (const xcb_randr_get_screen_info_reply_t *R);
   1984 
   1985 xcb_randr_refresh_rates_iterator_t
   1986 xcb_randr_get_screen_info_rates_iterator (const xcb_randr_get_screen_info_reply_t *R);
   1987 
   1988 /**
   1989  * Return the reply
   1990  * @param c      The connection
   1991  * @param cookie The cookie
   1992  * @param e      The xcb_generic_error_t supplied
   1993  *
   1994  * Returns the reply of the request asked by
   1995  *
   1996  * The parameter @p e supplied to this function must be NULL if
   1997  * xcb_randr_get_screen_info_unchecked(). is used.
   1998  * Otherwise, it stores the error if any.
   1999  *
   2000  * The returned value must be freed by the caller using free().
   2001  */
   2002 xcb_randr_get_screen_info_reply_t *
   2003 xcb_randr_get_screen_info_reply (xcb_connection_t                    *c,
   2004                                  xcb_randr_get_screen_info_cookie_t   cookie  /**< */,
   2005                                  xcb_generic_error_t                **e);
   2006 
   2007 /**
   2008  *
   2009  * @param c The connection
   2010  * @return A cookie
   2011  *
   2012  * Delivers a request to the X server.
   2013  *
   2014  */
   2015 xcb_randr_get_screen_size_range_cookie_t
   2016 xcb_randr_get_screen_size_range (xcb_connection_t *c,
   2017                                  xcb_window_t      window);
   2018 
   2019 /**
   2020  *
   2021  * @param c The connection
   2022  * @return A cookie
   2023  *
   2024  * Delivers a request to the X server.
   2025  *
   2026  * This form can be used only if the request will cause
   2027  * a reply to be generated. Any returned error will be
   2028  * placed in the event queue.
   2029  */
   2030 xcb_randr_get_screen_size_range_cookie_t
   2031 xcb_randr_get_screen_size_range_unchecked (xcb_connection_t *c,
   2032                                            xcb_window_t      window);
   2033 
   2034 /**
   2035  * Return the reply
   2036  * @param c      The connection
   2037  * @param cookie The cookie
   2038  * @param e      The xcb_generic_error_t supplied
   2039  *
   2040  * Returns the reply of the request asked by
   2041  *
   2042  * The parameter @p e supplied to this function must be NULL if
   2043  * xcb_randr_get_screen_size_range_unchecked(). is used.
   2044  * Otherwise, it stores the error if any.
   2045  *
   2046  * The returned value must be freed by the caller using free().
   2047  */
   2048 xcb_randr_get_screen_size_range_reply_t *
   2049 xcb_randr_get_screen_size_range_reply (xcb_connection_t                          *c,
   2050                                        xcb_randr_get_screen_size_range_cookie_t   cookie  /**< */,
   2051                                        xcb_generic_error_t                      **e);
   2052 
   2053 /**
   2054  *
   2055  * @param c The connection
   2056  * @return A cookie
   2057  *
   2058  * Delivers a request to the X server.
   2059  *
   2060  * This form can be used only if the request will not cause
   2061  * a reply to be generated. Any returned error will be
   2062  * saved for handling by xcb_request_check().
   2063  */
   2064 xcb_void_cookie_t
   2065 xcb_randr_set_screen_size_checked (xcb_connection_t *c,
   2066                                    xcb_window_t      window,
   2067                                    uint16_t          width,
   2068                                    uint16_t          height,
   2069                                    uint32_t          mm_width,
   2070                                    uint32_t          mm_height);
   2071 
   2072 /**
   2073  *
   2074  * @param c The connection
   2075  * @return A cookie
   2076  *
   2077  * Delivers a request to the X server.
   2078  *
   2079  */
   2080 xcb_void_cookie_t
   2081 xcb_randr_set_screen_size (xcb_connection_t *c,
   2082                            xcb_window_t      window,
   2083                            uint16_t          width,
   2084                            uint16_t          height,
   2085                            uint32_t          mm_width,
   2086                            uint32_t          mm_height);
   2087 
   2088 /**
   2089  * Get the next element of the iterator
   2090  * @param i Pointer to a xcb_randr_mode_info_iterator_t
   2091  *
   2092  * Get the next element in the iterator. The member rem is
   2093  * decreased by one. The member data points to the next
   2094  * element. The member index is increased by sizeof(xcb_randr_mode_info_t)
   2095  */
   2096 void
   2097 xcb_randr_mode_info_next (xcb_randr_mode_info_iterator_t *i);
   2098 
   2099 /**
   2100  * Return the iterator pointing to the last element
   2101  * @param i An xcb_randr_mode_info_iterator_t
   2102  * @return  The iterator pointing to the last element
   2103  *
   2104  * Set the current element in the iterator to the last element.
   2105  * The member rem is set to 0. The member data points to the
   2106  * last element.
   2107  */
   2108 xcb_generic_iterator_t
   2109 xcb_randr_mode_info_end (xcb_randr_mode_info_iterator_t i);
   2110 
   2111 int
   2112 xcb_randr_get_screen_resources_sizeof (const void  *_buffer);
   2113 
   2114 /**
   2115  *
   2116  * @param c The connection
   2117  * @return A cookie
   2118  *
   2119  * Delivers a request to the X server.
   2120  *
   2121  */
   2122 xcb_randr_get_screen_resources_cookie_t
   2123 xcb_randr_get_screen_resources (xcb_connection_t *c,
   2124                                 xcb_window_t      window);
   2125 
   2126 /**
   2127  *
   2128  * @param c The connection
   2129  * @return A cookie
   2130  *
   2131  * Delivers a request to the X server.
   2132  *
   2133  * This form can be used only if the request will cause
   2134  * a reply to be generated. Any returned error will be
   2135  * placed in the event queue.
   2136  */
   2137 xcb_randr_get_screen_resources_cookie_t
   2138 xcb_randr_get_screen_resources_unchecked (xcb_connection_t *c,
   2139                                           xcb_window_t      window);
   2140 
   2141 xcb_randr_crtc_t *
   2142 xcb_randr_get_screen_resources_crtcs (const xcb_randr_get_screen_resources_reply_t *R);
   2143 
   2144 int
   2145 xcb_randr_get_screen_resources_crtcs_length (const xcb_randr_get_screen_resources_reply_t *R);
   2146 
   2147 xcb_generic_iterator_t
   2148 xcb_randr_get_screen_resources_crtcs_end (const xcb_randr_get_screen_resources_reply_t *R);
   2149 
   2150 xcb_randr_output_t *
   2151 xcb_randr_get_screen_resources_outputs (const xcb_randr_get_screen_resources_reply_t *R);
   2152 
   2153 int
   2154 xcb_randr_get_screen_resources_outputs_length (const xcb_randr_get_screen_resources_reply_t *R);
   2155 
   2156 xcb_generic_iterator_t
   2157 xcb_randr_get_screen_resources_outputs_end (const xcb_randr_get_screen_resources_reply_t *R);
   2158 
   2159 xcb_randr_mode_info_t *
   2160 xcb_randr_get_screen_resources_modes (const xcb_randr_get_screen_resources_reply_t *R);
   2161 
   2162 int
   2163 xcb_randr_get_screen_resources_modes_length (const xcb_randr_get_screen_resources_reply_t *R);
   2164 
   2165 xcb_randr_mode_info_iterator_t
   2166 xcb_randr_get_screen_resources_modes_iterator (const xcb_randr_get_screen_resources_reply_t *R);
   2167 
   2168 uint8_t *
   2169 xcb_randr_get_screen_resources_names (const xcb_randr_get_screen_resources_reply_t *R);
   2170 
   2171 int
   2172 xcb_randr_get_screen_resources_names_length (const xcb_randr_get_screen_resources_reply_t *R);
   2173 
   2174 xcb_generic_iterator_t
   2175 xcb_randr_get_screen_resources_names_end (const xcb_randr_get_screen_resources_reply_t *R);
   2176 
   2177 /**
   2178  * Return the reply
   2179  * @param c      The connection
   2180  * @param cookie The cookie
   2181  * @param e      The xcb_generic_error_t supplied
   2182  *
   2183  * Returns the reply of the request asked by
   2184  *
   2185  * The parameter @p e supplied to this function must be NULL if
   2186  * xcb_randr_get_screen_resources_unchecked(). is used.
   2187  * Otherwise, it stores the error if any.
   2188  *
   2189  * The returned value must be freed by the caller using free().
   2190  */
   2191 xcb_randr_get_screen_resources_reply_t *
   2192 xcb_randr_get_screen_resources_reply (xcb_connection_t                         *c,
   2193                                       xcb_randr_get_screen_resources_cookie_t   cookie  /**< */,
   2194                                       xcb_generic_error_t                     **e);
   2195 
   2196 int
   2197 xcb_randr_get_output_info_sizeof (const void  *_buffer);
   2198 
   2199 /**
   2200  *
   2201  * @param c The connection
   2202  * @return A cookie
   2203  *
   2204  * Delivers a request to the X server.
   2205  *
   2206  */
   2207 xcb_randr_get_output_info_cookie_t
   2208 xcb_randr_get_output_info (xcb_connection_t   *c,
   2209                            xcb_randr_output_t  output,
   2210                            xcb_timestamp_t     config_timestamp);
   2211 
   2212 /**
   2213  *
   2214  * @param c The connection
   2215  * @return A cookie
   2216  *
   2217  * Delivers a request to the X server.
   2218  *
   2219  * This form can be used only if the request will cause
   2220  * a reply to be generated. Any returned error will be
   2221  * placed in the event queue.
   2222  */
   2223 xcb_randr_get_output_info_cookie_t
   2224 xcb_randr_get_output_info_unchecked (xcb_connection_t   *c,
   2225                                      xcb_randr_output_t  output,
   2226                                      xcb_timestamp_t     config_timestamp);
   2227 
   2228 xcb_randr_crtc_t *
   2229 xcb_randr_get_output_info_crtcs (const xcb_randr_get_output_info_reply_t *R);
   2230 
   2231 int
   2232 xcb_randr_get_output_info_crtcs_length (const xcb_randr_get_output_info_reply_t *R);
   2233 
   2234 xcb_generic_iterator_t
   2235 xcb_randr_get_output_info_crtcs_end (const xcb_randr_get_output_info_reply_t *R);
   2236 
   2237 xcb_randr_mode_t *
   2238 xcb_randr_get_output_info_modes (const xcb_randr_get_output_info_reply_t *R);
   2239 
   2240 int
   2241 xcb_randr_get_output_info_modes_length (const xcb_randr_get_output_info_reply_t *R);
   2242 
   2243 xcb_generic_iterator_t
   2244 xcb_randr_get_output_info_modes_end (const xcb_randr_get_output_info_reply_t *R);
   2245 
   2246 xcb_randr_output_t *
   2247 xcb_randr_get_output_info_clones (const xcb_randr_get_output_info_reply_t *R);
   2248 
   2249 int
   2250 xcb_randr_get_output_info_clones_length (const xcb_randr_get_output_info_reply_t *R);
   2251 
   2252 xcb_generic_iterator_t
   2253 xcb_randr_get_output_info_clones_end (const xcb_randr_get_output_info_reply_t *R);
   2254 
   2255 uint8_t *
   2256 xcb_randr_get_output_info_name (const xcb_randr_get_output_info_reply_t *R);
   2257 
   2258 int
   2259 xcb_randr_get_output_info_name_length (const xcb_randr_get_output_info_reply_t *R);
   2260 
   2261 xcb_generic_iterator_t
   2262 xcb_randr_get_output_info_name_end (const xcb_randr_get_output_info_reply_t *R);
   2263 
   2264 /**
   2265  * Return the reply
   2266  * @param c      The connection
   2267  * @param cookie The cookie
   2268  * @param e      The xcb_generic_error_t supplied
   2269  *
   2270  * Returns the reply of the request asked by
   2271  *
   2272  * The parameter @p e supplied to this function must be NULL if
   2273  * xcb_randr_get_output_info_unchecked(). is used.
   2274  * Otherwise, it stores the error if any.
   2275  *
   2276  * The returned value must be freed by the caller using free().
   2277  */
   2278 xcb_randr_get_output_info_reply_t *
   2279 xcb_randr_get_output_info_reply (xcb_connection_t                    *c,
   2280                                  xcb_randr_get_output_info_cookie_t   cookie  /**< */,
   2281                                  xcb_generic_error_t                **e);
   2282 
   2283 int
   2284 xcb_randr_list_output_properties_sizeof (const void  *_buffer);
   2285 
   2286 /**
   2287  *
   2288  * @param c The connection
   2289  * @return A cookie
   2290  *
   2291  * Delivers a request to the X server.
   2292  *
   2293  */
   2294 xcb_randr_list_output_properties_cookie_t
   2295 xcb_randr_list_output_properties (xcb_connection_t   *c,
   2296                                   xcb_randr_output_t  output);
   2297 
   2298 /**
   2299  *
   2300  * @param c The connection
   2301  * @return A cookie
   2302  *
   2303  * Delivers a request to the X server.
   2304  *
   2305  * This form can be used only if the request will cause
   2306  * a reply to be generated. Any returned error will be
   2307  * placed in the event queue.
   2308  */
   2309 xcb_randr_list_output_properties_cookie_t
   2310 xcb_randr_list_output_properties_unchecked (xcb_connection_t   *c,
   2311                                             xcb_randr_output_t  output);
   2312 
   2313 xcb_atom_t *
   2314 xcb_randr_list_output_properties_atoms (const xcb_randr_list_output_properties_reply_t *R);
   2315 
   2316 int
   2317 xcb_randr_list_output_properties_atoms_length (const xcb_randr_list_output_properties_reply_t *R);
   2318 
   2319 xcb_generic_iterator_t
   2320 xcb_randr_list_output_properties_atoms_end (const xcb_randr_list_output_properties_reply_t *R);
   2321 
   2322 /**
   2323  * Return the reply
   2324  * @param c      The connection
   2325  * @param cookie The cookie
   2326  * @param e      The xcb_generic_error_t supplied
   2327  *
   2328  * Returns the reply of the request asked by
   2329  *
   2330  * The parameter @p e supplied to this function must be NULL if
   2331  * xcb_randr_list_output_properties_unchecked(). is used.
   2332  * Otherwise, it stores the error if any.
   2333  *
   2334  * The returned value must be freed by the caller using free().
   2335  */
   2336 xcb_randr_list_output_properties_reply_t *
   2337 xcb_randr_list_output_properties_reply (xcb_connection_t                           *c,
   2338                                         xcb_randr_list_output_properties_cookie_t   cookie  /**< */,
   2339                                         xcb_generic_error_t                       **e);
   2340 
   2341 int
   2342 xcb_randr_query_output_property_sizeof (const void  *_buffer);
   2343 
   2344 /**
   2345  *
   2346  * @param c The connection
   2347  * @return A cookie
   2348  *
   2349  * Delivers a request to the X server.
   2350  *
   2351  */
   2352 xcb_randr_query_output_property_cookie_t
   2353 xcb_randr_query_output_property (xcb_connection_t   *c,
   2354                                  xcb_randr_output_t  output,
   2355                                  xcb_atom_t          property);
   2356 
   2357 /**
   2358  *
   2359  * @param c The connection
   2360  * @return A cookie
   2361  *
   2362  * Delivers a request to the X server.
   2363  *
   2364  * This form can be used only if the request will cause
   2365  * a reply to be generated. Any returned error will be
   2366  * placed in the event queue.
   2367  */
   2368 xcb_randr_query_output_property_cookie_t
   2369 xcb_randr_query_output_property_unchecked (xcb_connection_t   *c,
   2370                                            xcb_randr_output_t  output,
   2371                                            xcb_atom_t          property);
   2372 
   2373 int32_t *
   2374 xcb_randr_query_output_property_valid_values (const xcb_randr_query_output_property_reply_t *R);
   2375 
   2376 int
   2377 xcb_randr_query_output_property_valid_values_length (const xcb_randr_query_output_property_reply_t *R);
   2378 
   2379 xcb_generic_iterator_t
   2380 xcb_randr_query_output_property_valid_values_end (const xcb_randr_query_output_property_reply_t *R);
   2381 
   2382 /**
   2383  * Return the reply
   2384  * @param c      The connection
   2385  * @param cookie The cookie
   2386  * @param e      The xcb_generic_error_t supplied
   2387  *
   2388  * Returns the reply of the request asked by
   2389  *
   2390  * The parameter @p e supplied to this function must be NULL if
   2391  * xcb_randr_query_output_property_unchecked(). is used.
   2392  * Otherwise, it stores the error if any.
   2393  *
   2394  * The returned value must be freed by the caller using free().
   2395  */
   2396 xcb_randr_query_output_property_reply_t *
   2397 xcb_randr_query_output_property_reply (xcb_connection_t                          *c,
   2398                                        xcb_randr_query_output_property_cookie_t   cookie  /**< */,
   2399                                        xcb_generic_error_t                      **e);
   2400 
   2401 int
   2402 xcb_randr_configure_output_property_sizeof (const void  *_buffer,
   2403                                             uint32_t     values_len);
   2404 
   2405 /**
   2406  *
   2407  * @param c The connection
   2408  * @return A cookie
   2409  *
   2410  * Delivers a request to the X server.
   2411  *
   2412  * This form can be used only if the request will not cause
   2413  * a reply to be generated. Any returned error will be
   2414  * saved for handling by xcb_request_check().
   2415  */
   2416 xcb_void_cookie_t
   2417 xcb_randr_configure_output_property_checked (xcb_connection_t   *c,
   2418                                              xcb_randr_output_t  output,
   2419                                              xcb_atom_t          property,
   2420                                              uint8_t             pending,
   2421                                              uint8_t             range,
   2422                                              uint32_t            values_len,
   2423                                              const int32_t      *values);
   2424 
   2425 /**
   2426  *
   2427  * @param c The connection
   2428  * @return A cookie
   2429  *
   2430  * Delivers a request to the X server.
   2431  *
   2432  */
   2433 xcb_void_cookie_t
   2434 xcb_randr_configure_output_property (xcb_connection_t   *c,
   2435                                      xcb_randr_output_t  output,
   2436                                      xcb_atom_t          property,
   2437                                      uint8_t             pending,
   2438                                      uint8_t             range,
   2439                                      uint32_t            values_len,
   2440                                      const int32_t      *values);
   2441 
   2442 int32_t *
   2443 xcb_randr_configure_output_property_values (const xcb_randr_configure_output_property_request_t *R);
   2444 
   2445 int
   2446 xcb_randr_configure_output_property_values_length (const xcb_randr_configure_output_property_request_t *R);
   2447 
   2448 xcb_generic_iterator_t
   2449 xcb_randr_configure_output_property_values_end (const xcb_randr_configure_output_property_request_t *R);
   2450 
   2451 int
   2452 xcb_randr_change_output_property_sizeof (const void  *_buffer);
   2453 
   2454 /**
   2455  *
   2456  * @param c The connection
   2457  * @return A cookie
   2458  *
   2459  * Delivers a request to the X server.
   2460  *
   2461  * This form can be used only if the request will not cause
   2462  * a reply to be generated. Any returned error will be
   2463  * saved for handling by xcb_request_check().
   2464  */
   2465 xcb_void_cookie_t
   2466 xcb_randr_change_output_property_checked (xcb_connection_t   *c,
   2467                                           xcb_randr_output_t  output,
   2468                                           xcb_atom_t          property,
   2469                                           xcb_atom_t          type,
   2470                                           uint8_t             format,
   2471                                           uint8_t             mode,
   2472                                           uint32_t            num_units,
   2473                                           const void         *data);
   2474 
   2475 /**
   2476  *
   2477  * @param c The connection
   2478  * @return A cookie
   2479  *
   2480  * Delivers a request to the X server.
   2481  *
   2482  */
   2483 xcb_void_cookie_t
   2484 xcb_randr_change_output_property (xcb_connection_t   *c,
   2485                                   xcb_randr_output_t  output,
   2486                                   xcb_atom_t          property,
   2487                                   xcb_atom_t          type,
   2488                                   uint8_t             format,
   2489                                   uint8_t             mode,
   2490                                   uint32_t            num_units,
   2491                                   const void         *data);
   2492 
   2493 void *
   2494 xcb_randr_change_output_property_data (const xcb_randr_change_output_property_request_t *R);
   2495 
   2496 int
   2497 xcb_randr_change_output_property_data_length (const xcb_randr_change_output_property_request_t *R);
   2498 
   2499 xcb_generic_iterator_t
   2500 xcb_randr_change_output_property_data_end (const xcb_randr_change_output_property_request_t *R);
   2501 
   2502 /**
   2503  *
   2504  * @param c The connection
   2505  * @return A cookie
   2506  *
   2507  * Delivers a request to the X server.
   2508  *
   2509  * This form can be used only if the request will not cause
   2510  * a reply to be generated. Any returned error will be
   2511  * saved for handling by xcb_request_check().
   2512  */
   2513 xcb_void_cookie_t
   2514 xcb_randr_delete_output_property_checked (xcb_connection_t   *c,
   2515                                           xcb_randr_output_t  output,
   2516                                           xcb_atom_t          property);
   2517 
   2518 /**
   2519  *
   2520  * @param c The connection
   2521  * @return A cookie
   2522  *
   2523  * Delivers a request to the X server.
   2524  *
   2525  */
   2526 xcb_void_cookie_t
   2527 xcb_randr_delete_output_property (xcb_connection_t   *c,
   2528                                   xcb_randr_output_t  output,
   2529                                   xcb_atom_t          property);
   2530 
   2531 int
   2532 xcb_randr_get_output_property_sizeof (const void  *_buffer);
   2533 
   2534 /**
   2535  *
   2536  * @param c The connection
   2537  * @return A cookie
   2538  *
   2539  * Delivers a request to the X server.
   2540  *
   2541  */
   2542 xcb_randr_get_output_property_cookie_t
   2543 xcb_randr_get_output_property (xcb_connection_t   *c,
   2544                                xcb_randr_output_t  output,
   2545                                xcb_atom_t          property,
   2546                                xcb_atom_t          type,
   2547                                uint32_t            long_offset,
   2548                                uint32_t            long_length,
   2549                                uint8_t             _delete,
   2550                                uint8_t             pending);
   2551 
   2552 /**
   2553  *
   2554  * @param c The connection
   2555  * @return A cookie
   2556  *
   2557  * Delivers a request to the X server.
   2558  *
   2559  * This form can be used only if the request will cause
   2560  * a reply to be generated. Any returned error will be
   2561  * placed in the event queue.
   2562  */
   2563 xcb_randr_get_output_property_cookie_t
   2564 xcb_randr_get_output_property_unchecked (xcb_connection_t   *c,
   2565                                          xcb_randr_output_t  output,
   2566                                          xcb_atom_t          property,
   2567                                          xcb_atom_t          type,
   2568                                          uint32_t            long_offset,
   2569                                          uint32_t            long_length,
   2570                                          uint8_t             _delete,
   2571                                          uint8_t             pending);
   2572 
   2573 uint8_t *
   2574 xcb_randr_get_output_property_data (const xcb_randr_get_output_property_reply_t *R);
   2575 
   2576 int
   2577 xcb_randr_get_output_property_data_length (const xcb_randr_get_output_property_reply_t *R);
   2578 
   2579 xcb_generic_iterator_t
   2580 xcb_randr_get_output_property_data_end (const xcb_randr_get_output_property_reply_t *R);
   2581 
   2582 /**
   2583  * Return the reply
   2584  * @param c      The connection
   2585  * @param cookie The cookie
   2586  * @param e      The xcb_generic_error_t supplied
   2587  *
   2588  * Returns the reply of the request asked by
   2589  *
   2590  * The parameter @p e supplied to this function must be NULL if
   2591  * xcb_randr_get_output_property_unchecked(). is used.
   2592  * Otherwise, it stores the error if any.
   2593  *
   2594  * The returned value must be freed by the caller using free().
   2595  */
   2596 xcb_randr_get_output_property_reply_t *
   2597 xcb_randr_get_output_property_reply (xcb_connection_t                        *c,
   2598                                      xcb_randr_get_output_property_cookie_t   cookie  /**< */,
   2599                                      xcb_generic_error_t                    **e);
   2600 
   2601 int
   2602 xcb_randr_create_mode_sizeof (const void  *_buffer,
   2603                               uint32_t     name_len);
   2604 
   2605 /**
   2606  *
   2607  * @param c The connection
   2608  * @return A cookie
   2609  *
   2610  * Delivers a request to the X server.
   2611  *
   2612  */
   2613 xcb_randr_create_mode_cookie_t
   2614 xcb_randr_create_mode (xcb_connection_t      *c,
   2615                        xcb_window_t           window,
   2616                        xcb_randr_mode_info_t  mode_info,
   2617                        uint32_t               name_len,
   2618                        const char            *name);
   2619 
   2620 /**
   2621  *
   2622  * @param c The connection
   2623  * @return A cookie
   2624  *
   2625  * Delivers a request to the X server.
   2626  *
   2627  * This form can be used only if the request will cause
   2628  * a reply to be generated. Any returned error will be
   2629  * placed in the event queue.
   2630  */
   2631 xcb_randr_create_mode_cookie_t
   2632 xcb_randr_create_mode_unchecked (xcb_connection_t      *c,
   2633                                  xcb_window_t           window,
   2634                                  xcb_randr_mode_info_t  mode_info,
   2635                                  uint32_t               name_len,
   2636                                  const char            *name);
   2637 
   2638 /**
   2639  * Return the reply
   2640  * @param c      The connection
   2641  * @param cookie The cookie
   2642  * @param e      The xcb_generic_error_t supplied
   2643  *
   2644  * Returns the reply of the request asked by
   2645  *
   2646  * The parameter @p e supplied to this function must be NULL if
   2647  * xcb_randr_create_mode_unchecked(). is used.
   2648  * Otherwise, it stores the error if any.
   2649  *
   2650  * The returned value must be freed by the caller using free().
   2651  */
   2652 xcb_randr_create_mode_reply_t *
   2653 xcb_randr_create_mode_reply (xcb_connection_t                *c,
   2654                              xcb_randr_create_mode_cookie_t   cookie  /**< */,
   2655                              xcb_generic_error_t            **e);
   2656 
   2657 /**
   2658  *
   2659  * @param c The connection
   2660  * @return A cookie
   2661  *
   2662  * Delivers a request to the X server.
   2663  *
   2664  * This form can be used only if the request will not cause
   2665  * a reply to be generated. Any returned error will be
   2666  * saved for handling by xcb_request_check().
   2667  */
   2668 xcb_void_cookie_t
   2669 xcb_randr_destroy_mode_checked (xcb_connection_t *c,
   2670                                 xcb_randr_mode_t  mode);
   2671 
   2672 /**
   2673  *
   2674  * @param c The connection
   2675  * @return A cookie
   2676  *
   2677  * Delivers a request to the X server.
   2678  *
   2679  */
   2680 xcb_void_cookie_t
   2681 xcb_randr_destroy_mode (xcb_connection_t *c,
   2682                         xcb_randr_mode_t  mode);
   2683 
   2684 /**
   2685  *
   2686  * @param c The connection
   2687  * @return A cookie
   2688  *
   2689  * Delivers a request to the X server.
   2690  *
   2691  * This form can be used only if the request will not cause
   2692  * a reply to be generated. Any returned error will be
   2693  * saved for handling by xcb_request_check().
   2694  */
   2695 xcb_void_cookie_t
   2696 xcb_randr_add_output_mode_checked (xcb_connection_t   *c,
   2697                                    xcb_randr_output_t  output,
   2698                                    xcb_randr_mode_t    mode);
   2699 
   2700 /**
   2701  *
   2702  * @param c The connection
   2703  * @return A cookie
   2704  *
   2705  * Delivers a request to the X server.
   2706  *
   2707  */
   2708 xcb_void_cookie_t
   2709 xcb_randr_add_output_mode (xcb_connection_t   *c,
   2710                            xcb_randr_output_t  output,
   2711                            xcb_randr_mode_t    mode);
   2712 
   2713 /**
   2714  *
   2715  * @param c The connection
   2716  * @return A cookie
   2717  *
   2718  * Delivers a request to the X server.
   2719  *
   2720  * This form can be used only if the request will not cause
   2721  * a reply to be generated. Any returned error will be
   2722  * saved for handling by xcb_request_check().
   2723  */
   2724 xcb_void_cookie_t
   2725 xcb_randr_delete_output_mode_checked (xcb_connection_t   *c,
   2726                                       xcb_randr_output_t  output,
   2727                                       xcb_randr_mode_t    mode);
   2728 
   2729 /**
   2730  *
   2731  * @param c The connection
   2732  * @return A cookie
   2733  *
   2734  * Delivers a request to the X server.
   2735  *
   2736  */
   2737 xcb_void_cookie_t
   2738 xcb_randr_delete_output_mode (xcb_connection_t   *c,
   2739                               xcb_randr_output_t  output,
   2740                               xcb_randr_mode_t    mode);
   2741 
   2742 int
   2743 xcb_randr_get_crtc_info_sizeof (const void  *_buffer);
   2744 
   2745 /**
   2746  *
   2747  * @param c The connection
   2748  * @return A cookie
   2749  *
   2750  * Delivers a request to the X server.
   2751  *
   2752  */
   2753 xcb_randr_get_crtc_info_cookie_t
   2754 xcb_randr_get_crtc_info (xcb_connection_t *c,
   2755                          xcb_randr_crtc_t  crtc,
   2756                          xcb_timestamp_t   config_timestamp);
   2757 
   2758 /**
   2759  *
   2760  * @param c The connection
   2761  * @return A cookie
   2762  *
   2763  * Delivers a request to the X server.
   2764  *
   2765  * This form can be used only if the request will cause
   2766  * a reply to be generated. Any returned error will be
   2767  * placed in the event queue.
   2768  */
   2769 xcb_randr_get_crtc_info_cookie_t
   2770 xcb_randr_get_crtc_info_unchecked (xcb_connection_t *c,
   2771                                    xcb_randr_crtc_t  crtc,
   2772                                    xcb_timestamp_t   config_timestamp);
   2773 
   2774 xcb_randr_output_t *
   2775 xcb_randr_get_crtc_info_outputs (const xcb_randr_get_crtc_info_reply_t *R);
   2776 
   2777 int
   2778 xcb_randr_get_crtc_info_outputs_length (const xcb_randr_get_crtc_info_reply_t *R);
   2779 
   2780 xcb_generic_iterator_t
   2781 xcb_randr_get_crtc_info_outputs_end (const xcb_randr_get_crtc_info_reply_t *R);
   2782 
   2783 xcb_randr_output_t *
   2784 xcb_randr_get_crtc_info_possible (const xcb_randr_get_crtc_info_reply_t *R);
   2785 
   2786 int
   2787 xcb_randr_get_crtc_info_possible_length (const xcb_randr_get_crtc_info_reply_t *R);
   2788 
   2789 xcb_generic_iterator_t
   2790 xcb_randr_get_crtc_info_possible_end (const xcb_randr_get_crtc_info_reply_t *R);
   2791 
   2792 /**
   2793  * Return the reply
   2794  * @param c      The connection
   2795  * @param cookie The cookie
   2796  * @param e      The xcb_generic_error_t supplied
   2797  *
   2798  * Returns the reply of the request asked by
   2799  *
   2800  * The parameter @p e supplied to this function must be NULL if
   2801  * xcb_randr_get_crtc_info_unchecked(). is used.
   2802  * Otherwise, it stores the error if any.
   2803  *
   2804  * The returned value must be freed by the caller using free().
   2805  */
   2806 xcb_randr_get_crtc_info_reply_t *
   2807 xcb_randr_get_crtc_info_reply (xcb_connection_t                  *c,
   2808                                xcb_randr_get_crtc_info_cookie_t   cookie  /**< */,
   2809                                xcb_generic_error_t              **e);
   2810 
   2811 int
   2812 xcb_randr_set_crtc_config_sizeof (const void  *_buffer,
   2813                                   uint32_t     outputs_len);
   2814 
   2815 /**
   2816  *
   2817  * @param c The connection
   2818  * @return A cookie
   2819  *
   2820  * Delivers a request to the X server.
   2821  *
   2822  */
   2823 xcb_randr_set_crtc_config_cookie_t
   2824 xcb_randr_set_crtc_config (xcb_connection_t         *c,
   2825                            xcb_randr_crtc_t          crtc,
   2826                            xcb_timestamp_t           timestamp,
   2827                            xcb_timestamp_t           config_timestamp,
   2828                            int16_t                   x,
   2829                            int16_t                   y,
   2830                            xcb_randr_mode_t          mode,
   2831                            uint16_t                  rotation,
   2832                            uint32_t                  outputs_len,
   2833                            const xcb_randr_output_t *outputs);
   2834 
   2835 /**
   2836  *
   2837  * @param c The connection
   2838  * @return A cookie
   2839  *
   2840  * Delivers a request to the X server.
   2841  *
   2842  * This form can be used only if the request will cause
   2843  * a reply to be generated. Any returned error will be
   2844  * placed in the event queue.
   2845  */
   2846 xcb_randr_set_crtc_config_cookie_t
   2847 xcb_randr_set_crtc_config_unchecked (xcb_connection_t         *c,
   2848                                      xcb_randr_crtc_t          crtc,
   2849                                      xcb_timestamp_t           timestamp,
   2850                                      xcb_timestamp_t           config_timestamp,
   2851                                      int16_t                   x,
   2852                                      int16_t                   y,
   2853                                      xcb_randr_mode_t          mode,
   2854                                      uint16_t                  rotation,
   2855                                      uint32_t                  outputs_len,
   2856                                      const xcb_randr_output_t *outputs);
   2857 
   2858 /**
   2859  * Return the reply
   2860  * @param c      The connection
   2861  * @param cookie The cookie
   2862  * @param e      The xcb_generic_error_t supplied
   2863  *
   2864  * Returns the reply of the request asked by
   2865  *
   2866  * The parameter @p e supplied to this function must be NULL if
   2867  * xcb_randr_set_crtc_config_unchecked(). is used.
   2868  * Otherwise, it stores the error if any.
   2869  *
   2870  * The returned value must be freed by the caller using free().
   2871  */
   2872 xcb_randr_set_crtc_config_reply_t *
   2873 xcb_randr_set_crtc_config_reply (xcb_connection_t                    *c,
   2874                                  xcb_randr_set_crtc_config_cookie_t   cookie  /**< */,
   2875                                  xcb_generic_error_t                **e);
   2876 
   2877 /**
   2878  *
   2879  * @param c The connection
   2880  * @return A cookie
   2881  *
   2882  * Delivers a request to the X server.
   2883  *
   2884  */
   2885 xcb_randr_get_crtc_gamma_size_cookie_t
   2886 xcb_randr_get_crtc_gamma_size (xcb_connection_t *c,
   2887                                xcb_randr_crtc_t  crtc);
   2888 
   2889 /**
   2890  *
   2891  * @param c The connection
   2892  * @return A cookie
   2893  *
   2894  * Delivers a request to the X server.
   2895  *
   2896  * This form can be used only if the request will cause
   2897  * a reply to be generated. Any returned error will be
   2898  * placed in the event queue.
   2899  */
   2900 xcb_randr_get_crtc_gamma_size_cookie_t
   2901 xcb_randr_get_crtc_gamma_size_unchecked (xcb_connection_t *c,
   2902                                          xcb_randr_crtc_t  crtc);
   2903 
   2904 /**
   2905  * Return the reply
   2906  * @param c      The connection
   2907  * @param cookie The cookie
   2908  * @param e      The xcb_generic_error_t supplied
   2909  *
   2910  * Returns the reply of the request asked by
   2911  *
   2912  * The parameter @p e supplied to this function must be NULL if
   2913  * xcb_randr_get_crtc_gamma_size_unchecked(). is used.
   2914  * Otherwise, it stores the error if any.
   2915  *
   2916  * The returned value must be freed by the caller using free().
   2917  */
   2918 xcb_randr_get_crtc_gamma_size_reply_t *
   2919 xcb_randr_get_crtc_gamma_size_reply (xcb_connection_t                        *c,
   2920                                      xcb_randr_get_crtc_gamma_size_cookie_t   cookie  /**< */,
   2921                                      xcb_generic_error_t                    **e);
   2922 
   2923 int
   2924 xcb_randr_get_crtc_gamma_sizeof (const void  *_buffer);
   2925 
   2926 /**
   2927  *
   2928  * @param c The connection
   2929  * @return A cookie
   2930  *
   2931  * Delivers a request to the X server.
   2932  *
   2933  */
   2934 xcb_randr_get_crtc_gamma_cookie_t
   2935 xcb_randr_get_crtc_gamma (xcb_connection_t *c,
   2936                           xcb_randr_crtc_t  crtc);
   2937 
   2938 /**
   2939  *
   2940  * @param c The connection
   2941  * @return A cookie
   2942  *
   2943  * Delivers a request to the X server.
   2944  *
   2945  * This form can be used only if the request will cause
   2946  * a reply to be generated. Any returned error will be
   2947  * placed in the event queue.
   2948  */
   2949 xcb_randr_get_crtc_gamma_cookie_t
   2950 xcb_randr_get_crtc_gamma_unchecked (xcb_connection_t *c,
   2951                                     xcb_randr_crtc_t  crtc);
   2952 
   2953 uint16_t *
   2954 xcb_randr_get_crtc_gamma_red (const xcb_randr_get_crtc_gamma_reply_t *R);
   2955 
   2956 int
   2957 xcb_randr_get_crtc_gamma_red_length (const xcb_randr_get_crtc_gamma_reply_t *R);
   2958 
   2959 xcb_generic_iterator_t
   2960 xcb_randr_get_crtc_gamma_red_end (const xcb_randr_get_crtc_gamma_reply_t *R);
   2961 
   2962 uint16_t *
   2963 xcb_randr_get_crtc_gamma_green (const xcb_randr_get_crtc_gamma_reply_t *R);
   2964 
   2965 int
   2966 xcb_randr_get_crtc_gamma_green_length (const xcb_randr_get_crtc_gamma_reply_t *R);
   2967 
   2968 xcb_generic_iterator_t
   2969 xcb_randr_get_crtc_gamma_green_end (const xcb_randr_get_crtc_gamma_reply_t *R);
   2970 
   2971 uint16_t *
   2972 xcb_randr_get_crtc_gamma_blue (const xcb_randr_get_crtc_gamma_reply_t *R);
   2973 
   2974 int
   2975 xcb_randr_get_crtc_gamma_blue_length (const xcb_randr_get_crtc_gamma_reply_t *R);
   2976 
   2977 xcb_generic_iterator_t
   2978 xcb_randr_get_crtc_gamma_blue_end (const xcb_randr_get_crtc_gamma_reply_t *R);
   2979 
   2980 /**
   2981  * Return the reply
   2982  * @param c      The connection
   2983  * @param cookie The cookie
   2984  * @param e      The xcb_generic_error_t supplied
   2985  *
   2986  * Returns the reply of the request asked by
   2987  *
   2988  * The parameter @p e supplied to this function must be NULL if
   2989  * xcb_randr_get_crtc_gamma_unchecked(). is used.
   2990  * Otherwise, it stores the error if any.
   2991  *
   2992  * The returned value must be freed by the caller using free().
   2993  */
   2994 xcb_randr_get_crtc_gamma_reply_t *
   2995 xcb_randr_get_crtc_gamma_reply (xcb_connection_t                   *c,
   2996                                 xcb_randr_get_crtc_gamma_cookie_t   cookie  /**< */,
   2997                                 xcb_generic_error_t               **e);
   2998 
   2999 int
   3000 xcb_randr_set_crtc_gamma_sizeof (const void  *_buffer);
   3001 
   3002 /**
   3003  *
   3004  * @param c The connection
   3005  * @return A cookie
   3006  *
   3007  * Delivers a request to the X server.
   3008  *
   3009  * This form can be used only if the request will not cause
   3010  * a reply to be generated. Any returned error will be
   3011  * saved for handling by xcb_request_check().
   3012  */
   3013 xcb_void_cookie_t
   3014 xcb_randr_set_crtc_gamma_checked (xcb_connection_t *c,
   3015                                   xcb_randr_crtc_t  crtc,
   3016                                   uint16_t          size,
   3017                                   const uint16_t   *red,
   3018                                   const uint16_t   *green,
   3019                                   const uint16_t   *blue);
   3020 
   3021 /**
   3022  *
   3023  * @param c The connection
   3024  * @return A cookie
   3025  *
   3026  * Delivers a request to the X server.
   3027  *
   3028  */
   3029 xcb_void_cookie_t
   3030 xcb_randr_set_crtc_gamma (xcb_connection_t *c,
   3031                           xcb_randr_crtc_t  crtc,
   3032                           uint16_t          size,
   3033                           const uint16_t   *red,
   3034                           const uint16_t   *green,
   3035                           const uint16_t   *blue);
   3036 
   3037 uint16_t *
   3038 xcb_randr_set_crtc_gamma_red (const xcb_randr_set_crtc_gamma_request_t *R);
   3039 
   3040 int
   3041 xcb_randr_set_crtc_gamma_red_length (const xcb_randr_set_crtc_gamma_request_t *R);
   3042 
   3043 xcb_generic_iterator_t
   3044 xcb_randr_set_crtc_gamma_red_end (const xcb_randr_set_crtc_gamma_request_t *R);
   3045 
   3046 uint16_t *
   3047 xcb_randr_set_crtc_gamma_green (const xcb_randr_set_crtc_gamma_request_t *R);
   3048 
   3049 int
   3050 xcb_randr_set_crtc_gamma_green_length (const xcb_randr_set_crtc_gamma_request_t *R);
   3051 
   3052 xcb_generic_iterator_t
   3053 xcb_randr_set_crtc_gamma_green_end (const xcb_randr_set_crtc_gamma_request_t *R);
   3054 
   3055 uint16_t *
   3056 xcb_randr_set_crtc_gamma_blue (const xcb_randr_set_crtc_gamma_request_t *R);
   3057 
   3058 int
   3059 xcb_randr_set_crtc_gamma_blue_length (const xcb_randr_set_crtc_gamma_request_t *R);
   3060 
   3061 xcb_generic_iterator_t
   3062 xcb_randr_set_crtc_gamma_blue_end (const xcb_randr_set_crtc_gamma_request_t *R);
   3063 
   3064 int
   3065 xcb_randr_get_screen_resources_current_sizeof (const void  *_buffer);
   3066 
   3067 /**
   3068  *
   3069  * @param c The connection
   3070  * @return A cookie
   3071  *
   3072  * Delivers a request to the X server.
   3073  *
   3074  */
   3075 xcb_randr_get_screen_resources_current_cookie_t
   3076 xcb_randr_get_screen_resources_current (xcb_connection_t *c,
   3077                                         xcb_window_t      window);
   3078 
   3079 /**
   3080  *
   3081  * @param c The connection
   3082  * @return A cookie
   3083  *
   3084  * Delivers a request to the X server.
   3085  *
   3086  * This form can be used only if the request will cause
   3087  * a reply to be generated. Any returned error will be
   3088  * placed in the event queue.
   3089  */
   3090 xcb_randr_get_screen_resources_current_cookie_t
   3091 xcb_randr_get_screen_resources_current_unchecked (xcb_connection_t *c,
   3092                                                   xcb_window_t      window);
   3093 
   3094 xcb_randr_crtc_t *
   3095 xcb_randr_get_screen_resources_current_crtcs (const xcb_randr_get_screen_resources_current_reply_t *R);
   3096 
   3097 int
   3098 xcb_randr_get_screen_resources_current_crtcs_length (const xcb_randr_get_screen_resources_current_reply_t *R);
   3099 
   3100 xcb_generic_iterator_t
   3101 xcb_randr_get_screen_resources_current_crtcs_end (const xcb_randr_get_screen_resources_current_reply_t *R);
   3102 
   3103 xcb_randr_output_t *
   3104 xcb_randr_get_screen_resources_current_outputs (const xcb_randr_get_screen_resources_current_reply_t *R);
   3105 
   3106 int
   3107 xcb_randr_get_screen_resources_current_outputs_length (const xcb_randr_get_screen_resources_current_reply_t *R);
   3108 
   3109 xcb_generic_iterator_t
   3110 xcb_randr_get_screen_resources_current_outputs_end (const xcb_randr_get_screen_resources_current_reply_t *R);
   3111 
   3112 xcb_randr_mode_info_t *
   3113 xcb_randr_get_screen_resources_current_modes (const xcb_randr_get_screen_resources_current_reply_t *R);
   3114 
   3115 int
   3116 xcb_randr_get_screen_resources_current_modes_length (const xcb_randr_get_screen_resources_current_reply_t *R);
   3117 
   3118 xcb_randr_mode_info_iterator_t
   3119 xcb_randr_get_screen_resources_current_modes_iterator (const xcb_randr_get_screen_resources_current_reply_t *R);
   3120 
   3121 uint8_t *
   3122 xcb_randr_get_screen_resources_current_names (const xcb_randr_get_screen_resources_current_reply_t *R);
   3123 
   3124 int
   3125 xcb_randr_get_screen_resources_current_names_length (const xcb_randr_get_screen_resources_current_reply_t *R);
   3126 
   3127 xcb_generic_iterator_t
   3128 xcb_randr_get_screen_resources_current_names_end (const xcb_randr_get_screen_resources_current_reply_t *R);
   3129 
   3130 /**
   3131  * Return the reply
   3132  * @param c      The connection
   3133  * @param cookie The cookie
   3134  * @param e      The xcb_generic_error_t supplied
   3135  *
   3136  * Returns the reply of the request asked by
   3137  *
   3138  * The parameter @p e supplied to this function must be NULL if
   3139  * xcb_randr_get_screen_resources_current_unchecked(). is used.
   3140  * Otherwise, it stores the error if any.
   3141  *
   3142  * The returned value must be freed by the caller using free().
   3143  */
   3144 xcb_randr_get_screen_resources_current_reply_t *
   3145 xcb_randr_get_screen_resources_current_reply (xcb_connection_t                                 *c,
   3146                                               xcb_randr_get_screen_resources_current_cookie_t   cookie  /**< */,
   3147                                               xcb_generic_error_t                             **e);
   3148 
   3149 int
   3150 xcb_randr_set_crtc_transform_sizeof (const void  *_buffer,
   3151                                      uint32_t     filter_params_len);
   3152 
   3153 /**
   3154  *
   3155  * @param c The connection
   3156  * @return A cookie
   3157  *
   3158  * Delivers a request to the X server.
   3159  *
   3160  * This form can be used only if the request will not cause
   3161  * a reply to be generated. Any returned error will be
   3162  * saved for handling by xcb_request_check().
   3163  */
   3164 xcb_void_cookie_t
   3165 xcb_randr_set_crtc_transform_checked (xcb_connection_t         *c,
   3166                                       xcb_randr_crtc_t          crtc,
   3167                                       xcb_render_transform_t    transform,
   3168                                       uint16_t                  filter_len,
   3169                                       const char               *filter_name,
   3170                                       uint32_t                  filter_params_len,
   3171                                       const xcb_render_fixed_t *filter_params);
   3172 
   3173 /**
   3174  *
   3175  * @param c The connection
   3176  * @return A cookie
   3177  *
   3178  * Delivers a request to the X server.
   3179  *
   3180  */
   3181 xcb_void_cookie_t
   3182 xcb_randr_set_crtc_transform (xcb_connection_t         *c,
   3183                               xcb_randr_crtc_t          crtc,
   3184                               xcb_render_transform_t    transform,
   3185                               uint16_t                  filter_len,
   3186                               const char               *filter_name,
   3187                               uint32_t                  filter_params_len,
   3188                               const xcb_render_fixed_t *filter_params);
   3189 
   3190 char *
   3191 xcb_randr_set_crtc_transform_filter_name (const xcb_randr_set_crtc_transform_request_t *R);
   3192 
   3193 int
   3194 xcb_randr_set_crtc_transform_filter_name_length (const xcb_randr_set_crtc_transform_request_t *R);
   3195 
   3196 xcb_generic_iterator_t
   3197 xcb_randr_set_crtc_transform_filter_name_end (const xcb_randr_set_crtc_transform_request_t *R);
   3198 
   3199 xcb_render_fixed_t *
   3200 xcb_randr_set_crtc_transform_filter_params (const xcb_randr_set_crtc_transform_request_t *R);
   3201 
   3202 int
   3203 xcb_randr_set_crtc_transform_filter_params_length (const xcb_randr_set_crtc_transform_request_t *R);
   3204 
   3205 xcb_generic_iterator_t
   3206 xcb_randr_set_crtc_transform_filter_params_end (const xcb_randr_set_crtc_transform_request_t *R);
   3207 
   3208 int
   3209 xcb_randr_get_crtc_transform_sizeof (const void  *_buffer);
   3210 
   3211 /**
   3212  *
   3213  * @param c The connection
   3214  * @return A cookie
   3215  *
   3216  * Delivers a request to the X server.
   3217  *
   3218  */
   3219 xcb_randr_get_crtc_transform_cookie_t
   3220 xcb_randr_get_crtc_transform (xcb_connection_t *c,
   3221                               xcb_randr_crtc_t  crtc);
   3222 
   3223 /**
   3224  *
   3225  * @param c The connection
   3226  * @return A cookie
   3227  *
   3228  * Delivers a request to the X server.
   3229  *
   3230  * This form can be used only if the request will cause
   3231  * a reply to be generated. Any returned error will be
   3232  * placed in the event queue.
   3233  */
   3234 xcb_randr_get_crtc_transform_cookie_t
   3235 xcb_randr_get_crtc_transform_unchecked (xcb_connection_t *c,
   3236                                         xcb_randr_crtc_t  crtc);
   3237 
   3238 char *
   3239 xcb_randr_get_crtc_transform_pending_filter_name (const xcb_randr_get_crtc_transform_reply_t *R);
   3240 
   3241 int
   3242 xcb_randr_get_crtc_transform_pending_filter_name_length (const xcb_randr_get_crtc_transform_reply_t *R);
   3243 
   3244 xcb_generic_iterator_t
   3245 xcb_randr_get_crtc_transform_pending_filter_name_end (const xcb_randr_get_crtc_transform_reply_t *R);
   3246 
   3247 xcb_render_fixed_t *
   3248 xcb_randr_get_crtc_transform_pending_params (const xcb_randr_get_crtc_transform_reply_t *R);
   3249 
   3250 int
   3251 xcb_randr_get_crtc_transform_pending_params_length (const xcb_randr_get_crtc_transform_reply_t *R);
   3252 
   3253 xcb_generic_iterator_t
   3254 xcb_randr_get_crtc_transform_pending_params_end (const xcb_randr_get_crtc_transform_reply_t *R);
   3255 
   3256 char *
   3257 xcb_randr_get_crtc_transform_current_filter_name (const xcb_randr_get_crtc_transform_reply_t *R);
   3258 
   3259 int
   3260 xcb_randr_get_crtc_transform_current_filter_name_length (const xcb_randr_get_crtc_transform_reply_t *R);
   3261 
   3262 xcb_generic_iterator_t
   3263 xcb_randr_get_crtc_transform_current_filter_name_end (const xcb_randr_get_crtc_transform_reply_t *R);
   3264 
   3265 xcb_render_fixed_t *
   3266 xcb_randr_get_crtc_transform_current_params (const xcb_randr_get_crtc_transform_reply_t *R);
   3267 
   3268 int
   3269 xcb_randr_get_crtc_transform_current_params_length (const xcb_randr_get_crtc_transform_reply_t *R);
   3270 
   3271 xcb_generic_iterator_t
   3272 xcb_randr_get_crtc_transform_current_params_end (const xcb_randr_get_crtc_transform_reply_t *R);
   3273 
   3274 /**
   3275  * Return the reply
   3276  * @param c      The connection
   3277  * @param cookie The cookie
   3278  * @param e      The xcb_generic_error_t supplied
   3279  *
   3280  * Returns the reply of the request asked by
   3281  *
   3282  * The parameter @p e supplied to this function must be NULL if
   3283  * xcb_randr_get_crtc_transform_unchecked(). is used.
   3284  * Otherwise, it stores the error if any.
   3285  *
   3286  * The returned value must be freed by the caller using free().
   3287  */
   3288 xcb_randr_get_crtc_transform_reply_t *
   3289 xcb_randr_get_crtc_transform_reply (xcb_connection_t                       *c,
   3290                                     xcb_randr_get_crtc_transform_cookie_t   cookie  /**< */,
   3291                                     xcb_generic_error_t                   **e);
   3292 
   3293 /**
   3294  *
   3295  * @param c The connection
   3296  * @return A cookie
   3297  *
   3298  * Delivers a request to the X server.
   3299  *
   3300  */
   3301 xcb_randr_get_panning_cookie_t
   3302 xcb_randr_get_panning (xcb_connection_t *c,
   3303                        xcb_randr_crtc_t  crtc);
   3304 
   3305 /**
   3306  *
   3307  * @param c The connection
   3308  * @return A cookie
   3309  *
   3310  * Delivers a request to the X server.
   3311  *
   3312  * This form can be used only if the request will cause
   3313  * a reply to be generated. Any returned error will be
   3314  * placed in the event queue.
   3315  */
   3316 xcb_randr_get_panning_cookie_t
   3317 xcb_randr_get_panning_unchecked (xcb_connection_t *c,
   3318                                  xcb_randr_crtc_t  crtc);
   3319 
   3320 /**
   3321  * Return the reply
   3322  * @param c      The connection
   3323  * @param cookie The cookie
   3324  * @param e      The xcb_generic_error_t supplied
   3325  *
   3326  * Returns the reply of the request asked by
   3327  *
   3328  * The parameter @p e supplied to this function must be NULL if
   3329  * xcb_randr_get_panning_unchecked(). is used.
   3330  * Otherwise, it stores the error if any.
   3331  *
   3332  * The returned value must be freed by the caller using free().
   3333  */
   3334 xcb_randr_get_panning_reply_t *
   3335 xcb_randr_get_panning_reply (xcb_connection_t                *c,
   3336                              xcb_randr_get_panning_cookie_t   cookie  /**< */,
   3337                              xcb_generic_error_t            **e);
   3338 
   3339 /**
   3340  *
   3341  * @param c The connection
   3342  * @return A cookie
   3343  *
   3344  * Delivers a request to the X server.
   3345  *
   3346  */
   3347 xcb_randr_set_panning_cookie_t
   3348 xcb_randr_set_panning (xcb_connection_t *c,
   3349                        xcb_randr_crtc_t  crtc,
   3350                        xcb_timestamp_t   timestamp,
   3351                        uint16_t          left,
   3352                        uint16_t          top,
   3353                        uint16_t          width,
   3354                        uint16_t          height,
   3355                        uint16_t          track_left,
   3356                        uint16_t          track_top,
   3357                        uint16_t          track_width,
   3358                        uint16_t          track_height,
   3359                        int16_t           border_left,
   3360                        int16_t           border_top,
   3361                        int16_t           border_right,
   3362                        int16_t           border_bottom);
   3363 
   3364 /**
   3365  *
   3366  * @param c The connection
   3367  * @return A cookie
   3368  *
   3369  * Delivers a request to the X server.
   3370  *
   3371  * This form can be used only if the request will cause
   3372  * a reply to be generated. Any returned error will be
   3373  * placed in the event queue.
   3374  */
   3375 xcb_randr_set_panning_cookie_t
   3376 xcb_randr_set_panning_unchecked (xcb_connection_t *c,
   3377                                  xcb_randr_crtc_t  crtc,
   3378                                  xcb_timestamp_t   timestamp,
   3379                                  uint16_t          left,
   3380                                  uint16_t          top,
   3381                                  uint16_t          width,
   3382                                  uint16_t          height,
   3383                                  uint16_t          track_left,
   3384                                  uint16_t          track_top,
   3385                                  uint16_t          track_width,
   3386                                  uint16_t          track_height,
   3387                                  int16_t           border_left,
   3388                                  int16_t           border_top,
   3389                                  int16_t           border_right,
   3390                                  int16_t           border_bottom);
   3391 
   3392 /**
   3393  * Return the reply
   3394  * @param c      The connection
   3395  * @param cookie The cookie
   3396  * @param e      The xcb_generic_error_t supplied
   3397  *
   3398  * Returns the reply of the request asked by
   3399  *
   3400  * The parameter @p e supplied to this function must be NULL if
   3401  * xcb_randr_set_panning_unchecked(). is used.
   3402  * Otherwise, it stores the error if any.
   3403  *
   3404  * The returned value must be freed by the caller using free().
   3405  */
   3406 xcb_randr_set_panning_reply_t *
   3407 xcb_randr_set_panning_reply (xcb_connection_t                *c,
   3408                              xcb_randr_set_panning_cookie_t   cookie  /**< */,
   3409                              xcb_generic_error_t            **e);
   3410 
   3411 /**
   3412  *
   3413  * @param c The connection
   3414  * @return A cookie
   3415  *
   3416  * Delivers a request to the X server.
   3417  *
   3418  * This form can be used only if the request will not cause
   3419  * a reply to be generated. Any returned error will be
   3420  * saved for handling by xcb_request_check().
   3421  */
   3422 xcb_void_cookie_t
   3423 xcb_randr_set_output_primary_checked (xcb_connection_t   *c,
   3424                                       xcb_window_t        window,
   3425                                       xcb_randr_output_t  output);
   3426 
   3427 /**
   3428  *
   3429  * @param c The connection
   3430  * @return A cookie
   3431  *
   3432  * Delivers a request to the X server.
   3433  *
   3434  */
   3435 xcb_void_cookie_t
   3436 xcb_randr_set_output_primary (xcb_connection_t   *c,
   3437                               xcb_window_t        window,
   3438                               xcb_randr_output_t  output);
   3439 
   3440 /**
   3441  *
   3442  * @param c The connection
   3443  * @return A cookie
   3444  *
   3445  * Delivers a request to the X server.
   3446  *
   3447  */
   3448 xcb_randr_get_output_primary_cookie_t
   3449 xcb_randr_get_output_primary (xcb_connection_t *c,
   3450                               xcb_window_t      window);
   3451 
   3452 /**
   3453  *
   3454  * @param c The connection
   3455  * @return A cookie
   3456  *
   3457  * Delivers a request to the X server.
   3458  *
   3459  * This form can be used only if the request will cause
   3460  * a reply to be generated. Any returned error will be
   3461  * placed in the event queue.
   3462  */
   3463 xcb_randr_get_output_primary_cookie_t
   3464 xcb_randr_get_output_primary_unchecked (xcb_connection_t *c,
   3465                                         xcb_window_t      window);
   3466 
   3467 /**
   3468  * Return the reply
   3469  * @param c      The connection
   3470  * @param cookie The cookie
   3471  * @param e      The xcb_generic_error_t supplied
   3472  *
   3473  * Returns the reply of the request asked by
   3474  *
   3475  * The parameter @p e supplied to this function must be NULL if
   3476  * xcb_randr_get_output_primary_unchecked(). is used.
   3477  * Otherwise, it stores the error if any.
   3478  *
   3479  * The returned value must be freed by the caller using free().
   3480  */
   3481 xcb_randr_get_output_primary_reply_t *
   3482 xcb_randr_get_output_primary_reply (xcb_connection_t                       *c,
   3483                                     xcb_randr_get_output_primary_cookie_t   cookie  /**< */,
   3484                                     xcb_generic_error_t                   **e);
   3485 
   3486 int
   3487 xcb_randr_get_providers_sizeof (const void  *_buffer);
   3488 
   3489 /**
   3490  *
   3491  * @param c The connection
   3492  * @return A cookie
   3493  *
   3494  * Delivers a request to the X server.
   3495  *
   3496  */
   3497 xcb_randr_get_providers_cookie_t
   3498 xcb_randr_get_providers (xcb_connection_t *c,
   3499                          xcb_window_t      window);
   3500 
   3501 /**
   3502  *
   3503  * @param c The connection
   3504  * @return A cookie
   3505  *
   3506  * Delivers a request to the X server.
   3507  *
   3508  * This form can be used only if the request will cause
   3509  * a reply to be generated. Any returned error will be
   3510  * placed in the event queue.
   3511  */
   3512 xcb_randr_get_providers_cookie_t
   3513 xcb_randr_get_providers_unchecked (xcb_connection_t *c,
   3514                                    xcb_window_t      window);
   3515 
   3516 xcb_randr_provider_t *
   3517 xcb_randr_get_providers_providers (const xcb_randr_get_providers_reply_t *R);
   3518 
   3519 int
   3520 xcb_randr_get_providers_providers_length (const xcb_randr_get_providers_reply_t *R);
   3521 
   3522 xcb_generic_iterator_t
   3523 xcb_randr_get_providers_providers_end (const xcb_randr_get_providers_reply_t *R);
   3524 
   3525 /**
   3526  * Return the reply
   3527  * @param c      The connection
   3528  * @param cookie The cookie
   3529  * @param e      The xcb_generic_error_t supplied
   3530  *
   3531  * Returns the reply of the request asked by
   3532  *
   3533  * The parameter @p e supplied to this function must be NULL if
   3534  * xcb_randr_get_providers_unchecked(). is used.
   3535  * Otherwise, it stores the error if any.
   3536  *
   3537  * The returned value must be freed by the caller using free().
   3538  */
   3539 xcb_randr_get_providers_reply_t *
   3540 xcb_randr_get_providers_reply (xcb_connection_t                  *c,
   3541                                xcb_randr_get_providers_cookie_t   cookie  /**< */,
   3542                                xcb_generic_error_t              **e);
   3543 
   3544 int
   3545 xcb_randr_get_provider_info_sizeof (const void  *_buffer);
   3546 
   3547 /**
   3548  *
   3549  * @param c The connection
   3550  * @return A cookie
   3551  *
   3552  * Delivers a request to the X server.
   3553  *
   3554  */
   3555 xcb_randr_get_provider_info_cookie_t
   3556 xcb_randr_get_provider_info (xcb_connection_t     *c,
   3557                              xcb_randr_provider_t  provider,
   3558                              xcb_timestamp_t       config_timestamp);
   3559 
   3560 /**
   3561  *
   3562  * @param c The connection
   3563  * @return A cookie
   3564  *
   3565  * Delivers a request to the X server.
   3566  *
   3567  * This form can be used only if the request will cause
   3568  * a reply to be generated. Any returned error will be
   3569  * placed in the event queue.
   3570  */
   3571 xcb_randr_get_provider_info_cookie_t
   3572 xcb_randr_get_provider_info_unchecked (xcb_connection_t     *c,
   3573                                        xcb_randr_provider_t  provider,
   3574                                        xcb_timestamp_t       config_timestamp);
   3575 
   3576 xcb_randr_crtc_t *
   3577 xcb_randr_get_provider_info_crtcs (const xcb_randr_get_provider_info_reply_t *R);
   3578 
   3579 int
   3580 xcb_randr_get_provider_info_crtcs_length (const xcb_randr_get_provider_info_reply_t *R);
   3581 
   3582 xcb_generic_iterator_t
   3583 xcb_randr_get_provider_info_crtcs_end (const xcb_randr_get_provider_info_reply_t *R);
   3584 
   3585 xcb_randr_output_t *
   3586 xcb_randr_get_provider_info_outputs (const xcb_randr_get_provider_info_reply_t *R);
   3587 
   3588 int
   3589 xcb_randr_get_provider_info_outputs_length (const xcb_randr_get_provider_info_reply_t *R);
   3590 
   3591 xcb_generic_iterator_t
   3592 xcb_randr_get_provider_info_outputs_end (const xcb_randr_get_provider_info_reply_t *R);
   3593 
   3594 xcb_randr_provider_t *
   3595 xcb_randr_get_provider_info_associated_providers (const xcb_randr_get_provider_info_reply_t *R);
   3596 
   3597 int
   3598 xcb_randr_get_provider_info_associated_providers_length (const xcb_randr_get_provider_info_reply_t *R);
   3599 
   3600 xcb_generic_iterator_t
   3601 xcb_randr_get_provider_info_associated_providers_end (const xcb_randr_get_provider_info_reply_t *R);
   3602 
   3603 uint32_t *
   3604 xcb_randr_get_provider_info_associated_capability (const xcb_randr_get_provider_info_reply_t *R);
   3605 
   3606 int
   3607 xcb_randr_get_provider_info_associated_capability_length (const xcb_randr_get_provider_info_reply_t *R);
   3608 
   3609 xcb_generic_iterator_t
   3610 xcb_randr_get_provider_info_associated_capability_end (const xcb_randr_get_provider_info_reply_t *R);
   3611 
   3612 char *
   3613 xcb_randr_get_provider_info_name (const xcb_randr_get_provider_info_reply_t *R);
   3614 
   3615 int
   3616 xcb_randr_get_provider_info_name_length (const xcb_randr_get_provider_info_reply_t *R);
   3617 
   3618 xcb_generic_iterator_t
   3619 xcb_randr_get_provider_info_name_end (const xcb_randr_get_provider_info_reply_t *R);
   3620 
   3621 /**
   3622  * Return the reply
   3623  * @param c      The connection
   3624  * @param cookie The cookie
   3625  * @param e      The xcb_generic_error_t supplied
   3626  *
   3627  * Returns the reply of the request asked by
   3628  *
   3629  * The parameter @p e supplied to this function must be NULL if
   3630  * xcb_randr_get_provider_info_unchecked(). is used.
   3631  * Otherwise, it stores the error if any.
   3632  *
   3633  * The returned value must be freed by the caller using free().
   3634  */
   3635 xcb_randr_get_provider_info_reply_t *
   3636 xcb_randr_get_provider_info_reply (xcb_connection_t                      *c,
   3637                                    xcb_randr_get_provider_info_cookie_t   cookie  /**< */,
   3638                                    xcb_generic_error_t                  **e);
   3639 
   3640 /**
   3641  *
   3642  * @param c The connection
   3643  * @return A cookie
   3644  *
   3645  * Delivers a request to the X server.
   3646  *
   3647  * This form can be used only if the request will not cause
   3648  * a reply to be generated. Any returned error will be
   3649  * saved for handling by xcb_request_check().
   3650  */
   3651 xcb_void_cookie_t
   3652 xcb_randr_set_provider_offload_sink_checked (xcb_connection_t     *c,
   3653                                              xcb_randr_provider_t  provider,
   3654                                              xcb_randr_provider_t  sink_provider,
   3655                                              xcb_timestamp_t       config_timestamp);
   3656 
   3657 /**
   3658  *
   3659  * @param c The connection
   3660  * @return A cookie
   3661  *
   3662  * Delivers a request to the X server.
   3663  *
   3664  */
   3665 xcb_void_cookie_t
   3666 xcb_randr_set_provider_offload_sink (xcb_connection_t     *c,
   3667                                      xcb_randr_provider_t  provider,
   3668                                      xcb_randr_provider_t  sink_provider,
   3669                                      xcb_timestamp_t       config_timestamp);
   3670 
   3671 /**
   3672  *
   3673  * @param c The connection
   3674  * @return A cookie
   3675  *
   3676  * Delivers a request to the X server.
   3677  *
   3678  * This form can be used only if the request will not cause
   3679  * a reply to be generated. Any returned error will be
   3680  * saved for handling by xcb_request_check().
   3681  */
   3682 xcb_void_cookie_t
   3683 xcb_randr_set_provider_output_source_checked (xcb_connection_t     *c,
   3684                                               xcb_randr_provider_t  provider,
   3685                                               xcb_randr_provider_t  source_provider,
   3686                                               xcb_timestamp_t       config_timestamp);
   3687 
   3688 /**
   3689  *
   3690  * @param c The connection
   3691  * @return A cookie
   3692  *
   3693  * Delivers a request to the X server.
   3694  *
   3695  */
   3696 xcb_void_cookie_t
   3697 xcb_randr_set_provider_output_source (xcb_connection_t     *c,
   3698                                       xcb_randr_provider_t  provider,
   3699                                       xcb_randr_provider_t  source_provider,
   3700                                       xcb_timestamp_t       config_timestamp);
   3701 
   3702 int
   3703 xcb_randr_list_provider_properties_sizeof (const void  *_buffer);
   3704 
   3705 /**
   3706  *
   3707  * @param c The connection
   3708  * @return A cookie
   3709  *
   3710  * Delivers a request to the X server.
   3711  *
   3712  */
   3713 xcb_randr_list_provider_properties_cookie_t
   3714 xcb_randr_list_provider_properties (xcb_connection_t     *c,
   3715                                     xcb_randr_provider_t  provider);
   3716 
   3717 /**
   3718  *
   3719  * @param c The connection
   3720  * @return A cookie
   3721  *
   3722  * Delivers a request to the X server.
   3723  *
   3724  * This form can be used only if the request will cause
   3725  * a reply to be generated. Any returned error will be
   3726  * placed in the event queue.
   3727  */
   3728 xcb_randr_list_provider_properties_cookie_t
   3729 xcb_randr_list_provider_properties_unchecked (xcb_connection_t     *c,
   3730                                               xcb_randr_provider_t  provider);
   3731 
   3732 xcb_atom_t *
   3733 xcb_randr_list_provider_properties_atoms (const xcb_randr_list_provider_properties_reply_t *R);
   3734 
   3735 int
   3736 xcb_randr_list_provider_properties_atoms_length (const xcb_randr_list_provider_properties_reply_t *R);
   3737 
   3738 xcb_generic_iterator_t
   3739 xcb_randr_list_provider_properties_atoms_end (const xcb_randr_list_provider_properties_reply_t *R);
   3740 
   3741 /**
   3742  * Return the reply
   3743  * @param c      The connection
   3744  * @param cookie The cookie
   3745  * @param e      The xcb_generic_error_t supplied
   3746  *
   3747  * Returns the reply of the request asked by
   3748  *
   3749  * The parameter @p e supplied to this function must be NULL if
   3750  * xcb_randr_list_provider_properties_unchecked(). is used.
   3751  * Otherwise, it stores the error if any.
   3752  *
   3753  * The returned value must be freed by the caller using free().
   3754  */
   3755 xcb_randr_list_provider_properties_reply_t *
   3756 xcb_randr_list_provider_properties_reply (xcb_connection_t                             *c,
   3757                                           xcb_randr_list_provider_properties_cookie_t   cookie  /**< */,
   3758                                           xcb_generic_error_t                         **e);
   3759 
   3760 int
   3761 xcb_randr_query_provider_property_sizeof (const void  *_buffer);
   3762 
   3763 /**
   3764  *
   3765  * @param c The connection
   3766  * @return A cookie
   3767  *
   3768  * Delivers a request to the X server.
   3769  *
   3770  */
   3771 xcb_randr_query_provider_property_cookie_t
   3772 xcb_randr_query_provider_property (xcb_connection_t     *c,
   3773                                    xcb_randr_provider_t  provider,
   3774                                    xcb_atom_t            property);
   3775 
   3776 /**
   3777  *
   3778  * @param c The connection
   3779  * @return A cookie
   3780  *
   3781  * Delivers a request to the X server.
   3782  *
   3783  * This form can be used only if the request will cause
   3784  * a reply to be generated. Any returned error will be
   3785  * placed in the event queue.
   3786  */
   3787 xcb_randr_query_provider_property_cookie_t
   3788 xcb_randr_query_provider_property_unchecked (xcb_connection_t     *c,
   3789                                              xcb_randr_provider_t  provider,
   3790                                              xcb_atom_t            property);
   3791 
   3792 int32_t *
   3793 xcb_randr_query_provider_property_valid_values (const xcb_randr_query_provider_property_reply_t *R);
   3794 
   3795 int
   3796 xcb_randr_query_provider_property_valid_values_length (const xcb_randr_query_provider_property_reply_t *R);
   3797 
   3798 xcb_generic_iterator_t
   3799 xcb_randr_query_provider_property_valid_values_end (const xcb_randr_query_provider_property_reply_t *R);
   3800 
   3801 /**
   3802  * Return the reply
   3803  * @param c      The connection
   3804  * @param cookie The cookie
   3805  * @param e      The xcb_generic_error_t supplied
   3806  *
   3807  * Returns the reply of the request asked by
   3808  *
   3809  * The parameter @p e supplied to this function must be NULL if
   3810  * xcb_randr_query_provider_property_unchecked(). is used.
   3811  * Otherwise, it stores the error if any.
   3812  *
   3813  * The returned value must be freed by the caller using free().
   3814  */
   3815 xcb_randr_query_provider_property_reply_t *
   3816 xcb_randr_query_provider_property_reply (xcb_connection_t                            *c,
   3817                                          xcb_randr_query_provider_property_cookie_t   cookie  /**< */,
   3818                                          xcb_generic_error_t                        **e);
   3819 
   3820 int
   3821 xcb_randr_configure_provider_property_sizeof (const void  *_buffer,
   3822                                               uint32_t     values_len);
   3823 
   3824 /**
   3825  *
   3826  * @param c The connection
   3827  * @return A cookie
   3828  *
   3829  * Delivers a request to the X server.
   3830  *
   3831  * This form can be used only if the request will not cause
   3832  * a reply to be generated. Any returned error will be
   3833  * saved for handling by xcb_request_check().
   3834  */
   3835 xcb_void_cookie_t
   3836 xcb_randr_configure_provider_property_checked (xcb_connection_t     *c,
   3837                                                xcb_randr_provider_t  provider,
   3838                                                xcb_atom_t            property,
   3839                                                uint8_t               pending,
   3840                                                uint8_t               range,
   3841                                                uint32_t              values_len,
   3842                                                const int32_t        *values);
   3843 
   3844 /**
   3845  *
   3846  * @param c The connection
   3847  * @return A cookie
   3848  *
   3849  * Delivers a request to the X server.
   3850  *
   3851  */
   3852 xcb_void_cookie_t
   3853 xcb_randr_configure_provider_property (xcb_connection_t     *c,
   3854                                        xcb_randr_provider_t  provider,
   3855                                        xcb_atom_t            property,
   3856                                        uint8_t               pending,
   3857                                        uint8_t               range,
   3858                                        uint32_t              values_len,
   3859                                        const int32_t        *values);
   3860 
   3861 int32_t *
   3862 xcb_randr_configure_provider_property_values (const xcb_randr_configure_provider_property_request_t *R);
   3863 
   3864 int
   3865 xcb_randr_configure_provider_property_values_length (const xcb_randr_configure_provider_property_request_t *R);
   3866 
   3867 xcb_generic_iterator_t
   3868 xcb_randr_configure_provider_property_values_end (const xcb_randr_configure_provider_property_request_t *R);
   3869 
   3870 int
   3871 xcb_randr_change_provider_property_sizeof (const void  *_buffer);
   3872 
   3873 /**
   3874  *
   3875  * @param c The connection
   3876  * @return A cookie
   3877  *
   3878  * Delivers a request to the X server.
   3879  *
   3880  * This form can be used only if the request will not cause
   3881  * a reply to be generated. Any returned error will be
   3882  * saved for handling by xcb_request_check().
   3883  */
   3884 xcb_void_cookie_t
   3885 xcb_randr_change_provider_property_checked (xcb_connection_t     *c,
   3886                                             xcb_randr_provider_t  provider,
   3887                                             xcb_atom_t            property,
   3888                                             xcb_atom_t            type,
   3889                                             uint8_t               format,
   3890                                             uint8_t               mode,
   3891                                             uint32_t              num_items,
   3892                                             const void           *data);
   3893 
   3894 /**
   3895  *
   3896  * @param c The connection
   3897  * @return A cookie
   3898  *
   3899  * Delivers a request to the X server.
   3900  *
   3901  */
   3902 xcb_void_cookie_t
   3903 xcb_randr_change_provider_property (xcb_connection_t     *c,
   3904                                     xcb_randr_provider_t  provider,
   3905                                     xcb_atom_t            property,
   3906                                     xcb_atom_t            type,
   3907                                     uint8_t               format,
   3908                                     uint8_t               mode,
   3909                                     uint32_t              num_items,
   3910                                     const void           *data);
   3911 
   3912 void *
   3913 xcb_randr_change_provider_property_data (const xcb_randr_change_provider_property_request_t *R);
   3914 
   3915 int
   3916 xcb_randr_change_provider_property_data_length (const xcb_randr_change_provider_property_request_t *R);
   3917 
   3918 xcb_generic_iterator_t
   3919 xcb_randr_change_provider_property_data_end (const xcb_randr_change_provider_property_request_t *R);
   3920 
   3921 /**
   3922  *
   3923  * @param c The connection
   3924  * @return A cookie
   3925  *
   3926  * Delivers a request to the X server.
   3927  *
   3928  * This form can be used only if the request will not cause
   3929  * a reply to be generated. Any returned error will be
   3930  * saved for handling by xcb_request_check().
   3931  */
   3932 xcb_void_cookie_t
   3933 xcb_randr_delete_provider_property_checked (xcb_connection_t     *c,
   3934                                             xcb_randr_provider_t  provider,
   3935                                             xcb_atom_t            property);
   3936 
   3937 /**
   3938  *
   3939  * @param c The connection
   3940  * @return A cookie
   3941  *
   3942  * Delivers a request to the X server.
   3943  *
   3944  */
   3945 xcb_void_cookie_t
   3946 xcb_randr_delete_provider_property (xcb_connection_t     *c,
   3947                                     xcb_randr_provider_t  provider,
   3948                                     xcb_atom_t            property);
   3949 
   3950 int
   3951 xcb_randr_get_provider_property_sizeof (const void  *_buffer);
   3952 
   3953 /**
   3954  *
   3955  * @param c The connection
   3956  * @return A cookie
   3957  *
   3958  * Delivers a request to the X server.
   3959  *
   3960  */
   3961 xcb_randr_get_provider_property_cookie_t
   3962 xcb_randr_get_provider_property (xcb_connection_t     *c,
   3963                                  xcb_randr_provider_t  provider,
   3964                                  xcb_atom_t            property,
   3965                                  xcb_atom_t            type,
   3966                                  uint32_t              long_offset,
   3967                                  uint32_t              long_length,
   3968                                  uint8_t               _delete,
   3969                                  uint8_t               pending);
   3970 
   3971 /**
   3972  *
   3973  * @param c The connection
   3974  * @return A cookie
   3975  *
   3976  * Delivers a request to the X server.
   3977  *
   3978  * This form can be used only if the request will cause
   3979  * a reply to be generated. Any returned error will be
   3980  * placed in the event queue.
   3981  */
   3982 xcb_randr_get_provider_property_cookie_t
   3983 xcb_randr_get_provider_property_unchecked (xcb_connection_t     *c,
   3984                                            xcb_randr_provider_t  provider,
   3985                                            xcb_atom_t            property,
   3986                                            xcb_atom_t            type,
   3987                                            uint32_t              long_offset,
   3988                                            uint32_t              long_length,
   3989                                            uint8_t               _delete,
   3990                                            uint8_t               pending);
   3991 
   3992 void *
   3993 xcb_randr_get_provider_property_data (const xcb_randr_get_provider_property_reply_t *R);
   3994 
   3995 int
   3996 xcb_randr_get_provider_property_data_length (const xcb_randr_get_provider_property_reply_t *R);
   3997 
   3998 xcb_generic_iterator_t
   3999 xcb_randr_get_provider_property_data_end (const xcb_randr_get_provider_property_reply_t *R);
   4000 
   4001 /**
   4002  * Return the reply
   4003  * @param c      The connection
   4004  * @param cookie The cookie
   4005  * @param e      The xcb_generic_error_t supplied
   4006  *
   4007  * Returns the reply of the request asked by
   4008  *
   4009  * The parameter @p e supplied to this function must be NULL if
   4010  * xcb_randr_get_provider_property_unchecked(). is used.
   4011  * Otherwise, it stores the error if any.
   4012  *
   4013  * The returned value must be freed by the caller using free().
   4014  */
   4015 xcb_randr_get_provider_property_reply_t *
   4016 xcb_randr_get_provider_property_reply (xcb_connection_t                          *c,
   4017                                        xcb_randr_get_provider_property_cookie_t   cookie  /**< */,
   4018                                        xcb_generic_error_t                      **e);
   4019 
   4020 /**
   4021  * Get the next element of the iterator
   4022  * @param i Pointer to a xcb_randr_crtc_change_iterator_t
   4023  *
   4024  * Get the next element in the iterator. The member rem is
   4025  * decreased by one. The member data points to the next
   4026  * element. The member index is increased by sizeof(xcb_randr_crtc_change_t)
   4027  */
   4028 void
   4029 xcb_randr_crtc_change_next (xcb_randr_crtc_change_iterator_t *i);
   4030 
   4031 /**
   4032  * Return the iterator pointing to the last element
   4033  * @param i An xcb_randr_crtc_change_iterator_t
   4034  * @return  The iterator pointing to the last element
   4035  *
   4036  * Set the current element in the iterator to the last element.
   4037  * The member rem is set to 0. The member data points to the
   4038  * last element.
   4039  */
   4040 xcb_generic_iterator_t
   4041 xcb_randr_crtc_change_end (xcb_randr_crtc_change_iterator_t i);
   4042 
   4043 /**
   4044  * Get the next element of the iterator
   4045  * @param i Pointer to a xcb_randr_output_change_iterator_t
   4046  *
   4047  * Get the next element in the iterator. The member rem is
   4048  * decreased by one. The member data points to the next
   4049  * element. The member index is increased by sizeof(xcb_randr_output_change_t)
   4050  */
   4051 void
   4052 xcb_randr_output_change_next (xcb_randr_output_change_iterator_t *i);
   4053 
   4054 /**
   4055  * Return the iterator pointing to the last element
   4056  * @param i An xcb_randr_output_change_iterator_t
   4057  * @return  The iterator pointing to the last element
   4058  *
   4059  * Set the current element in the iterator to the last element.
   4060  * The member rem is set to 0. The member data points to the
   4061  * last element.
   4062  */
   4063 xcb_generic_iterator_t
   4064 xcb_randr_output_change_end (xcb_randr_output_change_iterator_t i);
   4065 
   4066 /**
   4067  * Get the next element of the iterator
   4068  * @param i Pointer to a xcb_randr_output_property_iterator_t
   4069  *
   4070  * Get the next element in the iterator. The member rem is
   4071  * decreased by one. The member data points to the next
   4072  * element. The member index is increased by sizeof(xcb_randr_output_property_t)
   4073  */
   4074 void
   4075 xcb_randr_output_property_next (xcb_randr_output_property_iterator_t *i);
   4076 
   4077 /**
   4078  * Return the iterator pointing to the last element
   4079  * @param i An xcb_randr_output_property_iterator_t
   4080  * @return  The iterator pointing to the last element
   4081  *
   4082  * Set the current element in the iterator to the last element.
   4083  * The member rem is set to 0. The member data points to the
   4084  * last element.
   4085  */
   4086 xcb_generic_iterator_t
   4087 xcb_randr_output_property_end (xcb_randr_output_property_iterator_t i);
   4088 
   4089 /**
   4090  * Get the next element of the iterator
   4091  * @param i Pointer to a xcb_randr_provider_change_iterator_t
   4092  *
   4093  * Get the next element in the iterator. The member rem is
   4094  * decreased by one. The member data points to the next
   4095  * element. The member index is increased by sizeof(xcb_randr_provider_change_t)
   4096  */
   4097 void
   4098 xcb_randr_provider_change_next (xcb_randr_provider_change_iterator_t *i);
   4099 
   4100 /**
   4101  * Return the iterator pointing to the last element
   4102  * @param i An xcb_randr_provider_change_iterator_t
   4103  * @return  The iterator pointing to the last element
   4104  *
   4105  * Set the current element in the iterator to the last element.
   4106  * The member rem is set to 0. The member data points to the
   4107  * last element.
   4108  */
   4109 xcb_generic_iterator_t
   4110 xcb_randr_provider_change_end (xcb_randr_provider_change_iterator_t i);
   4111 
   4112 /**
   4113  * Get the next element of the iterator
   4114  * @param i Pointer to a xcb_randr_provider_property_iterator_t
   4115  *
   4116  * Get the next element in the iterator. The member rem is
   4117  * decreased by one. The member data points to the next
   4118  * element. The member index is increased by sizeof(xcb_randr_provider_property_t)
   4119  */
   4120 void
   4121 xcb_randr_provider_property_next (xcb_randr_provider_property_iterator_t *i);
   4122 
   4123 /**
   4124  * Return the iterator pointing to the last element
   4125  * @param i An xcb_randr_provider_property_iterator_t
   4126  * @return  The iterator pointing to the last element
   4127  *
   4128  * Set the current element in the iterator to the last element.
   4129  * The member rem is set to 0. The member data points to the
   4130  * last element.
   4131  */
   4132 xcb_generic_iterator_t
   4133 xcb_randr_provider_property_end (xcb_randr_provider_property_iterator_t i);
   4134 
   4135 /**
   4136  * Get the next element of the iterator
   4137  * @param i Pointer to a xcb_randr_resource_change_iterator_t
   4138  *
   4139  * Get the next element in the iterator. The member rem is
   4140  * decreased by one. The member data points to the next
   4141  * element. The member index is increased by sizeof(xcb_randr_resource_change_t)
   4142  */
   4143 void
   4144 xcb_randr_resource_change_next (xcb_randr_resource_change_iterator_t *i);
   4145 
   4146 /**
   4147  * Return the iterator pointing to the last element
   4148  * @param i An xcb_randr_resource_change_iterator_t
   4149  * @return  The iterator pointing to the last element
   4150  *
   4151  * Set the current element in the iterator to the last element.
   4152  * The member rem is set to 0. The member data points to the
   4153  * last element.
   4154  */
   4155 xcb_generic_iterator_t
   4156 xcb_randr_resource_change_end (xcb_randr_resource_change_iterator_t i);
   4157 
   4158 /**
   4159  * Get the next element of the iterator
   4160  * @param i Pointer to a xcb_randr_notify_data_iterator_t
   4161  *
   4162  * Get the next element in the iterator. The member rem is
   4163  * decreased by one. The member data points to the next
   4164  * element. The member index is increased by sizeof(xcb_randr_notify_data_t)
   4165  */
   4166 void
   4167 xcb_randr_notify_data_next (xcb_randr_notify_data_iterator_t *i);
   4168 
   4169 /**
   4170  * Return the iterator pointing to the last element
   4171  * @param i An xcb_randr_notify_data_iterator_t
   4172  * @return  The iterator pointing to the last element
   4173  *
   4174  * Set the current element in the iterator to the last element.
   4175  * The member rem is set to 0. The member data points to the
   4176  * last element.
   4177  */
   4178 xcb_generic_iterator_t
   4179 xcb_randr_notify_data_end (xcb_randr_notify_data_iterator_t i);
   4180 
   4181 int
   4182 xcb_randr_monitor_info_sizeof (const void  *_buffer);
   4183 
   4184 xcb_randr_output_t *
   4185 xcb_randr_monitor_info_outputs (const xcb_randr_monitor_info_t *R);
   4186 
   4187 int
   4188 xcb_randr_monitor_info_outputs_length (const xcb_randr_monitor_info_t *R);
   4189 
   4190 xcb_generic_iterator_t
   4191 xcb_randr_monitor_info_outputs_end (const xcb_randr_monitor_info_t *R);
   4192 
   4193 /**
   4194  * Get the next element of the iterator
   4195  * @param i Pointer to a xcb_randr_monitor_info_iterator_t
   4196  *
   4197  * Get the next element in the iterator. The member rem is
   4198  * decreased by one. The member data points to the next
   4199  * element. The member index is increased by sizeof(xcb_randr_monitor_info_t)
   4200  */
   4201 void
   4202 xcb_randr_monitor_info_next (xcb_randr_monitor_info_iterator_t *i);
   4203 
   4204 /**
   4205  * Return the iterator pointing to the last element
   4206  * @param i An xcb_randr_monitor_info_iterator_t
   4207  * @return  The iterator pointing to the last element
   4208  *
   4209  * Set the current element in the iterator to the last element.
   4210  * The member rem is set to 0. The member data points to the
   4211  * last element.
   4212  */
   4213 xcb_generic_iterator_t
   4214 xcb_randr_monitor_info_end (xcb_randr_monitor_info_iterator_t i);
   4215 
   4216 int
   4217 xcb_randr_get_monitors_sizeof (const void  *_buffer);
   4218 
   4219 /**
   4220  *
   4221  * @param c The connection
   4222  * @return A cookie
   4223  *
   4224  * Delivers a request to the X server.
   4225  *
   4226  */
   4227 xcb_randr_get_monitors_cookie_t
   4228 xcb_randr_get_monitors (xcb_connection_t *c,
   4229                         xcb_window_t      window,
   4230                         uint8_t           get_active);
   4231 
   4232 /**
   4233  *
   4234  * @param c The connection
   4235  * @return A cookie
   4236  *
   4237  * Delivers a request to the X server.
   4238  *
   4239  * This form can be used only if the request will cause
   4240  * a reply to be generated. Any returned error will be
   4241  * placed in the event queue.
   4242  */
   4243 xcb_randr_get_monitors_cookie_t
   4244 xcb_randr_get_monitors_unchecked (xcb_connection_t *c,
   4245                                   xcb_window_t      window,
   4246                                   uint8_t           get_active);
   4247 
   4248 int
   4249 xcb_randr_get_monitors_monitors_length (const xcb_randr_get_monitors_reply_t *R);
   4250 
   4251 xcb_randr_monitor_info_iterator_t
   4252 xcb_randr_get_monitors_monitors_iterator (const xcb_randr_get_monitors_reply_t *R);
   4253 
   4254 /**
   4255  * Return the reply
   4256  * @param c      The connection
   4257  * @param cookie The cookie
   4258  * @param e      The xcb_generic_error_t supplied
   4259  *
   4260  * Returns the reply of the request asked by
   4261  *
   4262  * The parameter @p e supplied to this function must be NULL if
   4263  * xcb_randr_get_monitors_unchecked(). is used.
   4264  * Otherwise, it stores the error if any.
   4265  *
   4266  * The returned value must be freed by the caller using free().
   4267  */
   4268 xcb_randr_get_monitors_reply_t *
   4269 xcb_randr_get_monitors_reply (xcb_connection_t                 *c,
   4270                               xcb_randr_get_monitors_cookie_t   cookie  /**< */,
   4271                               xcb_generic_error_t             **e);
   4272 
   4273 int
   4274 xcb_randr_set_monitor_sizeof (const void  *_buffer);
   4275 
   4276 /**
   4277  *
   4278  * @param c The connection
   4279  * @return A cookie
   4280  *
   4281  * Delivers a request to the X server.
   4282  *
   4283  * This form can be used only if the request will not cause
   4284  * a reply to be generated. Any returned error will be
   4285  * saved for handling by xcb_request_check().
   4286  */
   4287 xcb_void_cookie_t
   4288 xcb_randr_set_monitor_checked (xcb_connection_t         *c,
   4289                                xcb_window_t              window,
   4290                                xcb_randr_monitor_info_t *monitorinfo);
   4291 
   4292 /**
   4293  *
   4294  * @param c The connection
   4295  * @return A cookie
   4296  *
   4297  * Delivers a request to the X server.
   4298  *
   4299  */
   4300 xcb_void_cookie_t
   4301 xcb_randr_set_monitor (xcb_connection_t         *c,
   4302                        xcb_window_t              window,
   4303                        xcb_randr_monitor_info_t *monitorinfo);
   4304 
   4305 xcb_randr_monitor_info_t *
   4306 xcb_randr_set_monitor_monitorinfo (const xcb_randr_set_monitor_request_t *R);
   4307 
   4308 /**
   4309  *
   4310  * @param c The connection
   4311  * @return A cookie
   4312  *
   4313  * Delivers a request to the X server.
   4314  *
   4315  * This form can be used only if the request will not cause
   4316  * a reply to be generated. Any returned error will be
   4317  * saved for handling by xcb_request_check().
   4318  */
   4319 xcb_void_cookie_t
   4320 xcb_randr_delete_monitor_checked (xcb_connection_t *c,
   4321                                   xcb_window_t      window,
   4322                                   xcb_atom_t        name);
   4323 
   4324 /**
   4325  *
   4326  * @param c The connection
   4327  * @return A cookie
   4328  *
   4329  * Delivers a request to the X server.
   4330  *
   4331  */
   4332 xcb_void_cookie_t
   4333 xcb_randr_delete_monitor (xcb_connection_t *c,
   4334                           xcb_window_t      window,
   4335                           xcb_atom_t        name);
   4336 
   4337 
   4338 #ifdef __cplusplus
   4339 }
   4340 #endif
   4341 
   4342 #endif
   4343 
   4344 /**
   4345  * @}
   4346  */
   4347