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