Home | History | Annotate | Line # | Download | only in files
xinerama.c revision 1.1.12.1
      1       1.1  mrg /*
      2       1.1  mrg  * This file generated automatically from xinerama.xml by c_client.py.
      3       1.1  mrg  * Edit at your peril.
      4       1.1  mrg  */
      5       1.1  mrg 
      6  1.1.12.1  tls #ifdef HAVE_CONFIG_H
      7  1.1.12.1  tls #include "config.h"
      8  1.1.12.1  tls #endif
      9  1.1.12.1  tls #include <stdlib.h>
     10       1.1  mrg #include <string.h>
     11       1.1  mrg #include <assert.h>
     12  1.1.12.1  tls #include <stddef.h>  /* for offsetof() */
     13       1.1  mrg #include "xcbext.h"
     14       1.1  mrg #include "xinerama.h"
     15  1.1.12.1  tls 
     16  1.1.12.1  tls #define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member)
     17       1.1  mrg #include "xproto.h"
     18       1.1  mrg 
     19       1.1  mrg xcb_extension_t xcb_xinerama_id = { "XINERAMA", 0 };
     20       1.1  mrg 
     21       1.1  mrg 
     22       1.1  mrg /*****************************************************************************
     23       1.1  mrg  **
     24       1.1  mrg  ** void xcb_xinerama_screen_info_next
     25       1.1  mrg  **
     26       1.1  mrg  ** @param xcb_xinerama_screen_info_iterator_t *i
     27       1.1  mrg  ** @returns void
     28       1.1  mrg  **
     29       1.1  mrg  *****************************************************************************/
     30       1.1  mrg 
     31       1.1  mrg void
     32       1.1  mrg xcb_xinerama_screen_info_next (xcb_xinerama_screen_info_iterator_t *i  /**< */)
     33       1.1  mrg {
     34       1.1  mrg     --i->rem;
     35       1.1  mrg     ++i->data;
     36       1.1  mrg     i->index += sizeof(xcb_xinerama_screen_info_t);
     37       1.1  mrg }
     38       1.1  mrg 
     39       1.1  mrg 
     40       1.1  mrg /*****************************************************************************
     41       1.1  mrg  **
     42       1.1  mrg  ** xcb_generic_iterator_t xcb_xinerama_screen_info_end
     43       1.1  mrg  **
     44       1.1  mrg  ** @param xcb_xinerama_screen_info_iterator_t i
     45       1.1  mrg  ** @returns xcb_generic_iterator_t
     46       1.1  mrg  **
     47       1.1  mrg  *****************************************************************************/
     48       1.1  mrg 
     49       1.1  mrg xcb_generic_iterator_t
     50       1.1  mrg xcb_xinerama_screen_info_end (xcb_xinerama_screen_info_iterator_t i  /**< */)
     51       1.1  mrg {
     52       1.1  mrg     xcb_generic_iterator_t ret;
     53       1.1  mrg     ret.data = i.data + i.rem;
     54       1.1  mrg     ret.index = i.index + ((char *) ret.data - (char *) i.data);
     55       1.1  mrg     ret.rem = 0;
     56       1.1  mrg     return ret;
     57       1.1  mrg }
     58       1.1  mrg 
     59       1.1  mrg 
     60       1.1  mrg /*****************************************************************************
     61       1.1  mrg  **
     62       1.1  mrg  ** xcb_xinerama_query_version_cookie_t xcb_xinerama_query_version
     63       1.1  mrg  **
     64       1.1  mrg  ** @param xcb_connection_t *c
     65       1.1  mrg  ** @param uint8_t           major
     66       1.1  mrg  ** @param uint8_t           minor
     67       1.1  mrg  ** @returns xcb_xinerama_query_version_cookie_t
     68       1.1  mrg  **
     69       1.1  mrg  *****************************************************************************/
     70       1.1  mrg 
     71       1.1  mrg xcb_xinerama_query_version_cookie_t
     72       1.1  mrg xcb_xinerama_query_version (xcb_connection_t *c  /**< */,
     73       1.1  mrg                             uint8_t           major  /**< */,
     74       1.1  mrg                             uint8_t           minor  /**< */)
     75       1.1  mrg {
     76       1.1  mrg     static const xcb_protocol_request_t xcb_req = {
     77       1.1  mrg         /* count */ 2,
     78       1.1  mrg         /* ext */ &xcb_xinerama_id,
     79       1.1  mrg         /* opcode */ XCB_XINERAMA_QUERY_VERSION,
     80       1.1  mrg         /* isvoid */ 0
     81       1.1  mrg     };
     82       1.1  mrg 
     83       1.1  mrg     struct iovec xcb_parts[4];
     84       1.1  mrg     xcb_xinerama_query_version_cookie_t xcb_ret;
     85       1.1  mrg     xcb_xinerama_query_version_request_t xcb_out;
     86       1.1  mrg 
     87       1.1  mrg     xcb_out.major = major;
     88       1.1  mrg     xcb_out.minor = minor;
     89       1.1  mrg 
     90       1.1  mrg     xcb_parts[2].iov_base = (char *) &xcb_out;
     91       1.1  mrg     xcb_parts[2].iov_len = sizeof(xcb_out);
     92       1.1  mrg     xcb_parts[3].iov_base = 0;
     93       1.1  mrg     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
     94  1.1.12.1  tls 
     95       1.1  mrg     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
     96       1.1  mrg     return xcb_ret;
     97       1.1  mrg }
     98       1.1  mrg 
     99       1.1  mrg 
    100       1.1  mrg /*****************************************************************************
    101       1.1  mrg  **
    102       1.1  mrg  ** xcb_xinerama_query_version_cookie_t xcb_xinerama_query_version_unchecked
    103       1.1  mrg  **
    104       1.1  mrg  ** @param xcb_connection_t *c
    105       1.1  mrg  ** @param uint8_t           major
    106       1.1  mrg  ** @param uint8_t           minor
    107       1.1  mrg  ** @returns xcb_xinerama_query_version_cookie_t
    108       1.1  mrg  **
    109       1.1  mrg  *****************************************************************************/
    110       1.1  mrg 
    111       1.1  mrg xcb_xinerama_query_version_cookie_t
    112       1.1  mrg xcb_xinerama_query_version_unchecked (xcb_connection_t *c  /**< */,
    113       1.1  mrg                                       uint8_t           major  /**< */,
    114       1.1  mrg                                       uint8_t           minor  /**< */)
    115       1.1  mrg {
    116       1.1  mrg     static const xcb_protocol_request_t xcb_req = {
    117       1.1  mrg         /* count */ 2,
    118       1.1  mrg         /* ext */ &xcb_xinerama_id,
    119       1.1  mrg         /* opcode */ XCB_XINERAMA_QUERY_VERSION,
    120       1.1  mrg         /* isvoid */ 0
    121       1.1  mrg     };
    122       1.1  mrg 
    123       1.1  mrg     struct iovec xcb_parts[4];
    124       1.1  mrg     xcb_xinerama_query_version_cookie_t xcb_ret;
    125       1.1  mrg     xcb_xinerama_query_version_request_t xcb_out;
    126       1.1  mrg 
    127       1.1  mrg     xcb_out.major = major;
    128       1.1  mrg     xcb_out.minor = minor;
    129       1.1  mrg 
    130       1.1  mrg     xcb_parts[2].iov_base = (char *) &xcb_out;
    131       1.1  mrg     xcb_parts[2].iov_len = sizeof(xcb_out);
    132       1.1  mrg     xcb_parts[3].iov_base = 0;
    133       1.1  mrg     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    134  1.1.12.1  tls 
    135       1.1  mrg     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
    136       1.1  mrg     return xcb_ret;
    137       1.1  mrg }
    138       1.1  mrg 
    139       1.1  mrg 
    140       1.1  mrg /*****************************************************************************
    141       1.1  mrg  **
    142       1.1  mrg  ** xcb_xinerama_query_version_reply_t * xcb_xinerama_query_version_reply
    143       1.1  mrg  **
    144       1.1  mrg  ** @param xcb_connection_t                     *c
    145       1.1  mrg  ** @param xcb_xinerama_query_version_cookie_t   cookie
    146       1.1  mrg  ** @param xcb_generic_error_t                 **e
    147       1.1  mrg  ** @returns xcb_xinerama_query_version_reply_t *
    148       1.1  mrg  **
    149       1.1  mrg  *****************************************************************************/
    150       1.1  mrg 
    151       1.1  mrg xcb_xinerama_query_version_reply_t *
    152       1.1  mrg xcb_xinerama_query_version_reply (xcb_connection_t                     *c  /**< */,
    153       1.1  mrg                                   xcb_xinerama_query_version_cookie_t   cookie  /**< */,
    154       1.1  mrg                                   xcb_generic_error_t                 **e  /**< */)
    155       1.1  mrg {
    156       1.1  mrg     return (xcb_xinerama_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
    157       1.1  mrg }
    158       1.1  mrg 
    159       1.1  mrg 
    160       1.1  mrg /*****************************************************************************
    161       1.1  mrg  **
    162       1.1  mrg  ** xcb_xinerama_get_state_cookie_t xcb_xinerama_get_state
    163       1.1  mrg  **
    164       1.1  mrg  ** @param xcb_connection_t *c
    165       1.1  mrg  ** @param xcb_window_t      window
    166       1.1  mrg  ** @returns xcb_xinerama_get_state_cookie_t
    167       1.1  mrg  **
    168       1.1  mrg  *****************************************************************************/
    169       1.1  mrg 
    170       1.1  mrg xcb_xinerama_get_state_cookie_t
    171       1.1  mrg xcb_xinerama_get_state (xcb_connection_t *c  /**< */,
    172       1.1  mrg                         xcb_window_t      window  /**< */)
    173       1.1  mrg {
    174       1.1  mrg     static const xcb_protocol_request_t xcb_req = {
    175       1.1  mrg         /* count */ 2,
    176       1.1  mrg         /* ext */ &xcb_xinerama_id,
    177       1.1  mrg         /* opcode */ XCB_XINERAMA_GET_STATE,
    178       1.1  mrg         /* isvoid */ 0
    179       1.1  mrg     };
    180       1.1  mrg 
    181       1.1  mrg     struct iovec xcb_parts[4];
    182       1.1  mrg     xcb_xinerama_get_state_cookie_t xcb_ret;
    183       1.1  mrg     xcb_xinerama_get_state_request_t xcb_out;
    184       1.1  mrg 
    185       1.1  mrg     xcb_out.window = window;
    186       1.1  mrg 
    187       1.1  mrg     xcb_parts[2].iov_base = (char *) &xcb_out;
    188       1.1  mrg     xcb_parts[2].iov_len = sizeof(xcb_out);
    189       1.1  mrg     xcb_parts[3].iov_base = 0;
    190       1.1  mrg     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    191  1.1.12.1  tls 
    192       1.1  mrg     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
    193       1.1  mrg     return xcb_ret;
    194       1.1  mrg }
    195       1.1  mrg 
    196       1.1  mrg 
    197       1.1  mrg /*****************************************************************************
    198       1.1  mrg  **
    199       1.1  mrg  ** xcb_xinerama_get_state_cookie_t xcb_xinerama_get_state_unchecked
    200       1.1  mrg  **
    201       1.1  mrg  ** @param xcb_connection_t *c
    202       1.1  mrg  ** @param xcb_window_t      window
    203       1.1  mrg  ** @returns xcb_xinerama_get_state_cookie_t
    204       1.1  mrg  **
    205       1.1  mrg  *****************************************************************************/
    206       1.1  mrg 
    207       1.1  mrg xcb_xinerama_get_state_cookie_t
    208       1.1  mrg xcb_xinerama_get_state_unchecked (xcb_connection_t *c  /**< */,
    209       1.1  mrg                                   xcb_window_t      window  /**< */)
    210       1.1  mrg {
    211       1.1  mrg     static const xcb_protocol_request_t xcb_req = {
    212       1.1  mrg         /* count */ 2,
    213       1.1  mrg         /* ext */ &xcb_xinerama_id,
    214       1.1  mrg         /* opcode */ XCB_XINERAMA_GET_STATE,
    215       1.1  mrg         /* isvoid */ 0
    216       1.1  mrg     };
    217       1.1  mrg 
    218       1.1  mrg     struct iovec xcb_parts[4];
    219       1.1  mrg     xcb_xinerama_get_state_cookie_t xcb_ret;
    220       1.1  mrg     xcb_xinerama_get_state_request_t xcb_out;
    221       1.1  mrg 
    222       1.1  mrg     xcb_out.window = window;
    223       1.1  mrg 
    224       1.1  mrg     xcb_parts[2].iov_base = (char *) &xcb_out;
    225       1.1  mrg     xcb_parts[2].iov_len = sizeof(xcb_out);
    226       1.1  mrg     xcb_parts[3].iov_base = 0;
    227       1.1  mrg     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    228  1.1.12.1  tls 
    229       1.1  mrg     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
    230       1.1  mrg     return xcb_ret;
    231       1.1  mrg }
    232       1.1  mrg 
    233       1.1  mrg 
    234       1.1  mrg /*****************************************************************************
    235       1.1  mrg  **
    236       1.1  mrg  ** xcb_xinerama_get_state_reply_t * xcb_xinerama_get_state_reply
    237       1.1  mrg  **
    238       1.1  mrg  ** @param xcb_connection_t                 *c
    239       1.1  mrg  ** @param xcb_xinerama_get_state_cookie_t   cookie
    240       1.1  mrg  ** @param xcb_generic_error_t             **e
    241       1.1  mrg  ** @returns xcb_xinerama_get_state_reply_t *
    242       1.1  mrg  **
    243       1.1  mrg  *****************************************************************************/
    244       1.1  mrg 
    245       1.1  mrg xcb_xinerama_get_state_reply_t *
    246       1.1  mrg xcb_xinerama_get_state_reply (xcb_connection_t                 *c  /**< */,
    247       1.1  mrg                               xcb_xinerama_get_state_cookie_t   cookie  /**< */,
    248       1.1  mrg                               xcb_generic_error_t             **e  /**< */)
    249       1.1  mrg {
    250       1.1  mrg     return (xcb_xinerama_get_state_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
    251       1.1  mrg }
    252       1.1  mrg 
    253       1.1  mrg 
    254       1.1  mrg /*****************************************************************************
    255       1.1  mrg  **
    256       1.1  mrg  ** xcb_xinerama_get_screen_count_cookie_t xcb_xinerama_get_screen_count
    257       1.1  mrg  **
    258       1.1  mrg  ** @param xcb_connection_t *c
    259       1.1  mrg  ** @param xcb_window_t      window
    260       1.1  mrg  ** @returns xcb_xinerama_get_screen_count_cookie_t
    261       1.1  mrg  **
    262       1.1  mrg  *****************************************************************************/
    263       1.1  mrg 
    264       1.1  mrg xcb_xinerama_get_screen_count_cookie_t
    265       1.1  mrg xcb_xinerama_get_screen_count (xcb_connection_t *c  /**< */,
    266       1.1  mrg                                xcb_window_t      window  /**< */)
    267       1.1  mrg {
    268       1.1  mrg     static const xcb_protocol_request_t xcb_req = {
    269       1.1  mrg         /* count */ 2,
    270       1.1  mrg         /* ext */ &xcb_xinerama_id,
    271       1.1  mrg         /* opcode */ XCB_XINERAMA_GET_SCREEN_COUNT,
    272       1.1  mrg         /* isvoid */ 0
    273       1.1  mrg     };
    274       1.1  mrg 
    275       1.1  mrg     struct iovec xcb_parts[4];
    276       1.1  mrg     xcb_xinerama_get_screen_count_cookie_t xcb_ret;
    277       1.1  mrg     xcb_xinerama_get_screen_count_request_t xcb_out;
    278       1.1  mrg 
    279       1.1  mrg     xcb_out.window = window;
    280       1.1  mrg 
    281       1.1  mrg     xcb_parts[2].iov_base = (char *) &xcb_out;
    282       1.1  mrg     xcb_parts[2].iov_len = sizeof(xcb_out);
    283       1.1  mrg     xcb_parts[3].iov_base = 0;
    284       1.1  mrg     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    285  1.1.12.1  tls 
    286       1.1  mrg     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
    287       1.1  mrg     return xcb_ret;
    288       1.1  mrg }
    289       1.1  mrg 
    290       1.1  mrg 
    291       1.1  mrg /*****************************************************************************
    292       1.1  mrg  **
    293       1.1  mrg  ** xcb_xinerama_get_screen_count_cookie_t xcb_xinerama_get_screen_count_unchecked
    294       1.1  mrg  **
    295       1.1  mrg  ** @param xcb_connection_t *c
    296       1.1  mrg  ** @param xcb_window_t      window
    297       1.1  mrg  ** @returns xcb_xinerama_get_screen_count_cookie_t
    298       1.1  mrg  **
    299       1.1  mrg  *****************************************************************************/
    300       1.1  mrg 
    301       1.1  mrg xcb_xinerama_get_screen_count_cookie_t
    302       1.1  mrg xcb_xinerama_get_screen_count_unchecked (xcb_connection_t *c  /**< */,
    303       1.1  mrg                                          xcb_window_t      window  /**< */)
    304       1.1  mrg {
    305       1.1  mrg     static const xcb_protocol_request_t xcb_req = {
    306       1.1  mrg         /* count */ 2,
    307       1.1  mrg         /* ext */ &xcb_xinerama_id,
    308       1.1  mrg         /* opcode */ XCB_XINERAMA_GET_SCREEN_COUNT,
    309       1.1  mrg         /* isvoid */ 0
    310       1.1  mrg     };
    311       1.1  mrg 
    312       1.1  mrg     struct iovec xcb_parts[4];
    313       1.1  mrg     xcb_xinerama_get_screen_count_cookie_t xcb_ret;
    314       1.1  mrg     xcb_xinerama_get_screen_count_request_t xcb_out;
    315       1.1  mrg 
    316       1.1  mrg     xcb_out.window = window;
    317       1.1  mrg 
    318       1.1  mrg     xcb_parts[2].iov_base = (char *) &xcb_out;
    319       1.1  mrg     xcb_parts[2].iov_len = sizeof(xcb_out);
    320       1.1  mrg     xcb_parts[3].iov_base = 0;
    321       1.1  mrg     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    322  1.1.12.1  tls 
    323       1.1  mrg     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
    324       1.1  mrg     return xcb_ret;
    325       1.1  mrg }
    326       1.1  mrg 
    327       1.1  mrg 
    328       1.1  mrg /*****************************************************************************
    329       1.1  mrg  **
    330       1.1  mrg  ** xcb_xinerama_get_screen_count_reply_t * xcb_xinerama_get_screen_count_reply
    331       1.1  mrg  **
    332       1.1  mrg  ** @param xcb_connection_t                        *c
    333       1.1  mrg  ** @param xcb_xinerama_get_screen_count_cookie_t   cookie
    334       1.1  mrg  ** @param xcb_generic_error_t                    **e
    335       1.1  mrg  ** @returns xcb_xinerama_get_screen_count_reply_t *
    336       1.1  mrg  **
    337       1.1  mrg  *****************************************************************************/
    338       1.1  mrg 
    339       1.1  mrg xcb_xinerama_get_screen_count_reply_t *
    340       1.1  mrg xcb_xinerama_get_screen_count_reply (xcb_connection_t                        *c  /**< */,
    341       1.1  mrg                                      xcb_xinerama_get_screen_count_cookie_t   cookie  /**< */,
    342       1.1  mrg                                      xcb_generic_error_t                    **e  /**< */)
    343       1.1  mrg {
    344       1.1  mrg     return (xcb_xinerama_get_screen_count_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
    345       1.1  mrg }
    346       1.1  mrg 
    347       1.1  mrg 
    348       1.1  mrg /*****************************************************************************
    349       1.1  mrg  **
    350       1.1  mrg  ** xcb_xinerama_get_screen_size_cookie_t xcb_xinerama_get_screen_size
    351       1.1  mrg  **
    352       1.1  mrg  ** @param xcb_connection_t *c
    353       1.1  mrg  ** @param xcb_window_t      window
    354       1.1  mrg  ** @param uint32_t          screen
    355       1.1  mrg  ** @returns xcb_xinerama_get_screen_size_cookie_t
    356       1.1  mrg  **
    357       1.1  mrg  *****************************************************************************/
    358       1.1  mrg 
    359       1.1  mrg xcb_xinerama_get_screen_size_cookie_t
    360       1.1  mrg xcb_xinerama_get_screen_size (xcb_connection_t *c  /**< */,
    361       1.1  mrg                               xcb_window_t      window  /**< */,
    362       1.1  mrg                               uint32_t          screen  /**< */)
    363       1.1  mrg {
    364       1.1  mrg     static const xcb_protocol_request_t xcb_req = {
    365       1.1  mrg         /* count */ 2,
    366       1.1  mrg         /* ext */ &xcb_xinerama_id,
    367       1.1  mrg         /* opcode */ XCB_XINERAMA_GET_SCREEN_SIZE,
    368       1.1  mrg         /* isvoid */ 0
    369       1.1  mrg     };
    370       1.1  mrg 
    371       1.1  mrg     struct iovec xcb_parts[4];
    372       1.1  mrg     xcb_xinerama_get_screen_size_cookie_t xcb_ret;
    373       1.1  mrg     xcb_xinerama_get_screen_size_request_t xcb_out;
    374       1.1  mrg 
    375       1.1  mrg     xcb_out.window = window;
    376       1.1  mrg     xcb_out.screen = screen;
    377       1.1  mrg 
    378       1.1  mrg     xcb_parts[2].iov_base = (char *) &xcb_out;
    379       1.1  mrg     xcb_parts[2].iov_len = sizeof(xcb_out);
    380       1.1  mrg     xcb_parts[3].iov_base = 0;
    381       1.1  mrg     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    382  1.1.12.1  tls 
    383       1.1  mrg     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
    384       1.1  mrg     return xcb_ret;
    385       1.1  mrg }
    386       1.1  mrg 
    387       1.1  mrg 
    388       1.1  mrg /*****************************************************************************
    389       1.1  mrg  **
    390       1.1  mrg  ** xcb_xinerama_get_screen_size_cookie_t xcb_xinerama_get_screen_size_unchecked
    391       1.1  mrg  **
    392       1.1  mrg  ** @param xcb_connection_t *c
    393       1.1  mrg  ** @param xcb_window_t      window
    394       1.1  mrg  ** @param uint32_t          screen
    395       1.1  mrg  ** @returns xcb_xinerama_get_screen_size_cookie_t
    396       1.1  mrg  **
    397       1.1  mrg  *****************************************************************************/
    398       1.1  mrg 
    399       1.1  mrg xcb_xinerama_get_screen_size_cookie_t
    400       1.1  mrg xcb_xinerama_get_screen_size_unchecked (xcb_connection_t *c  /**< */,
    401       1.1  mrg                                         xcb_window_t      window  /**< */,
    402       1.1  mrg                                         uint32_t          screen  /**< */)
    403       1.1  mrg {
    404       1.1  mrg     static const xcb_protocol_request_t xcb_req = {
    405       1.1  mrg         /* count */ 2,
    406       1.1  mrg         /* ext */ &xcb_xinerama_id,
    407       1.1  mrg         /* opcode */ XCB_XINERAMA_GET_SCREEN_SIZE,
    408       1.1  mrg         /* isvoid */ 0
    409       1.1  mrg     };
    410       1.1  mrg 
    411       1.1  mrg     struct iovec xcb_parts[4];
    412       1.1  mrg     xcb_xinerama_get_screen_size_cookie_t xcb_ret;
    413       1.1  mrg     xcb_xinerama_get_screen_size_request_t xcb_out;
    414       1.1  mrg 
    415       1.1  mrg     xcb_out.window = window;
    416       1.1  mrg     xcb_out.screen = screen;
    417       1.1  mrg 
    418       1.1  mrg     xcb_parts[2].iov_base = (char *) &xcb_out;
    419       1.1  mrg     xcb_parts[2].iov_len = sizeof(xcb_out);
    420       1.1  mrg     xcb_parts[3].iov_base = 0;
    421       1.1  mrg     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    422  1.1.12.1  tls 
    423       1.1  mrg     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
    424       1.1  mrg     return xcb_ret;
    425       1.1  mrg }
    426       1.1  mrg 
    427       1.1  mrg 
    428       1.1  mrg /*****************************************************************************
    429       1.1  mrg  **
    430       1.1  mrg  ** xcb_xinerama_get_screen_size_reply_t * xcb_xinerama_get_screen_size_reply
    431       1.1  mrg  **
    432       1.1  mrg  ** @param xcb_connection_t                       *c
    433       1.1  mrg  ** @param xcb_xinerama_get_screen_size_cookie_t   cookie
    434       1.1  mrg  ** @param xcb_generic_error_t                   **e
    435       1.1  mrg  ** @returns xcb_xinerama_get_screen_size_reply_t *
    436       1.1  mrg  **
    437       1.1  mrg  *****************************************************************************/
    438       1.1  mrg 
    439       1.1  mrg xcb_xinerama_get_screen_size_reply_t *
    440       1.1  mrg xcb_xinerama_get_screen_size_reply (xcb_connection_t                       *c  /**< */,
    441       1.1  mrg                                     xcb_xinerama_get_screen_size_cookie_t   cookie  /**< */,
    442       1.1  mrg                                     xcb_generic_error_t                   **e  /**< */)
    443       1.1  mrg {
    444       1.1  mrg     return (xcb_xinerama_get_screen_size_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
    445       1.1  mrg }
    446       1.1  mrg 
    447       1.1  mrg 
    448       1.1  mrg /*****************************************************************************
    449       1.1  mrg  **
    450       1.1  mrg  ** xcb_xinerama_is_active_cookie_t xcb_xinerama_is_active
    451       1.1  mrg  **
    452       1.1  mrg  ** @param xcb_connection_t *c
    453       1.1  mrg  ** @returns xcb_xinerama_is_active_cookie_t
    454       1.1  mrg  **
    455       1.1  mrg  *****************************************************************************/
    456       1.1  mrg 
    457       1.1  mrg xcb_xinerama_is_active_cookie_t
    458       1.1  mrg xcb_xinerama_is_active (xcb_connection_t *c  /**< */)
    459       1.1  mrg {
    460       1.1  mrg     static const xcb_protocol_request_t xcb_req = {
    461       1.1  mrg         /* count */ 2,
    462       1.1  mrg         /* ext */ &xcb_xinerama_id,
    463       1.1  mrg         /* opcode */ XCB_XINERAMA_IS_ACTIVE,
    464       1.1  mrg         /* isvoid */ 0
    465       1.1  mrg     };
    466       1.1  mrg 
    467       1.1  mrg     struct iovec xcb_parts[4];
    468       1.1  mrg     xcb_xinerama_is_active_cookie_t xcb_ret;
    469       1.1  mrg     xcb_xinerama_is_active_request_t xcb_out;
    470       1.1  mrg 
    471       1.1  mrg 
    472       1.1  mrg     xcb_parts[2].iov_base = (char *) &xcb_out;
    473       1.1  mrg     xcb_parts[2].iov_len = sizeof(xcb_out);
    474       1.1  mrg     xcb_parts[3].iov_base = 0;
    475       1.1  mrg     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    476  1.1.12.1  tls 
    477       1.1  mrg     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
    478       1.1  mrg     return xcb_ret;
    479       1.1  mrg }
    480       1.1  mrg 
    481       1.1  mrg 
    482       1.1  mrg /*****************************************************************************
    483       1.1  mrg  **
    484       1.1  mrg  ** xcb_xinerama_is_active_cookie_t xcb_xinerama_is_active_unchecked
    485       1.1  mrg  **
    486       1.1  mrg  ** @param xcb_connection_t *c
    487       1.1  mrg  ** @returns xcb_xinerama_is_active_cookie_t
    488       1.1  mrg  **
    489       1.1  mrg  *****************************************************************************/
    490       1.1  mrg 
    491       1.1  mrg xcb_xinerama_is_active_cookie_t
    492       1.1  mrg xcb_xinerama_is_active_unchecked (xcb_connection_t *c  /**< */)
    493       1.1  mrg {
    494       1.1  mrg     static const xcb_protocol_request_t xcb_req = {
    495       1.1  mrg         /* count */ 2,
    496       1.1  mrg         /* ext */ &xcb_xinerama_id,
    497       1.1  mrg         /* opcode */ XCB_XINERAMA_IS_ACTIVE,
    498       1.1  mrg         /* isvoid */ 0
    499       1.1  mrg     };
    500       1.1  mrg 
    501       1.1  mrg     struct iovec xcb_parts[4];
    502       1.1  mrg     xcb_xinerama_is_active_cookie_t xcb_ret;
    503       1.1  mrg     xcb_xinerama_is_active_request_t xcb_out;
    504       1.1  mrg 
    505       1.1  mrg 
    506       1.1  mrg     xcb_parts[2].iov_base = (char *) &xcb_out;
    507       1.1  mrg     xcb_parts[2].iov_len = sizeof(xcb_out);
    508       1.1  mrg     xcb_parts[3].iov_base = 0;
    509       1.1  mrg     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    510  1.1.12.1  tls 
    511       1.1  mrg     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
    512       1.1  mrg     return xcb_ret;
    513       1.1  mrg }
    514       1.1  mrg 
    515       1.1  mrg 
    516       1.1  mrg /*****************************************************************************
    517       1.1  mrg  **
    518       1.1  mrg  ** xcb_xinerama_is_active_reply_t * xcb_xinerama_is_active_reply
    519       1.1  mrg  **
    520       1.1  mrg  ** @param xcb_connection_t                 *c
    521       1.1  mrg  ** @param xcb_xinerama_is_active_cookie_t   cookie
    522       1.1  mrg  ** @param xcb_generic_error_t             **e
    523       1.1  mrg  ** @returns xcb_xinerama_is_active_reply_t *
    524       1.1  mrg  **
    525       1.1  mrg  *****************************************************************************/
    526       1.1  mrg 
    527       1.1  mrg xcb_xinerama_is_active_reply_t *
    528       1.1  mrg xcb_xinerama_is_active_reply (xcb_connection_t                 *c  /**< */,
    529       1.1  mrg                               xcb_xinerama_is_active_cookie_t   cookie  /**< */,
    530       1.1  mrg                               xcb_generic_error_t             **e  /**< */)
    531       1.1  mrg {
    532       1.1  mrg     return (xcb_xinerama_is_active_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
    533       1.1  mrg }
    534       1.1  mrg 
    535  1.1.12.1  tls int
    536  1.1.12.1  tls xcb_xinerama_query_screens_sizeof (const void  *_buffer  /**< */)
    537  1.1.12.1  tls {
    538  1.1.12.1  tls     char *xcb_tmp = (char *)_buffer;
    539  1.1.12.1  tls     const xcb_xinerama_query_screens_reply_t *_aux = (xcb_xinerama_query_screens_reply_t *)_buffer;
    540  1.1.12.1  tls     unsigned int xcb_buffer_len = 0;
    541  1.1.12.1  tls     unsigned int xcb_block_len = 0;
    542  1.1.12.1  tls     unsigned int xcb_pad = 0;
    543  1.1.12.1  tls     unsigned int xcb_align_to;
    544  1.1.12.1  tls 
    545  1.1.12.1  tls 
    546  1.1.12.1  tls     xcb_block_len += sizeof(xcb_xinerama_query_screens_reply_t);
    547  1.1.12.1  tls     xcb_tmp += xcb_block_len;
    548  1.1.12.1  tls     /* screen_info */
    549  1.1.12.1  tls     xcb_block_len += _aux->number * sizeof(xcb_xinerama_screen_info_t);
    550  1.1.12.1  tls     xcb_tmp += xcb_block_len;
    551  1.1.12.1  tls     xcb_align_to = ALIGNOF(xcb_xinerama_screen_info_t);
    552  1.1.12.1  tls     /* insert padding */
    553  1.1.12.1  tls     xcb_pad = -xcb_block_len & (xcb_align_to - 1);
    554  1.1.12.1  tls     xcb_buffer_len += xcb_block_len + xcb_pad;
    555  1.1.12.1  tls     if (0 != xcb_pad) {
    556  1.1.12.1  tls         xcb_tmp += xcb_pad;
    557  1.1.12.1  tls         xcb_pad = 0;
    558  1.1.12.1  tls     }
    559  1.1.12.1  tls     xcb_block_len = 0;
    560  1.1.12.1  tls 
    561  1.1.12.1  tls     return xcb_buffer_len;
    562  1.1.12.1  tls }
    563  1.1.12.1  tls 
    564       1.1  mrg 
    565       1.1  mrg /*****************************************************************************
    566       1.1  mrg  **
    567       1.1  mrg  ** xcb_xinerama_query_screens_cookie_t xcb_xinerama_query_screens
    568       1.1  mrg  **
    569       1.1  mrg  ** @param xcb_connection_t *c
    570       1.1  mrg  ** @returns xcb_xinerama_query_screens_cookie_t
    571       1.1  mrg  **
    572       1.1  mrg  *****************************************************************************/
    573       1.1  mrg 
    574       1.1  mrg xcb_xinerama_query_screens_cookie_t
    575       1.1  mrg xcb_xinerama_query_screens (xcb_connection_t *c  /**< */)
    576       1.1  mrg {
    577       1.1  mrg     static const xcb_protocol_request_t xcb_req = {
    578       1.1  mrg         /* count */ 2,
    579       1.1  mrg         /* ext */ &xcb_xinerama_id,
    580       1.1  mrg         /* opcode */ XCB_XINERAMA_QUERY_SCREENS,
    581       1.1  mrg         /* isvoid */ 0
    582       1.1  mrg     };
    583       1.1  mrg 
    584       1.1  mrg     struct iovec xcb_parts[4];
    585       1.1  mrg     xcb_xinerama_query_screens_cookie_t xcb_ret;
    586       1.1  mrg     xcb_xinerama_query_screens_request_t xcb_out;
    587       1.1  mrg 
    588       1.1  mrg 
    589       1.1  mrg     xcb_parts[2].iov_base = (char *) &xcb_out;
    590       1.1  mrg     xcb_parts[2].iov_len = sizeof(xcb_out);
    591       1.1  mrg     xcb_parts[3].iov_base = 0;
    592       1.1  mrg     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    593  1.1.12.1  tls 
    594       1.1  mrg     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
    595       1.1  mrg     return xcb_ret;
    596       1.1  mrg }
    597       1.1  mrg 
    598       1.1  mrg 
    599       1.1  mrg /*****************************************************************************
    600       1.1  mrg  **
    601       1.1  mrg  ** xcb_xinerama_query_screens_cookie_t xcb_xinerama_query_screens_unchecked
    602       1.1  mrg  **
    603       1.1  mrg  ** @param xcb_connection_t *c
    604       1.1  mrg  ** @returns xcb_xinerama_query_screens_cookie_t
    605       1.1  mrg  **
    606       1.1  mrg  *****************************************************************************/
    607       1.1  mrg 
    608       1.1  mrg xcb_xinerama_query_screens_cookie_t
    609       1.1  mrg xcb_xinerama_query_screens_unchecked (xcb_connection_t *c  /**< */)
    610       1.1  mrg {
    611       1.1  mrg     static const xcb_protocol_request_t xcb_req = {
    612       1.1  mrg         /* count */ 2,
    613       1.1  mrg         /* ext */ &xcb_xinerama_id,
    614       1.1  mrg         /* opcode */ XCB_XINERAMA_QUERY_SCREENS,
    615       1.1  mrg         /* isvoid */ 0
    616       1.1  mrg     };
    617       1.1  mrg 
    618       1.1  mrg     struct iovec xcb_parts[4];
    619       1.1  mrg     xcb_xinerama_query_screens_cookie_t xcb_ret;
    620       1.1  mrg     xcb_xinerama_query_screens_request_t xcb_out;
    621       1.1  mrg 
    622       1.1  mrg 
    623       1.1  mrg     xcb_parts[2].iov_base = (char *) &xcb_out;
    624       1.1  mrg     xcb_parts[2].iov_len = sizeof(xcb_out);
    625       1.1  mrg     xcb_parts[3].iov_base = 0;
    626       1.1  mrg     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    627  1.1.12.1  tls 
    628       1.1  mrg     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
    629       1.1  mrg     return xcb_ret;
    630       1.1  mrg }
    631       1.1  mrg 
    632       1.1  mrg 
    633       1.1  mrg /*****************************************************************************
    634       1.1  mrg  **
    635       1.1  mrg  ** xcb_xinerama_screen_info_t * xcb_xinerama_query_screens_screen_info
    636       1.1  mrg  **
    637       1.1  mrg  ** @param const xcb_xinerama_query_screens_reply_t *R
    638       1.1  mrg  ** @returns xcb_xinerama_screen_info_t *
    639       1.1  mrg  **
    640       1.1  mrg  *****************************************************************************/
    641       1.1  mrg 
    642       1.1  mrg xcb_xinerama_screen_info_t *
    643       1.1  mrg xcb_xinerama_query_screens_screen_info (const xcb_xinerama_query_screens_reply_t *R  /**< */)
    644       1.1  mrg {
    645       1.1  mrg     return (xcb_xinerama_screen_info_t *) (R + 1);
    646       1.1  mrg }
    647       1.1  mrg 
    648       1.1  mrg 
    649       1.1  mrg /*****************************************************************************
    650       1.1  mrg  **
    651       1.1  mrg  ** int xcb_xinerama_query_screens_screen_info_length
    652       1.1  mrg  **
    653       1.1  mrg  ** @param const xcb_xinerama_query_screens_reply_t *R
    654       1.1  mrg  ** @returns int
    655       1.1  mrg  **
    656       1.1  mrg  *****************************************************************************/
    657       1.1  mrg 
    658       1.1  mrg int
    659       1.1  mrg xcb_xinerama_query_screens_screen_info_length (const xcb_xinerama_query_screens_reply_t *R  /**< */)
    660       1.1  mrg {
    661       1.1  mrg     return R->number;
    662       1.1  mrg }
    663       1.1  mrg 
    664       1.1  mrg 
    665       1.1  mrg /*****************************************************************************
    666       1.1  mrg  **
    667       1.1  mrg  ** xcb_xinerama_screen_info_iterator_t xcb_xinerama_query_screens_screen_info_iterator
    668       1.1  mrg  **
    669       1.1  mrg  ** @param const xcb_xinerama_query_screens_reply_t *R
    670       1.1  mrg  ** @returns xcb_xinerama_screen_info_iterator_t
    671       1.1  mrg  **
    672       1.1  mrg  *****************************************************************************/
    673       1.1  mrg 
    674       1.1  mrg xcb_xinerama_screen_info_iterator_t
    675       1.1  mrg xcb_xinerama_query_screens_screen_info_iterator (const xcb_xinerama_query_screens_reply_t *R  /**< */)
    676       1.1  mrg {
    677       1.1  mrg     xcb_xinerama_screen_info_iterator_t i;
    678       1.1  mrg     i.data = (xcb_xinerama_screen_info_t *) (R + 1);
    679       1.1  mrg     i.rem = R->number;
    680       1.1  mrg     i.index = (char *) i.data - (char *) R;
    681       1.1  mrg     return i;
    682       1.1  mrg }
    683       1.1  mrg 
    684       1.1  mrg 
    685       1.1  mrg /*****************************************************************************
    686       1.1  mrg  **
    687       1.1  mrg  ** xcb_xinerama_query_screens_reply_t * xcb_xinerama_query_screens_reply
    688       1.1  mrg  **
    689       1.1  mrg  ** @param xcb_connection_t                     *c
    690       1.1  mrg  ** @param xcb_xinerama_query_screens_cookie_t   cookie
    691       1.1  mrg  ** @param xcb_generic_error_t                 **e
    692       1.1  mrg  ** @returns xcb_xinerama_query_screens_reply_t *
    693       1.1  mrg  **
    694       1.1  mrg  *****************************************************************************/
    695       1.1  mrg 
    696       1.1  mrg xcb_xinerama_query_screens_reply_t *
    697       1.1  mrg xcb_xinerama_query_screens_reply (xcb_connection_t                     *c  /**< */,
    698       1.1  mrg                                   xcb_xinerama_query_screens_cookie_t   cookie  /**< */,
    699       1.1  mrg                                   xcb_generic_error_t                 **e  /**< */)
    700       1.1  mrg {
    701       1.1  mrg     return (xcb_xinerama_query_screens_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
    702       1.1  mrg }
    703       1.1  mrg 
    704