xref: /minix/external/mit/xorg/lib/libxcb/files/shape.h (revision e3b78ef1)
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