Home | History | Annotate | Line # | Download | only in files
shape.h revision 1.2
      1 /*
      2  * This file generated automatically from shape.xml by c_client.py.
      3  * Edit at your peril.
      4  */
      5 
      6 /**
      7  * @defgroup XCB_Shape_API XCB Shape API
      8  * @brief Shape XCB Protocol Implementation.
      9  * @{
     10  **/
     11 
     12 #ifndef __SHAPE_H
     13 #define __SHAPE_H
     14 
     15 #include "xcb.h"
     16 #include "xproto.h"
     17 
     18 #ifdef __cplusplus
     19 extern "C" {
     20 #endif
     21 
     22 #define XCB_SHAPE_MAJOR_VERSION 1
     23 #define XCB_SHAPE_MINOR_VERSION 1
     24 
     25 extern xcb_extension_t xcb_shape_id;
     26 
     27 typedef uint8_t xcb_shape_op_t;
     28 
     29 /**
     30  * @brief xcb_shape_op_iterator_t
     31  **/
     32 typedef struct xcb_shape_op_iterator_t {
     33     xcb_shape_op_t *data; /**<  */
     34     int             rem; /**<  */
     35     int             index; /**<  */
     36 } xcb_shape_op_iterator_t;
     37 
     38 typedef uint8_t xcb_shape_kind_t;
     39 
     40 /**
     41  * @brief xcb_shape_kind_iterator_t
     42  **/
     43 typedef struct xcb_shape_kind_iterator_t {
     44     xcb_shape_kind_t *data; /**<  */
     45     int               rem; /**<  */
     46     int               index; /**<  */
     47 } xcb_shape_kind_iterator_t;
     48 
     49 typedef enum xcb_shape_so_t {
     50     XCB_SHAPE_SO_SET,
     51     XCB_SHAPE_SO_UNION,
     52     XCB_SHAPE_SO_INTERSECT,
     53     XCB_SHAPE_SO_SUBTRACT,
     54     XCB_SHAPE_SO_INVERT
     55 } xcb_shape_so_t;
     56 
     57 typedef enum xcb_shape_sk_t {
     58     XCB_SHAPE_SK_BOUNDING,
     59     XCB_SHAPE_SK_CLIP,
     60     XCB_SHAPE_SK_INPUT
     61 } xcb_shape_sk_t;
     62 
     63 /** Opcode for xcb_shape_notify. */
     64 #define XCB_SHAPE_NOTIFY 0
     65 
     66 /**
     67  * @brief xcb_shape_notify_event_t
     68  **/
     69 typedef struct xcb_shape_notify_event_t {
     70     uint8_t          response_type; /**<  */
     71     xcb_shape_kind_t shape_kind; /**<  */
     72     uint16_t         sequence; /**<  */
     73     xcb_window_t     affected_window; /**<  */
     74     int16_t          extents_x; /**<  */
     75     int16_t          extents_y; /**<  */
     76     uint16_t         extents_width; /**<  */
     77     uint16_t         extents_height; /**<  */
     78     xcb_timestamp_t  server_time; /**<  */
     79     uint8_t          shaped; /**<  */
     80     uint8_t          pad0[11]; /**<  */
     81 } xcb_shape_notify_event_t;
     82 
     83 /**
     84  * @brief xcb_shape_query_version_cookie_t
     85  **/
     86 typedef struct xcb_shape_query_version_cookie_t {
     87     unsigned int sequence; /**<  */
     88 } xcb_shape_query_version_cookie_t;
     89 
     90 /** Opcode for xcb_shape_query_version. */
     91 #define XCB_SHAPE_QUERY_VERSION 0
     92 
     93 /**
     94  * @brief xcb_shape_query_version_request_t
     95  **/
     96 typedef struct xcb_shape_query_version_request_t {
     97     uint8_t  major_opcode; /**<  */
     98     uint8_t  minor_opcode; /**<  */
     99     uint16_t length; /**<  */
    100 } xcb_shape_query_version_request_t;
    101 
    102 /**
    103  * @brief xcb_shape_query_version_reply_t
    104  **/
    105 typedef struct xcb_shape_query_version_reply_t {
    106     uint8_t  response_type; /**<  */
    107     uint8_t  pad0; /**<  */
    108     uint16_t sequence; /**<  */
    109     uint32_t length; /**<  */
    110     uint16_t major_version; /**<  */
    111     uint16_t minor_version; /**<  */
    112 } xcb_shape_query_version_reply_t;
    113 
    114 /** Opcode for xcb_shape_rectangles. */
    115 #define XCB_SHAPE_RECTANGLES 1
    116 
    117 /**
    118  * @brief xcb_shape_rectangles_request_t
    119  **/
    120 typedef struct xcb_shape_rectangles_request_t {
    121     uint8_t          major_opcode; /**<  */
    122     uint8_t          minor_opcode; /**<  */
    123     uint16_t         length; /**<  */
    124     xcb_shape_op_t   operation; /**<  */
    125     xcb_shape_kind_t destination_kind; /**<  */
    126     uint8_t          ordering; /**<  */
    127     uint8_t          pad0; /**<  */
    128     xcb_window_t     destination_window; /**<  */
    129     int16_t          x_offset; /**<  */
    130     int16_t          y_offset; /**<  */
    131 } xcb_shape_rectangles_request_t;
    132 
    133 /** Opcode for xcb_shape_mask. */
    134 #define XCB_SHAPE_MASK 2
    135 
    136 /**
    137  * @brief xcb_shape_mask_request_t
    138  **/
    139 typedef struct xcb_shape_mask_request_t {
    140     uint8_t          major_opcode; /**<  */
    141     uint8_t          minor_opcode; /**<  */
    142     uint16_t         length; /**<  */
    143     xcb_shape_op_t   operation; /**<  */
    144     xcb_shape_kind_t destination_kind; /**<  */
    145     uint8_t          pad0[2]; /**<  */
    146     xcb_window_t     destination_window; /**<  */
    147     int16_t          x_offset; /**<  */
    148     int16_t          y_offset; /**<  */
    149     xcb_pixmap_t     source_bitmap; /**<  */
    150 } xcb_shape_mask_request_t;
    151 
    152 /** Opcode for xcb_shape_combine. */
    153 #define XCB_SHAPE_COMBINE 3
    154 
    155 /**
    156  * @brief xcb_shape_combine_request_t
    157  **/
    158 typedef struct xcb_shape_combine_request_t {
    159     uint8_t          major_opcode; /**<  */
    160     uint8_t          minor_opcode; /**<  */
    161     uint16_t         length; /**<  */
    162     xcb_shape_op_t   operation; /**<  */
    163     xcb_shape_kind_t destination_kind; /**<  */
    164     xcb_shape_kind_t source_kind; /**<  */
    165     uint8_t          pad0; /**<  */
    166     xcb_window_t     destination_window; /**<  */
    167     int16_t          x_offset; /**<  */
    168     int16_t          y_offset; /**<  */
    169     xcb_window_t     source_window; /**<  */
    170 } xcb_shape_combine_request_t;
    171 
    172 /** Opcode for xcb_shape_offset. */
    173 #define XCB_SHAPE_OFFSET 4
    174 
    175 /**
    176  * @brief xcb_shape_offset_request_t
    177  **/
    178 typedef struct xcb_shape_offset_request_t {
    179     uint8_t          major_opcode; /**<  */
    180     uint8_t          minor_opcode; /**<  */
    181     uint16_t         length; /**<  */
    182     xcb_shape_kind_t destination_kind; /**<  */
    183     uint8_t          pad0[3]; /**<  */
    184     xcb_window_t     destination_window; /**<  */
    185     int16_t          x_offset; /**<  */
    186     int16_t          y_offset; /**<  */
    187 } xcb_shape_offset_request_t;
    188 
    189 /**
    190  * @brief xcb_shape_query_extents_cookie_t
    191  **/
    192 typedef struct xcb_shape_query_extents_cookie_t {
    193     unsigned int sequence; /**<  */
    194 } xcb_shape_query_extents_cookie_t;
    195 
    196 /** Opcode for xcb_shape_query_extents. */
    197 #define XCB_SHAPE_QUERY_EXTENTS 5
    198 
    199 /**
    200  * @brief xcb_shape_query_extents_request_t
    201  **/
    202 typedef struct xcb_shape_query_extents_request_t {
    203     uint8_t      major_opcode; /**<  */
    204     uint8_t      minor_opcode; /**<  */
    205     uint16_t     length; /**<  */
    206     xcb_window_t destination_window; /**<  */
    207 } xcb_shape_query_extents_request_t;
    208 
    209 /**
    210  * @brief xcb_shape_query_extents_reply_t
    211  **/
    212 typedef struct xcb_shape_query_extents_reply_t {
    213     uint8_t  response_type; /**<  */
    214     uint8_t  pad0; /**<  */
    215     uint16_t sequence; /**<  */
    216     uint32_t length; /**<  */
    217     uint8_t  bounding_shaped; /**<  */
    218     uint8_t  clip_shaped; /**<  */
    219     uint8_t  pad1[2]; /**<  */
    220     int16_t  bounding_shape_extents_x; /**<  */
    221     int16_t  bounding_shape_extents_y; /**<  */
    222     uint16_t bounding_shape_extents_width; /**<  */
    223     uint16_t bounding_shape_extents_height; /**<  */
    224     int16_t  clip_shape_extents_x; /**<  */
    225     int16_t  clip_shape_extents_y; /**<  */
    226     uint16_t clip_shape_extents_width; /**<  */
    227     uint16_t clip_shape_extents_height; /**<  */
    228 } xcb_shape_query_extents_reply_t;
    229 
    230 /** Opcode for xcb_shape_select_input. */
    231 #define XCB_SHAPE_SELECT_INPUT 6
    232 
    233 /**
    234  * @brief xcb_shape_select_input_request_t
    235  **/
    236 typedef struct xcb_shape_select_input_request_t {
    237     uint8_t      major_opcode; /**<  */
    238     uint8_t      minor_opcode; /**<  */
    239     uint16_t     length; /**<  */
    240     xcb_window_t destination_window; /**<  */
    241     uint8_t      enable; /**<  */
    242     uint8_t      pad0[3]; /**<  */
    243 } xcb_shape_select_input_request_t;
    244 
    245 /**
    246  * @brief xcb_shape_input_selected_cookie_t
    247  **/
    248 typedef struct xcb_shape_input_selected_cookie_t {
    249     unsigned int sequence; /**<  */
    250 } xcb_shape_input_selected_cookie_t;
    251 
    252 /** Opcode for xcb_shape_input_selected. */
    253 #define XCB_SHAPE_INPUT_SELECTED 7
    254 
    255 /**
    256  * @brief xcb_shape_input_selected_request_t
    257  **/
    258 typedef struct xcb_shape_input_selected_request_t {
    259     uint8_t      major_opcode; /**<  */
    260     uint8_t      minor_opcode; /**<  */
    261     uint16_t     length; /**<  */
    262     xcb_window_t destination_window; /**<  */
    263 } xcb_shape_input_selected_request_t;
    264 
    265 /**
    266  * @brief xcb_shape_input_selected_reply_t
    267  **/
    268 typedef struct xcb_shape_input_selected_reply_t {
    269     uint8_t  response_type; /**<  */
    270     uint8_t  enabled; /**<  */
    271     uint16_t sequence; /**<  */
    272     uint32_t length; /**<  */
    273 } xcb_shape_input_selected_reply_t;
    274 
    275 /**
    276  * @brief xcb_shape_get_rectangles_cookie_t
    277  **/
    278 typedef struct xcb_shape_get_rectangles_cookie_t {
    279     unsigned int sequence; /**<  */
    280 } xcb_shape_get_rectangles_cookie_t;
    281 
    282 /** Opcode for xcb_shape_get_rectangles. */
    283 #define XCB_SHAPE_GET_RECTANGLES 8
    284 
    285 /**
    286  * @brief xcb_shape_get_rectangles_request_t
    287  **/
    288 typedef struct xcb_shape_get_rectangles_request_t {
    289     uint8_t          major_opcode; /**<  */
    290     uint8_t          minor_opcode; /**<  */
    291     uint16_t         length; /**<  */
    292     xcb_window_t     window; /**<  */
    293     xcb_shape_kind_t source_kind; /**<  */
    294     uint8_t          pad0[3]; /**<  */
    295 } xcb_shape_get_rectangles_request_t;
    296 
    297 /**
    298  * @brief xcb_shape_get_rectangles_reply_t
    299  **/
    300 typedef struct xcb_shape_get_rectangles_reply_t {
    301     uint8_t  response_type; /**<  */
    302     uint8_t  ordering; /**<  */
    303     uint16_t sequence; /**<  */
    304     uint32_t length; /**<  */
    305     uint32_t rectangles_len; /**<  */
    306     uint8_t  pad0[20]; /**<  */
    307 } xcb_shape_get_rectangles_reply_t;
    308 
    309 /**
    310  * Get the next element of the iterator
    311  * @param i Pointer to a xcb_shape_op_iterator_t
    312  *
    313  * Get the next element in the iterator. The member rem is
    314  * decreased by one. The member data points to the next
    315  * element. The member index is increased by sizeof(xcb_shape_op_t)
    316  */
    317 
    318 /*****************************************************************************
    319  **
    320  ** void xcb_shape_op_next
    321  **
    322  ** @param xcb_shape_op_iterator_t *i
    323  ** @returns void
    324  **
    325  *****************************************************************************/
    326 
    327 void
    328 xcb_shape_op_next (xcb_shape_op_iterator_t *i  /**< */);
    329 
    330 /**
    331  * Return the iterator pointing to the last element
    332  * @param i An xcb_shape_op_iterator_t
    333  * @return  The iterator pointing to the last element
    334  *
    335  * Set the current element in the iterator to the last element.
    336  * The member rem is set to 0. The member data points to the
    337  * last element.
    338  */
    339 
    340 /*****************************************************************************
    341  **
    342  ** xcb_generic_iterator_t xcb_shape_op_end
    343  **
    344  ** @param xcb_shape_op_iterator_t i
    345  ** @returns xcb_generic_iterator_t
    346  **
    347  *****************************************************************************/
    348 
    349 xcb_generic_iterator_t
    350 xcb_shape_op_end (xcb_shape_op_iterator_t i  /**< */);
    351 
    352 /**
    353  * Get the next element of the iterator
    354  * @param i Pointer to a xcb_shape_kind_iterator_t
    355  *
    356  * Get the next element in the iterator. The member rem is
    357  * decreased by one. The member data points to the next
    358  * element. The member index is increased by sizeof(xcb_shape_kind_t)
    359  */
    360 
    361 /*****************************************************************************
    362  **
    363  ** void xcb_shape_kind_next
    364  **
    365  ** @param xcb_shape_kind_iterator_t *i
    366  ** @returns void
    367  **
    368  *****************************************************************************/
    369 
    370 void
    371 xcb_shape_kind_next (xcb_shape_kind_iterator_t *i  /**< */);
    372 
    373 /**
    374  * Return the iterator pointing to the last element
    375  * @param i An xcb_shape_kind_iterator_t
    376  * @return  The iterator pointing to the last element
    377  *
    378  * Set the current element in the iterator to the last element.
    379  * The member rem is set to 0. The member data points to the
    380  * last element.
    381  */
    382 
    383 /*****************************************************************************
    384  **
    385  ** xcb_generic_iterator_t xcb_shape_kind_end
    386  **
    387  ** @param xcb_shape_kind_iterator_t i
    388  ** @returns xcb_generic_iterator_t
    389  **
    390  *****************************************************************************/
    391 
    392 xcb_generic_iterator_t
    393 xcb_shape_kind_end (xcb_shape_kind_iterator_t i  /**< */);
    394 
    395 /**
    396  *
    397  * @param c The connection
    398  * @return A cookie
    399  *
    400  * Delivers a request to the X server.
    401  *
    402  */
    403 
    404 /*****************************************************************************
    405  **
    406  ** xcb_shape_query_version_cookie_t xcb_shape_query_version
    407  **
    408  ** @param xcb_connection_t *c
    409  ** @returns xcb_shape_query_version_cookie_t
    410  **
    411  *****************************************************************************/
    412 
    413 xcb_shape_query_version_cookie_t
    414 xcb_shape_query_version (xcb_connection_t *c  /**< */);
    415 
    416 /**
    417  *
    418  * @param c The connection
    419  * @return A cookie
    420  *
    421  * Delivers a request to the X server.
    422  *
    423  * This form can be used only if the request will cause
    424  * a reply to be generated. Any returned error will be
    425  * placed in the event queue.
    426  */
    427 
    428 /*****************************************************************************
    429  **
    430  ** xcb_shape_query_version_cookie_t xcb_shape_query_version_unchecked
    431  **
    432  ** @param xcb_connection_t *c
    433  ** @returns xcb_shape_query_version_cookie_t
    434  **
    435  *****************************************************************************/
    436 
    437 xcb_shape_query_version_cookie_t
    438 xcb_shape_query_version_unchecked (xcb_connection_t *c  /**< */);
    439 
    440 /**
    441  * Return the reply
    442  * @param c      The connection
    443  * @param cookie The cookie
    444  * @param e      The xcb_generic_error_t supplied
    445  *
    446  * Returns the reply of the request asked by
    447  *
    448  * The parameter @p e supplied to this function must be NULL if
    449  * xcb_shape_query_version_unchecked(). is used.
    450  * Otherwise, it stores the error if any.
    451  *
    452  * The returned value must be freed by the caller using free().
    453  */
    454 
    455 /*****************************************************************************
    456  **
    457  ** xcb_shape_query_version_reply_t * xcb_shape_query_version_reply
    458  **
    459  ** @param xcb_connection_t                  *c
    460  ** @param xcb_shape_query_version_cookie_t   cookie
    461  ** @param xcb_generic_error_t              **e
    462  ** @returns xcb_shape_query_version_reply_t *
    463  **
    464  *****************************************************************************/
    465 
    466 xcb_shape_query_version_reply_t *
    467 xcb_shape_query_version_reply (xcb_connection_t                  *c  /**< */,
    468                                xcb_shape_query_version_cookie_t   cookie  /**< */,
    469                                xcb_generic_error_t              **e  /**< */);
    470 
    471 int
    472 xcb_shape_rectangles_sizeof (const void  *_buffer  /**< */,
    473                              uint32_t     rectangles_len  /**< */);
    474 
    475 /**
    476  *
    477  * @param c The connection
    478  * @return A cookie
    479  *
    480  * Delivers a request to the X server.
    481  *
    482  * This form can be used only if the request will not cause
    483  * a reply to be generated. Any returned error will be
    484  * saved for handling by xcb_request_check().
    485  */
    486 
    487 /*****************************************************************************
    488  **
    489  ** xcb_void_cookie_t xcb_shape_rectangles_checked
    490  **
    491  ** @param xcb_connection_t      *c
    492  ** @param xcb_shape_op_t         operation
    493  ** @param xcb_shape_kind_t       destination_kind
    494  ** @param uint8_t                ordering
    495  ** @param xcb_window_t           destination_window
    496  ** @param int16_t                x_offset
    497  ** @param int16_t                y_offset
    498  ** @param uint32_t               rectangles_len
    499  ** @param const xcb_rectangle_t *rectangles
    500  ** @returns xcb_void_cookie_t
    501  **
    502  *****************************************************************************/
    503 
    504 xcb_void_cookie_t
    505 xcb_shape_rectangles_checked (xcb_connection_t      *c  /**< */,
    506                               xcb_shape_op_t         operation  /**< */,
    507                               xcb_shape_kind_t       destination_kind  /**< */,
    508                               uint8_t                ordering  /**< */,
    509                               xcb_window_t           destination_window  /**< */,
    510                               int16_t                x_offset  /**< */,
    511                               int16_t                y_offset  /**< */,
    512                               uint32_t               rectangles_len  /**< */,
    513                               const xcb_rectangle_t *rectangles  /**< */);
    514 
    515 /**
    516  *
    517  * @param c The connection
    518  * @return A cookie
    519  *
    520  * Delivers a request to the X server.
    521  *
    522  */
    523 
    524 /*****************************************************************************
    525  **
    526  ** xcb_void_cookie_t xcb_shape_rectangles
    527  **
    528  ** @param xcb_connection_t      *c
    529  ** @param xcb_shape_op_t         operation
    530  ** @param xcb_shape_kind_t       destination_kind
    531  ** @param uint8_t                ordering
    532  ** @param xcb_window_t           destination_window
    533  ** @param int16_t                x_offset
    534  ** @param int16_t                y_offset
    535  ** @param uint32_t               rectangles_len
    536  ** @param const xcb_rectangle_t *rectangles
    537  ** @returns xcb_void_cookie_t
    538  **
    539  *****************************************************************************/
    540 
    541 xcb_void_cookie_t
    542 xcb_shape_rectangles (xcb_connection_t      *c  /**< */,
    543                       xcb_shape_op_t         operation  /**< */,
    544                       xcb_shape_kind_t       destination_kind  /**< */,
    545                       uint8_t                ordering  /**< */,
    546                       xcb_window_t           destination_window  /**< */,
    547                       int16_t                x_offset  /**< */,
    548                       int16_t                y_offset  /**< */,
    549                       uint32_t               rectangles_len  /**< */,
    550                       const xcb_rectangle_t *rectangles  /**< */);
    551 
    552 /**
    553  *
    554  * @param c The connection
    555  * @return A cookie
    556  *
    557  * Delivers a request to the X server.
    558  *
    559  * This form can be used only if the request will not cause
    560  * a reply to be generated. Any returned error will be
    561  * saved for handling by xcb_request_check().
    562  */
    563 
    564 /*****************************************************************************
    565  **
    566  ** xcb_void_cookie_t xcb_shape_mask_checked
    567  **
    568  ** @param xcb_connection_t *c
    569  ** @param xcb_shape_op_t    operation
    570  ** @param xcb_shape_kind_t  destination_kind
    571  ** @param xcb_window_t      destination_window
    572  ** @param int16_t           x_offset
    573  ** @param int16_t           y_offset
    574  ** @param xcb_pixmap_t      source_bitmap
    575  ** @returns xcb_void_cookie_t
    576  **
    577  *****************************************************************************/
    578 
    579 xcb_void_cookie_t
    580 xcb_shape_mask_checked (xcb_connection_t *c  /**< */,
    581                         xcb_shape_op_t    operation  /**< */,
    582                         xcb_shape_kind_t  destination_kind  /**< */,
    583                         xcb_window_t      destination_window  /**< */,
    584                         int16_t           x_offset  /**< */,
    585                         int16_t           y_offset  /**< */,
    586                         xcb_pixmap_t      source_bitmap  /**< */);
    587 
    588 /**
    589  *
    590  * @param c The connection
    591  * @return A cookie
    592  *
    593  * Delivers a request to the X server.
    594  *
    595  */
    596 
    597 /*****************************************************************************
    598  **
    599  ** xcb_void_cookie_t xcb_shape_mask
    600  **
    601  ** @param xcb_connection_t *c
    602  ** @param xcb_shape_op_t    operation
    603  ** @param xcb_shape_kind_t  destination_kind
    604  ** @param xcb_window_t      destination_window
    605  ** @param int16_t           x_offset
    606  ** @param int16_t           y_offset
    607  ** @param xcb_pixmap_t      source_bitmap
    608  ** @returns xcb_void_cookie_t
    609  **
    610  *****************************************************************************/
    611 
    612 xcb_void_cookie_t
    613 xcb_shape_mask (xcb_connection_t *c  /**< */,
    614                 xcb_shape_op_t    operation  /**< */,
    615                 xcb_shape_kind_t  destination_kind  /**< */,
    616                 xcb_window_t      destination_window  /**< */,
    617                 int16_t           x_offset  /**< */,
    618                 int16_t           y_offset  /**< */,
    619                 xcb_pixmap_t      source_bitmap  /**< */);
    620 
    621 /**
    622  *
    623  * @param c The connection
    624  * @return A cookie
    625  *
    626  * Delivers a request to the X server.
    627  *
    628  * This form can be used only if the request will not cause
    629  * a reply to be generated. Any returned error will be
    630  * saved for handling by xcb_request_check().
    631  */
    632 
    633 /*****************************************************************************
    634  **
    635  ** xcb_void_cookie_t xcb_shape_combine_checked
    636  **
    637  ** @param xcb_connection_t *c
    638  ** @param xcb_shape_op_t    operation
    639  ** @param xcb_shape_kind_t  destination_kind
    640  ** @param xcb_shape_kind_t  source_kind
    641  ** @param xcb_window_t      destination_window
    642  ** @param int16_t           x_offset
    643  ** @param int16_t           y_offset
    644  ** @param xcb_window_t      source_window
    645  ** @returns xcb_void_cookie_t
    646  **
    647  *****************************************************************************/
    648 
    649 xcb_void_cookie_t
    650 xcb_shape_combine_checked (xcb_connection_t *c  /**< */,
    651                            xcb_shape_op_t    operation  /**< */,
    652                            xcb_shape_kind_t  destination_kind  /**< */,
    653                            xcb_shape_kind_t  source_kind  /**< */,
    654                            xcb_window_t      destination_window  /**< */,
    655                            int16_t           x_offset  /**< */,
    656                            int16_t           y_offset  /**< */,
    657                            xcb_window_t      source_window  /**< */);
    658 
    659 /**
    660  *
    661  * @param c The connection
    662  * @return A cookie
    663  *
    664  * Delivers a request to the X server.
    665  *
    666  */
    667 
    668 /*****************************************************************************
    669  **
    670  ** xcb_void_cookie_t xcb_shape_combine
    671  **
    672  ** @param xcb_connection_t *c
    673  ** @param xcb_shape_op_t    operation
    674  ** @param xcb_shape_kind_t  destination_kind
    675  ** @param xcb_shape_kind_t  source_kind
    676  ** @param xcb_window_t      destination_window
    677  ** @param int16_t           x_offset
    678  ** @param int16_t           y_offset
    679  ** @param xcb_window_t      source_window
    680  ** @returns xcb_void_cookie_t
    681  **
    682  *****************************************************************************/
    683 
    684 xcb_void_cookie_t
    685 xcb_shape_combine (xcb_connection_t *c  /**< */,
    686                    xcb_shape_op_t    operation  /**< */,
    687                    xcb_shape_kind_t  destination_kind  /**< */,
    688                    xcb_shape_kind_t  source_kind  /**< */,
    689                    xcb_window_t      destination_window  /**< */,
    690                    int16_t           x_offset  /**< */,
    691                    int16_t           y_offset  /**< */,
    692                    xcb_window_t      source_window  /**< */);
    693 
    694 /**
    695  *
    696  * @param c The connection
    697  * @return A cookie
    698  *
    699  * Delivers a request to the X server.
    700  *
    701  * This form can be used only if the request will not cause
    702  * a reply to be generated. Any returned error will be
    703  * saved for handling by xcb_request_check().
    704  */
    705 
    706 /*****************************************************************************
    707  **
    708  ** xcb_void_cookie_t xcb_shape_offset_checked
    709  **
    710  ** @param xcb_connection_t *c
    711  ** @param xcb_shape_kind_t  destination_kind
    712  ** @param xcb_window_t      destination_window
    713  ** @param int16_t           x_offset
    714  ** @param int16_t           y_offset
    715  ** @returns xcb_void_cookie_t
    716  **
    717  *****************************************************************************/
    718 
    719 xcb_void_cookie_t
    720 xcb_shape_offset_checked (xcb_connection_t *c  /**< */,
    721                           xcb_shape_kind_t  destination_kind  /**< */,
    722                           xcb_window_t      destination_window  /**< */,
    723                           int16_t           x_offset  /**< */,
    724                           int16_t           y_offset  /**< */);
    725 
    726 /**
    727  *
    728  * @param c The connection
    729  * @return A cookie
    730  *
    731  * Delivers a request to the X server.
    732  *
    733  */
    734 
    735 /*****************************************************************************
    736  **
    737  ** xcb_void_cookie_t xcb_shape_offset
    738  **
    739  ** @param xcb_connection_t *c
    740  ** @param xcb_shape_kind_t  destination_kind
    741  ** @param xcb_window_t      destination_window
    742  ** @param int16_t           x_offset
    743  ** @param int16_t           y_offset
    744  ** @returns xcb_void_cookie_t
    745  **
    746  *****************************************************************************/
    747 
    748 xcb_void_cookie_t
    749 xcb_shape_offset (xcb_connection_t *c  /**< */,
    750                   xcb_shape_kind_t  destination_kind  /**< */,
    751                   xcb_window_t      destination_window  /**< */,
    752                   int16_t           x_offset  /**< */,
    753                   int16_t           y_offset  /**< */);
    754 
    755 /**
    756  *
    757  * @param c The connection
    758  * @return A cookie
    759  *
    760  * Delivers a request to the X server.
    761  *
    762  */
    763 
    764 /*****************************************************************************
    765  **
    766  ** xcb_shape_query_extents_cookie_t xcb_shape_query_extents
    767  **
    768  ** @param xcb_connection_t *c
    769  ** @param xcb_window_t      destination_window
    770  ** @returns xcb_shape_query_extents_cookie_t
    771  **
    772  *****************************************************************************/
    773 
    774 xcb_shape_query_extents_cookie_t
    775 xcb_shape_query_extents (xcb_connection_t *c  /**< */,
    776                          xcb_window_t      destination_window  /**< */);
    777 
    778 /**
    779  *
    780  * @param c The connection
    781  * @return A cookie
    782  *
    783  * Delivers a request to the X server.
    784  *
    785  * This form can be used only if the request will cause
    786  * a reply to be generated. Any returned error will be
    787  * placed in the event queue.
    788  */
    789 
    790 /*****************************************************************************
    791  **
    792  ** xcb_shape_query_extents_cookie_t xcb_shape_query_extents_unchecked
    793  **
    794  ** @param xcb_connection_t *c
    795  ** @param xcb_window_t      destination_window
    796  ** @returns xcb_shape_query_extents_cookie_t
    797  **
    798  *****************************************************************************/
    799 
    800 xcb_shape_query_extents_cookie_t
    801 xcb_shape_query_extents_unchecked (xcb_connection_t *c  /**< */,
    802                                    xcb_window_t      destination_window  /**< */);
    803 
    804 /**
    805  * Return the reply
    806  * @param c      The connection
    807  * @param cookie The cookie
    808  * @param e      The xcb_generic_error_t supplied
    809  *
    810  * Returns the reply of the request asked by
    811  *
    812  * The parameter @p e supplied to this function must be NULL if
    813  * xcb_shape_query_extents_unchecked(). is used.
    814  * Otherwise, it stores the error if any.
    815  *
    816  * The returned value must be freed by the caller using free().
    817  */
    818 
    819 /*****************************************************************************
    820  **
    821  ** xcb_shape_query_extents_reply_t * xcb_shape_query_extents_reply
    822  **
    823  ** @param xcb_connection_t                  *c
    824  ** @param xcb_shape_query_extents_cookie_t   cookie
    825  ** @param xcb_generic_error_t              **e
    826  ** @returns xcb_shape_query_extents_reply_t *
    827  **
    828  *****************************************************************************/
    829 
    830 xcb_shape_query_extents_reply_t *
    831 xcb_shape_query_extents_reply (xcb_connection_t                  *c  /**< */,
    832                                xcb_shape_query_extents_cookie_t   cookie  /**< */,
    833                                xcb_generic_error_t              **e  /**< */);
    834 
    835 /**
    836  *
    837  * @param c The connection
    838  * @return A cookie
    839  *
    840  * Delivers a request to the X server.
    841  *
    842  * This form can be used only if the request will not cause
    843  * a reply to be generated. Any returned error will be
    844  * saved for handling by xcb_request_check().
    845  */
    846 
    847 /*****************************************************************************
    848  **
    849  ** xcb_void_cookie_t xcb_shape_select_input_checked
    850  **
    851  ** @param xcb_connection_t *c
    852  ** @param xcb_window_t      destination_window
    853  ** @param uint8_t           enable
    854  ** @returns xcb_void_cookie_t
    855  **
    856  *****************************************************************************/
    857 
    858 xcb_void_cookie_t
    859 xcb_shape_select_input_checked (xcb_connection_t *c  /**< */,
    860                                 xcb_window_t      destination_window  /**< */,
    861                                 uint8_t           enable  /**< */);
    862 
    863 /**
    864  *
    865  * @param c The connection
    866  * @return A cookie
    867  *
    868  * Delivers a request to the X server.
    869  *
    870  */
    871 
    872 /*****************************************************************************
    873  **
    874  ** xcb_void_cookie_t xcb_shape_select_input
    875  **
    876  ** @param xcb_connection_t *c
    877  ** @param xcb_window_t      destination_window
    878  ** @param uint8_t           enable
    879  ** @returns xcb_void_cookie_t
    880  **
    881  *****************************************************************************/
    882 
    883 xcb_void_cookie_t
    884 xcb_shape_select_input (xcb_connection_t *c  /**< */,
    885                         xcb_window_t      destination_window  /**< */,
    886                         uint8_t           enable  /**< */);
    887 
    888 /**
    889  *
    890  * @param c The connection
    891  * @return A cookie
    892  *
    893  * Delivers a request to the X server.
    894  *
    895  */
    896 
    897 /*****************************************************************************
    898  **
    899  ** xcb_shape_input_selected_cookie_t xcb_shape_input_selected
    900  **
    901  ** @param xcb_connection_t *c
    902  ** @param xcb_window_t      destination_window
    903  ** @returns xcb_shape_input_selected_cookie_t
    904  **
    905  *****************************************************************************/
    906 
    907 xcb_shape_input_selected_cookie_t
    908 xcb_shape_input_selected (xcb_connection_t *c  /**< */,
    909                           xcb_window_t      destination_window  /**< */);
    910 
    911 /**
    912  *
    913  * @param c The connection
    914  * @return A cookie
    915  *
    916  * Delivers a request to the X server.
    917  *
    918  * This form can be used only if the request will cause
    919  * a reply to be generated. Any returned error will be
    920  * placed in the event queue.
    921  */
    922 
    923 /*****************************************************************************
    924  **
    925  ** xcb_shape_input_selected_cookie_t xcb_shape_input_selected_unchecked
    926  **
    927  ** @param xcb_connection_t *c
    928  ** @param xcb_window_t      destination_window
    929  ** @returns xcb_shape_input_selected_cookie_t
    930  **
    931  *****************************************************************************/
    932 
    933 xcb_shape_input_selected_cookie_t
    934 xcb_shape_input_selected_unchecked (xcb_connection_t *c  /**< */,
    935                                     xcb_window_t      destination_window  /**< */);
    936 
    937 /**
    938  * Return the reply
    939  * @param c      The connection
    940  * @param cookie The cookie
    941  * @param e      The xcb_generic_error_t supplied
    942  *
    943  * Returns the reply of the request asked by
    944  *
    945  * The parameter @p e supplied to this function must be NULL if
    946  * xcb_shape_input_selected_unchecked(). is used.
    947  * Otherwise, it stores the error if any.
    948  *
    949  * The returned value must be freed by the caller using free().
    950  */
    951 
    952 /*****************************************************************************
    953  **
    954  ** xcb_shape_input_selected_reply_t * xcb_shape_input_selected_reply
    955  **
    956  ** @param xcb_connection_t                   *c
    957  ** @param xcb_shape_input_selected_cookie_t   cookie
    958  ** @param xcb_generic_error_t               **e
    959  ** @returns xcb_shape_input_selected_reply_t *
    960  **
    961  *****************************************************************************/
    962 
    963 xcb_shape_input_selected_reply_t *
    964 xcb_shape_input_selected_reply (xcb_connection_t                   *c  /**< */,
    965                                 xcb_shape_input_selected_cookie_t   cookie  /**< */,
    966                                 xcb_generic_error_t               **e  /**< */);
    967 
    968 int
    969 xcb_shape_get_rectangles_sizeof (const void  *_buffer  /**< */);
    970 
    971 /**
    972  *
    973  * @param c The connection
    974  * @return A cookie
    975  *
    976  * Delivers a request to the X server.
    977  *
    978  */
    979 
    980 /*****************************************************************************
    981  **
    982  ** xcb_shape_get_rectangles_cookie_t xcb_shape_get_rectangles
    983  **
    984  ** @param xcb_connection_t *c
    985  ** @param xcb_window_t      window
    986  ** @param xcb_shape_kind_t  source_kind
    987  ** @returns xcb_shape_get_rectangles_cookie_t
    988  **
    989  *****************************************************************************/
    990 
    991 xcb_shape_get_rectangles_cookie_t
    992 xcb_shape_get_rectangles (xcb_connection_t *c  /**< */,
    993                           xcb_window_t      window  /**< */,
    994                           xcb_shape_kind_t  source_kind  /**< */);
    995 
    996 /**
    997  *
    998  * @param c The connection
    999  * @return A cookie
   1000  *
   1001  * Delivers a request to the X server.
   1002  *
   1003  * This form can be used only if the request will cause
   1004  * a reply to be generated. Any returned error will be
   1005  * placed in the event queue.
   1006  */
   1007 
   1008 /*****************************************************************************
   1009  **
   1010  ** xcb_shape_get_rectangles_cookie_t xcb_shape_get_rectangles_unchecked
   1011  **
   1012  ** @param xcb_connection_t *c
   1013  ** @param xcb_window_t      window
   1014  ** @param xcb_shape_kind_t  source_kind
   1015  ** @returns xcb_shape_get_rectangles_cookie_t
   1016  **
   1017  *****************************************************************************/
   1018 
   1019 xcb_shape_get_rectangles_cookie_t
   1020 xcb_shape_get_rectangles_unchecked (xcb_connection_t *c  /**< */,
   1021                                     xcb_window_t      window  /**< */,
   1022                                     xcb_shape_kind_t  source_kind  /**< */);
   1023 
   1024 
   1025 /*****************************************************************************
   1026  **
   1027  ** xcb_rectangle_t * xcb_shape_get_rectangles_rectangles
   1028  **
   1029  ** @param const xcb_shape_get_rectangles_reply_t *R
   1030  ** @returns xcb_rectangle_t *
   1031  **
   1032  *****************************************************************************/
   1033 
   1034 xcb_rectangle_t *
   1035 xcb_shape_get_rectangles_rectangles (const xcb_shape_get_rectangles_reply_t *R  /**< */);
   1036 
   1037 
   1038 /*****************************************************************************
   1039  **
   1040  ** int xcb_shape_get_rectangles_rectangles_length
   1041  **
   1042  ** @param const xcb_shape_get_rectangles_reply_t *R
   1043  ** @returns int
   1044  **
   1045  *****************************************************************************/
   1046 
   1047 int
   1048 xcb_shape_get_rectangles_rectangles_length (const xcb_shape_get_rectangles_reply_t *R  /**< */);
   1049 
   1050 
   1051 /*****************************************************************************
   1052  **
   1053  ** xcb_rectangle_iterator_t xcb_shape_get_rectangles_rectangles_iterator
   1054  **
   1055  ** @param const xcb_shape_get_rectangles_reply_t *R
   1056  ** @returns xcb_rectangle_iterator_t
   1057  **
   1058  *****************************************************************************/
   1059 
   1060 xcb_rectangle_iterator_t
   1061 xcb_shape_get_rectangles_rectangles_iterator (const xcb_shape_get_rectangles_reply_t *R  /**< */);
   1062 
   1063 /**
   1064  * Return the reply
   1065  * @param c      The connection
   1066  * @param cookie The cookie
   1067  * @param e      The xcb_generic_error_t supplied
   1068  *
   1069  * Returns the reply of the request asked by
   1070  *
   1071  * The parameter @p e supplied to this function must be NULL if
   1072  * xcb_shape_get_rectangles_unchecked(). is used.
   1073  * Otherwise, it stores the error if any.
   1074  *
   1075  * The returned value must be freed by the caller using free().
   1076  */
   1077 
   1078 /*****************************************************************************
   1079  **
   1080  ** xcb_shape_get_rectangles_reply_t * xcb_shape_get_rectangles_reply
   1081  **
   1082  ** @param xcb_connection_t                   *c
   1083  ** @param xcb_shape_get_rectangles_cookie_t   cookie
   1084  ** @param xcb_generic_error_t               **e
   1085  ** @returns xcb_shape_get_rectangles_reply_t *
   1086  **
   1087  *****************************************************************************/
   1088 
   1089 xcb_shape_get_rectangles_reply_t *
   1090 xcb_shape_get_rectangles_reply (xcb_connection_t                   *c  /**< */,
   1091                                 xcb_shape_get_rectangles_cookie_t   cookie  /**< */,
   1092                                 xcb_generic_error_t               **e  /**< */);
   1093 
   1094 
   1095 #ifdef __cplusplus
   1096 }
   1097 #endif
   1098 
   1099 #endif
   1100 
   1101 /**
   1102  * @}
   1103  */
   1104