Home | History | Annotate | Line # | Download | only in files
xinerama.h revision 1.3.2.1
      1 /*
      2  * This file generated automatically from xinerama.xml by c_client.py.
      3  * Edit at your peril.
      4  */
      5 
      6 /**
      7  * @defgroup XCB_Xinerama_API XCB Xinerama API
      8  * @brief Xinerama XCB Protocol Implementation.
      9  * @{
     10  **/
     11 
     12 #ifndef __XINERAMA_H
     13 #define __XINERAMA_H
     14 
     15 #include "xcb.h"
     16 #include "xproto.h"
     17 
     18 #ifdef __cplusplus
     19 extern "C" {
     20 #endif
     21 
     22 #define XCB_XINERAMA_MAJOR_VERSION 1
     23 #define XCB_XINERAMA_MINOR_VERSION 1
     24 
     25 extern xcb_extension_t xcb_xinerama_id;
     26 
     27 /**
     28  * @brief xcb_xinerama_screen_info_t
     29  **/
     30 typedef struct xcb_xinerama_screen_info_t {
     31     int16_t  x_org;
     32     int16_t  y_org;
     33     uint16_t width;
     34     uint16_t height;
     35 } xcb_xinerama_screen_info_t;
     36 
     37 /**
     38  * @brief xcb_xinerama_screen_info_iterator_t
     39  **/
     40 typedef struct xcb_xinerama_screen_info_iterator_t {
     41     xcb_xinerama_screen_info_t *data;
     42     int                         rem;
     43     int                         index;
     44 } xcb_xinerama_screen_info_iterator_t;
     45 
     46 /**
     47  * @brief xcb_xinerama_query_version_cookie_t
     48  **/
     49 typedef struct xcb_xinerama_query_version_cookie_t {
     50     unsigned int sequence;
     51 } xcb_xinerama_query_version_cookie_t;
     52 
     53 /** Opcode for xcb_xinerama_query_version. */
     54 #define XCB_XINERAMA_QUERY_VERSION 0
     55 
     56 /**
     57  * @brief xcb_xinerama_query_version_request_t
     58  **/
     59 typedef struct xcb_xinerama_query_version_request_t {
     60     uint8_t  major_opcode;
     61     uint8_t  minor_opcode;
     62     uint16_t length;
     63     uint8_t  major;
     64     uint8_t  minor;
     65 } xcb_xinerama_query_version_request_t;
     66 
     67 /**
     68  * @brief xcb_xinerama_query_version_reply_t
     69  **/
     70 typedef struct xcb_xinerama_query_version_reply_t {
     71     uint8_t  response_type;
     72     uint8_t  pad0;
     73     uint16_t sequence;
     74     uint32_t length;
     75     uint16_t major;
     76     uint16_t minor;
     77 } xcb_xinerama_query_version_reply_t;
     78 
     79 /**
     80  * @brief xcb_xinerama_get_state_cookie_t
     81  **/
     82 typedef struct xcb_xinerama_get_state_cookie_t {
     83     unsigned int sequence;
     84 } xcb_xinerama_get_state_cookie_t;
     85 
     86 /** Opcode for xcb_xinerama_get_state. */
     87 #define XCB_XINERAMA_GET_STATE 1
     88 
     89 /**
     90  * @brief xcb_xinerama_get_state_request_t
     91  **/
     92 typedef struct xcb_xinerama_get_state_request_t {
     93     uint8_t      major_opcode;
     94     uint8_t      minor_opcode;
     95     uint16_t     length;
     96     xcb_window_t window;
     97 } xcb_xinerama_get_state_request_t;
     98 
     99 /**
    100  * @brief xcb_xinerama_get_state_reply_t
    101  **/
    102 typedef struct xcb_xinerama_get_state_reply_t {
    103     uint8_t      response_type;
    104     uint8_t      state;
    105     uint16_t     sequence;
    106     uint32_t     length;
    107     xcb_window_t window;
    108 } xcb_xinerama_get_state_reply_t;
    109 
    110 /**
    111  * @brief xcb_xinerama_get_screen_count_cookie_t
    112  **/
    113 typedef struct xcb_xinerama_get_screen_count_cookie_t {
    114     unsigned int sequence;
    115 } xcb_xinerama_get_screen_count_cookie_t;
    116 
    117 /** Opcode for xcb_xinerama_get_screen_count. */
    118 #define XCB_XINERAMA_GET_SCREEN_COUNT 2
    119 
    120 /**
    121  * @brief xcb_xinerama_get_screen_count_request_t
    122  **/
    123 typedef struct xcb_xinerama_get_screen_count_request_t {
    124     uint8_t      major_opcode;
    125     uint8_t      minor_opcode;
    126     uint16_t     length;
    127     xcb_window_t window;
    128 } xcb_xinerama_get_screen_count_request_t;
    129 
    130 /**
    131  * @brief xcb_xinerama_get_screen_count_reply_t
    132  **/
    133 typedef struct xcb_xinerama_get_screen_count_reply_t {
    134     uint8_t      response_type;
    135     uint8_t      screen_count;
    136     uint16_t     sequence;
    137     uint32_t     length;
    138     xcb_window_t window;
    139 } xcb_xinerama_get_screen_count_reply_t;
    140 
    141 /**
    142  * @brief xcb_xinerama_get_screen_size_cookie_t
    143  **/
    144 typedef struct xcb_xinerama_get_screen_size_cookie_t {
    145     unsigned int sequence;
    146 } xcb_xinerama_get_screen_size_cookie_t;
    147 
    148 /** Opcode for xcb_xinerama_get_screen_size. */
    149 #define XCB_XINERAMA_GET_SCREEN_SIZE 3
    150 
    151 /**
    152  * @brief xcb_xinerama_get_screen_size_request_t
    153  **/
    154 typedef struct xcb_xinerama_get_screen_size_request_t {
    155     uint8_t      major_opcode;
    156     uint8_t      minor_opcode;
    157     uint16_t     length;
    158     xcb_window_t window;
    159     uint32_t     screen;
    160 } xcb_xinerama_get_screen_size_request_t;
    161 
    162 /**
    163  * @brief xcb_xinerama_get_screen_size_reply_t
    164  **/
    165 typedef struct xcb_xinerama_get_screen_size_reply_t {
    166     uint8_t      response_type;
    167     uint8_t      pad0;
    168     uint16_t     sequence;
    169     uint32_t     length;
    170     uint32_t     width;
    171     uint32_t     height;
    172     xcb_window_t window;
    173     uint32_t     screen;
    174 } xcb_xinerama_get_screen_size_reply_t;
    175 
    176 /**
    177  * @brief xcb_xinerama_is_active_cookie_t
    178  **/
    179 typedef struct xcb_xinerama_is_active_cookie_t {
    180     unsigned int sequence;
    181 } xcb_xinerama_is_active_cookie_t;
    182 
    183 /** Opcode for xcb_xinerama_is_active. */
    184 #define XCB_XINERAMA_IS_ACTIVE 4
    185 
    186 /**
    187  * @brief xcb_xinerama_is_active_request_t
    188  **/
    189 typedef struct xcb_xinerama_is_active_request_t {
    190     uint8_t  major_opcode;
    191     uint8_t  minor_opcode;
    192     uint16_t length;
    193 } xcb_xinerama_is_active_request_t;
    194 
    195 /**
    196  * @brief xcb_xinerama_is_active_reply_t
    197  **/
    198 typedef struct xcb_xinerama_is_active_reply_t {
    199     uint8_t  response_type;
    200     uint8_t  pad0;
    201     uint16_t sequence;
    202     uint32_t length;
    203     uint32_t state;
    204 } xcb_xinerama_is_active_reply_t;
    205 
    206 /**
    207  * @brief xcb_xinerama_query_screens_cookie_t
    208  **/
    209 typedef struct xcb_xinerama_query_screens_cookie_t {
    210     unsigned int sequence;
    211 } xcb_xinerama_query_screens_cookie_t;
    212 
    213 /** Opcode for xcb_xinerama_query_screens. */
    214 #define XCB_XINERAMA_QUERY_SCREENS 5
    215 
    216 /**
    217  * @brief xcb_xinerama_query_screens_request_t
    218  **/
    219 typedef struct xcb_xinerama_query_screens_request_t {
    220     uint8_t  major_opcode;
    221     uint8_t  minor_opcode;
    222     uint16_t length;
    223 } xcb_xinerama_query_screens_request_t;
    224 
    225 /**
    226  * @brief xcb_xinerama_query_screens_reply_t
    227  **/
    228 typedef struct xcb_xinerama_query_screens_reply_t {
    229     uint8_t  response_type;
    230     uint8_t  pad0;
    231     uint16_t sequence;
    232     uint32_t length;
    233     uint32_t number;
    234     uint8_t  pad1[20];
    235 } xcb_xinerama_query_screens_reply_t;
    236 
    237 /**
    238  * Get the next element of the iterator
    239  * @param i Pointer to a xcb_xinerama_screen_info_iterator_t
    240  *
    241  * Get the next element in the iterator. The member rem is
    242  * decreased by one. The member data points to the next
    243  * element. The member index is increased by sizeof(xcb_xinerama_screen_info_t)
    244  */
    245 void
    246 xcb_xinerama_screen_info_next (xcb_xinerama_screen_info_iterator_t *i);
    247 
    248 /**
    249  * Return the iterator pointing to the last element
    250  * @param i An xcb_xinerama_screen_info_iterator_t
    251  * @return  The iterator pointing to the last element
    252  *
    253  * Set the current element in the iterator to the last element.
    254  * The member rem is set to 0. The member data points to the
    255  * last element.
    256  */
    257 xcb_generic_iterator_t
    258 xcb_xinerama_screen_info_end (xcb_xinerama_screen_info_iterator_t i);
    259 
    260 /**
    261  *
    262  * @param c The connection
    263  * @return A cookie
    264  *
    265  * Delivers a request to the X server.
    266  *
    267  */
    268 xcb_xinerama_query_version_cookie_t
    269 xcb_xinerama_query_version (xcb_connection_t *c,
    270                             uint8_t           major,
    271                             uint8_t           minor);
    272 
    273 /**
    274  *
    275  * @param c The connection
    276  * @return A cookie
    277  *
    278  * Delivers a request to the X server.
    279  *
    280  * This form can be used only if the request will cause
    281  * a reply to be generated. Any returned error will be
    282  * placed in the event queue.
    283  */
    284 xcb_xinerama_query_version_cookie_t
    285 xcb_xinerama_query_version_unchecked (xcb_connection_t *c,
    286                                       uint8_t           major,
    287                                       uint8_t           minor);
    288 
    289 /**
    290  * Return the reply
    291  * @param c      The connection
    292  * @param cookie The cookie
    293  * @param e      The xcb_generic_error_t supplied
    294  *
    295  * Returns the reply of the request asked by
    296  *
    297  * The parameter @p e supplied to this function must be NULL if
    298  * xcb_xinerama_query_version_unchecked(). is used.
    299  * Otherwise, it stores the error if any.
    300  *
    301  * The returned value must be freed by the caller using free().
    302  */
    303 xcb_xinerama_query_version_reply_t *
    304 xcb_xinerama_query_version_reply (xcb_connection_t                     *c,
    305                                   xcb_xinerama_query_version_cookie_t   cookie  /**< */,
    306                                   xcb_generic_error_t                 **e);
    307 
    308 /**
    309  *
    310  * @param c The connection
    311  * @return A cookie
    312  *
    313  * Delivers a request to the X server.
    314  *
    315  */
    316 xcb_xinerama_get_state_cookie_t
    317 xcb_xinerama_get_state (xcb_connection_t *c,
    318                         xcb_window_t      window);
    319 
    320 /**
    321  *
    322  * @param c The connection
    323  * @return A cookie
    324  *
    325  * Delivers a request to the X server.
    326  *
    327  * This form can be used only if the request will cause
    328  * a reply to be generated. Any returned error will be
    329  * placed in the event queue.
    330  */
    331 xcb_xinerama_get_state_cookie_t
    332 xcb_xinerama_get_state_unchecked (xcb_connection_t *c,
    333                                   xcb_window_t      window);
    334 
    335 /**
    336  * Return the reply
    337  * @param c      The connection
    338  * @param cookie The cookie
    339  * @param e      The xcb_generic_error_t supplied
    340  *
    341  * Returns the reply of the request asked by
    342  *
    343  * The parameter @p e supplied to this function must be NULL if
    344  * xcb_xinerama_get_state_unchecked(). is used.
    345  * Otherwise, it stores the error if any.
    346  *
    347  * The returned value must be freed by the caller using free().
    348  */
    349 xcb_xinerama_get_state_reply_t *
    350 xcb_xinerama_get_state_reply (xcb_connection_t                 *c,
    351                               xcb_xinerama_get_state_cookie_t   cookie  /**< */,
    352                               xcb_generic_error_t             **e);
    353 
    354 /**
    355  *
    356  * @param c The connection
    357  * @return A cookie
    358  *
    359  * Delivers a request to the X server.
    360  *
    361  */
    362 xcb_xinerama_get_screen_count_cookie_t
    363 xcb_xinerama_get_screen_count (xcb_connection_t *c,
    364                                xcb_window_t      window);
    365 
    366 /**
    367  *
    368  * @param c The connection
    369  * @return A cookie
    370  *
    371  * Delivers a request to the X server.
    372  *
    373  * This form can be used only if the request will cause
    374  * a reply to be generated. Any returned error will be
    375  * placed in the event queue.
    376  */
    377 xcb_xinerama_get_screen_count_cookie_t
    378 xcb_xinerama_get_screen_count_unchecked (xcb_connection_t *c,
    379                                          xcb_window_t      window);
    380 
    381 /**
    382  * Return the reply
    383  * @param c      The connection
    384  * @param cookie The cookie
    385  * @param e      The xcb_generic_error_t supplied
    386  *
    387  * Returns the reply of the request asked by
    388  *
    389  * The parameter @p e supplied to this function must be NULL if
    390  * xcb_xinerama_get_screen_count_unchecked(). is used.
    391  * Otherwise, it stores the error if any.
    392  *
    393  * The returned value must be freed by the caller using free().
    394  */
    395 xcb_xinerama_get_screen_count_reply_t *
    396 xcb_xinerama_get_screen_count_reply (xcb_connection_t                        *c,
    397                                      xcb_xinerama_get_screen_count_cookie_t   cookie  /**< */,
    398                                      xcb_generic_error_t                    **e);
    399 
    400 /**
    401  *
    402  * @param c The connection
    403  * @return A cookie
    404  *
    405  * Delivers a request to the X server.
    406  *
    407  */
    408 xcb_xinerama_get_screen_size_cookie_t
    409 xcb_xinerama_get_screen_size (xcb_connection_t *c,
    410                               xcb_window_t      window,
    411                               uint32_t          screen);
    412 
    413 /**
    414  *
    415  * @param c The connection
    416  * @return A cookie
    417  *
    418  * Delivers a request to the X server.
    419  *
    420  * This form can be used only if the request will cause
    421  * a reply to be generated. Any returned error will be
    422  * placed in the event queue.
    423  */
    424 xcb_xinerama_get_screen_size_cookie_t
    425 xcb_xinerama_get_screen_size_unchecked (xcb_connection_t *c,
    426                                         xcb_window_t      window,
    427                                         uint32_t          screen);
    428 
    429 /**
    430  * Return the reply
    431  * @param c      The connection
    432  * @param cookie The cookie
    433  * @param e      The xcb_generic_error_t supplied
    434  *
    435  * Returns the reply of the request asked by
    436  *
    437  * The parameter @p e supplied to this function must be NULL if
    438  * xcb_xinerama_get_screen_size_unchecked(). is used.
    439  * Otherwise, it stores the error if any.
    440  *
    441  * The returned value must be freed by the caller using free().
    442  */
    443 xcb_xinerama_get_screen_size_reply_t *
    444 xcb_xinerama_get_screen_size_reply (xcb_connection_t                       *c,
    445                                     xcb_xinerama_get_screen_size_cookie_t   cookie  /**< */,
    446                                     xcb_generic_error_t                   **e);
    447 
    448 /**
    449  *
    450  * @param c The connection
    451  * @return A cookie
    452  *
    453  * Delivers a request to the X server.
    454  *
    455  */
    456 xcb_xinerama_is_active_cookie_t
    457 xcb_xinerama_is_active (xcb_connection_t *c);
    458 
    459 /**
    460  *
    461  * @param c The connection
    462  * @return A cookie
    463  *
    464  * Delivers a request to the X server.
    465  *
    466  * This form can be used only if the request will cause
    467  * a reply to be generated. Any returned error will be
    468  * placed in the event queue.
    469  */
    470 xcb_xinerama_is_active_cookie_t
    471 xcb_xinerama_is_active_unchecked (xcb_connection_t *c);
    472 
    473 /**
    474  * Return the reply
    475  * @param c      The connection
    476  * @param cookie The cookie
    477  * @param e      The xcb_generic_error_t supplied
    478  *
    479  * Returns the reply of the request asked by
    480  *
    481  * The parameter @p e supplied to this function must be NULL if
    482  * xcb_xinerama_is_active_unchecked(). is used.
    483  * Otherwise, it stores the error if any.
    484  *
    485  * The returned value must be freed by the caller using free().
    486  */
    487 xcb_xinerama_is_active_reply_t *
    488 xcb_xinerama_is_active_reply (xcb_connection_t                 *c,
    489                               xcb_xinerama_is_active_cookie_t   cookie  /**< */,
    490                               xcb_generic_error_t             **e);
    491 
    492 int
    493 xcb_xinerama_query_screens_sizeof (const void  *_buffer);
    494 
    495 /**
    496  *
    497  * @param c The connection
    498  * @return A cookie
    499  *
    500  * Delivers a request to the X server.
    501  *
    502  */
    503 xcb_xinerama_query_screens_cookie_t
    504 xcb_xinerama_query_screens (xcb_connection_t *c);
    505 
    506 /**
    507  *
    508  * @param c The connection
    509  * @return A cookie
    510  *
    511  * Delivers a request to the X server.
    512  *
    513  * This form can be used only if the request will cause
    514  * a reply to be generated. Any returned error will be
    515  * placed in the event queue.
    516  */
    517 xcb_xinerama_query_screens_cookie_t
    518 xcb_xinerama_query_screens_unchecked (xcb_connection_t *c);
    519 
    520 xcb_xinerama_screen_info_t *
    521 xcb_xinerama_query_screens_screen_info (const xcb_xinerama_query_screens_reply_t *R);
    522 
    523 int
    524 xcb_xinerama_query_screens_screen_info_length (const xcb_xinerama_query_screens_reply_t *R);
    525 
    526 xcb_xinerama_screen_info_iterator_t
    527 xcb_xinerama_query_screens_screen_info_iterator (const xcb_xinerama_query_screens_reply_t *R);
    528 
    529 /**
    530  * Return the reply
    531  * @param c      The connection
    532  * @param cookie The cookie
    533  * @param e      The xcb_generic_error_t supplied
    534  *
    535  * Returns the reply of the request asked by
    536  *
    537  * The parameter @p e supplied to this function must be NULL if
    538  * xcb_xinerama_query_screens_unchecked(). is used.
    539  * Otherwise, it stores the error if any.
    540  *
    541  * The returned value must be freed by the caller using free().
    542  */
    543 xcb_xinerama_query_screens_reply_t *
    544 xcb_xinerama_query_screens_reply (xcb_connection_t                     *c,
    545                                   xcb_xinerama_query_screens_cookie_t   cookie  /**< */,
    546                                   xcb_generic_error_t                 **e);
    547 
    548 
    549 #ifdef __cplusplus
    550 }
    551 #endif
    552 
    553 #endif
    554 
    555 /**
    556  * @}
    557  */
    558