1 /*
2  * This file generated automatically from xf86dri.xml by d_client.py.
3  * Edit at your peril.
4  */
5 
6 /**
7  * @defgroup XCB_XF86Dri_API XCB XF86Dri API
8  * @brief XF86Dri XCB Protocol Implementation.
9  * @{
10  **/
11 
12 module xcb.xf86dri;
13 
14 import xcb.xcb;
15 
16 extern (C):
17 
18 enum int XCB_XF86DRI_MAJOR_VERSION = 4;
19 enum int XCB_XF86DRI_MINOR_VERSION = 1;
20 
21 extern (C) __gshared extern xcb_extension_t xcb_xf86dri_id;
22 
23 /**
24  * @brief xcb_xf86dri_drm_clip_rect_t
25  **/
26 struct xcb_xf86dri_drm_clip_rect_t {
27 	short x1; /**<  */
28 	short y1; /**<  */
29 	short x2; /**<  */
30 	short x3; /**<  */
31 }
32 
33 /**
34  * @brief xcb_xf86dri_drm_clip_rect_iterator_t
35  **/
36 struct xcb_xf86dri_drm_clip_rect_iterator_t {
37 	xcb_xf86dri_drm_clip_rect_t* data; /**<  */
38 	int rem; /**<  */
39 	int index; /**<  */
40 }
41 
42 /**
43  * @brief xcb_xf86dri_query_version_cookie_t
44  **/
45 struct xcb_xf86dri_query_version_cookie_t {
46 	uint sequence; /**<  */
47 }
48 
49 /** Opcode for xcb_xf86dri_query_version. */
50 enum XCB_XF86DRI_QUERY_VERSION = 0;
51 
52 /**
53  * @brief xcb_xf86dri_query_version_request_t
54  **/
55 struct xcb_xf86dri_query_version_request_t {
56 	ubyte major_opcode; /**<  */
57 	ubyte minor_opcode; /**<  */
58 	ushort length; /**<  */
59 }
60 
61 /**
62  * @brief xcb_xf86dri_query_version_reply_t
63  **/
64 struct xcb_xf86dri_query_version_reply_t {
65 	ubyte response_type; /**<  */
66 	ubyte pad0; /**<  */
67 	ushort sequence; /**<  */
68 	uint length; /**<  */
69 	ushort dri_major_version; /**<  */
70 	ushort dri_minor_version; /**<  */
71 	uint dri_minor_patch; /**<  */
72 }
73 
74 /**
75  * @brief xcb_xf86dri_query_direct_rendering_capable_cookie_t
76  **/
77 struct xcb_xf86dri_query_direct_rendering_capable_cookie_t {
78 	uint sequence; /**<  */
79 }
80 
81 /** Opcode for xcb_xf86dri_query_direct_rendering_capable. */
82 enum XCB_XF86DRI_QUERY_DIRECT_RENDERING_CAPABLE = 1;
83 
84 /**
85  * @brief xcb_xf86dri_query_direct_rendering_capable_request_t
86  **/
87 struct xcb_xf86dri_query_direct_rendering_capable_request_t {
88 	ubyte major_opcode; /**<  */
89 	ubyte minor_opcode; /**<  */
90 	ushort length; /**<  */
91 	uint screen; /**<  */
92 }
93 
94 /**
95  * @brief xcb_xf86dri_query_direct_rendering_capable_reply_t
96  **/
97 struct xcb_xf86dri_query_direct_rendering_capable_reply_t {
98 	ubyte response_type; /**<  */
99 	ubyte pad0; /**<  */
100 	ushort sequence; /**<  */
101 	uint length; /**<  */
102 	ubyte is_capable; /**<  */
103 }
104 
105 /**
106  * @brief xcb_xf86dri_open_connection_cookie_t
107  **/
108 struct xcb_xf86dri_open_connection_cookie_t {
109 	uint sequence; /**<  */
110 }
111 
112 /** Opcode for xcb_xf86dri_open_connection. */
113 enum XCB_XF86DRI_OPEN_CONNECTION = 2;
114 
115 /**
116  * @brief xcb_xf86dri_open_connection_request_t
117  **/
118 struct xcb_xf86dri_open_connection_request_t {
119 	ubyte major_opcode; /**<  */
120 	ubyte minor_opcode; /**<  */
121 	ushort length; /**<  */
122 	uint screen; /**<  */
123 }
124 
125 /**
126  * @brief xcb_xf86dri_open_connection_reply_t
127  **/
128 struct xcb_xf86dri_open_connection_reply_t {
129 	ubyte response_type; /**<  */
130 	ubyte pad0; /**<  */
131 	ushort sequence; /**<  */
132 	uint length; /**<  */
133 	uint sarea_handle_low; /**<  */
134 	uint sarea_handle_high; /**<  */
135 	uint bus_id_len; /**<  */
136 	ubyte[12] pad1; /**<  */
137 }
138 
139 /** Opcode for xcb_xf86dri_close_connection. */
140 enum XCB_XF86DRI_CLOSE_CONNECTION = 3;
141 
142 /**
143  * @brief xcb_xf86dri_close_connection_request_t
144  **/
145 struct xcb_xf86dri_close_connection_request_t {
146 	ubyte major_opcode; /**<  */
147 	ubyte minor_opcode; /**<  */
148 	ushort length; /**<  */
149 	uint screen; /**<  */
150 }
151 
152 /**
153  * @brief xcb_xf86dri_get_client_driver_name_cookie_t
154  **/
155 struct xcb_xf86dri_get_client_driver_name_cookie_t {
156 	uint sequence; /**<  */
157 }
158 
159 /** Opcode for xcb_xf86dri_get_client_driver_name. */
160 enum XCB_XF86DRI_GET_CLIENT_DRIVER_NAME = 4;
161 
162 /**
163  * @brief xcb_xf86dri_get_client_driver_name_request_t
164  **/
165 struct xcb_xf86dri_get_client_driver_name_request_t {
166 	ubyte major_opcode; /**<  */
167 	ubyte minor_opcode; /**<  */
168 	ushort length; /**<  */
169 	uint screen; /**<  */
170 }
171 
172 /**
173  * @brief xcb_xf86dri_get_client_driver_name_reply_t
174  **/
175 struct xcb_xf86dri_get_client_driver_name_reply_t {
176 	ubyte response_type; /**<  */
177 	ubyte pad0; /**<  */
178 	ushort sequence; /**<  */
179 	uint length; /**<  */
180 	uint client_driver_major_version; /**<  */
181 	uint client_driver_minor_version; /**<  */
182 	uint client_driver_patch_version; /**<  */
183 	uint client_driver_name_len; /**<  */
184 	ubyte[8] pad1; /**<  */
185 }
186 
187 /**
188  * @brief xcb_xf86dri_create_context_cookie_t
189  **/
190 struct xcb_xf86dri_create_context_cookie_t {
191 	uint sequence; /**<  */
192 }
193 
194 /** Opcode for xcb_xf86dri_create_context. */
195 enum XCB_XF86DRI_CREATE_CONTEXT = 5;
196 
197 /**
198  * @brief xcb_xf86dri_create_context_request_t
199  **/
200 struct xcb_xf86dri_create_context_request_t {
201 	ubyte major_opcode; /**<  */
202 	ubyte minor_opcode; /**<  */
203 	ushort length; /**<  */
204 	uint screen; /**<  */
205 	uint visual; /**<  */
206 	uint context; /**<  */
207 }
208 
209 /**
210  * @brief xcb_xf86dri_create_context_reply_t
211  **/
212 struct xcb_xf86dri_create_context_reply_t {
213 	ubyte response_type; /**<  */
214 	ubyte pad0; /**<  */
215 	ushort sequence; /**<  */
216 	uint length; /**<  */
217 	uint hw_context; /**<  */
218 }
219 
220 /** Opcode for xcb_xf86dri_destroy_context. */
221 enum XCB_XF86DRI_DESTROY_CONTEXT = 6;
222 
223 /**
224  * @brief xcb_xf86dri_destroy_context_request_t
225  **/
226 struct xcb_xf86dri_destroy_context_request_t {
227 	ubyte major_opcode; /**<  */
228 	ubyte minor_opcode; /**<  */
229 	ushort length; /**<  */
230 	uint screen; /**<  */
231 	uint context; /**<  */
232 }
233 
234 /**
235  * @brief xcb_xf86dri_create_drawable_cookie_t
236  **/
237 struct xcb_xf86dri_create_drawable_cookie_t {
238 	uint sequence; /**<  */
239 }
240 
241 /** Opcode for xcb_xf86dri_create_drawable. */
242 enum XCB_XF86DRI_CREATE_DRAWABLE = 7;
243 
244 /**
245  * @brief xcb_xf86dri_create_drawable_request_t
246  **/
247 struct xcb_xf86dri_create_drawable_request_t {
248 	ubyte major_opcode; /**<  */
249 	ubyte minor_opcode; /**<  */
250 	ushort length; /**<  */
251 	uint screen; /**<  */
252 	uint drawable; /**<  */
253 }
254 
255 /**
256  * @brief xcb_xf86dri_create_drawable_reply_t
257  **/
258 struct xcb_xf86dri_create_drawable_reply_t {
259 	ubyte response_type; /**<  */
260 	ubyte pad0; /**<  */
261 	ushort sequence; /**<  */
262 	uint length; /**<  */
263 	uint hw_drawable_handle; /**<  */
264 }
265 
266 /** Opcode for xcb_xf86dri_destroy_drawable. */
267 enum XCB_XF86DRI_DESTROY_DRAWABLE = 8;
268 
269 /**
270  * @brief xcb_xf86dri_destroy_drawable_request_t
271  **/
272 struct xcb_xf86dri_destroy_drawable_request_t {
273 	ubyte major_opcode; /**<  */
274 	ubyte minor_opcode; /**<  */
275 	ushort length; /**<  */
276 	uint screen; /**<  */
277 	uint drawable; /**<  */
278 }
279 
280 /**
281  * @brief xcb_xf86dri_get_drawable_info_cookie_t
282  **/
283 struct xcb_xf86dri_get_drawable_info_cookie_t {
284 	uint sequence; /**<  */
285 }
286 
287 /** Opcode for xcb_xf86dri_get_drawable_info. */
288 enum XCB_XF86DRI_GET_DRAWABLE_INFO = 9;
289 
290 /**
291  * @brief xcb_xf86dri_get_drawable_info_request_t
292  **/
293 struct xcb_xf86dri_get_drawable_info_request_t {
294 	ubyte major_opcode; /**<  */
295 	ubyte minor_opcode; /**<  */
296 	ushort length; /**<  */
297 	uint screen; /**<  */
298 	uint drawable; /**<  */
299 }
300 
301 /**
302  * @brief xcb_xf86dri_get_drawable_info_reply_t
303  **/
304 struct xcb_xf86dri_get_drawable_info_reply_t {
305 	ubyte response_type; /**<  */
306 	ubyte pad0; /**<  */
307 	ushort sequence; /**<  */
308 	uint length; /**<  */
309 	uint drawable_table_index; /**<  */
310 	uint drawable_table_stamp; /**<  */
311 	short drawable_origin_X; /**<  */
312 	short drawable_origin_Y; /**<  */
313 	short drawable_size_W; /**<  */
314 	short drawable_size_H; /**<  */
315 	uint num_clip_rects; /**<  */
316 	short back_x; /**<  */
317 	short back_y; /**<  */
318 	uint num_back_clip_rects; /**<  */
319 }
320 
321 /**
322  * @brief xcb_xf86dri_get_device_info_cookie_t
323  **/
324 struct xcb_xf86dri_get_device_info_cookie_t {
325 	uint sequence; /**<  */
326 }
327 
328 /** Opcode for xcb_xf86dri_get_device_info. */
329 enum XCB_XF86DRI_GET_DEVICE_INFO = 10;
330 
331 /**
332  * @brief xcb_xf86dri_get_device_info_request_t
333  **/
334 struct xcb_xf86dri_get_device_info_request_t {
335 	ubyte major_opcode; /**<  */
336 	ubyte minor_opcode; /**<  */
337 	ushort length; /**<  */
338 	uint screen; /**<  */
339 }
340 
341 /**
342  * @brief xcb_xf86dri_get_device_info_reply_t
343  **/
344 struct xcb_xf86dri_get_device_info_reply_t {
345 	ubyte response_type; /**<  */
346 	ubyte pad0; /**<  */
347 	ushort sequence; /**<  */
348 	uint length; /**<  */
349 	uint framebuffer_handle_low; /**<  */
350 	uint framebuffer_handle_high; /**<  */
351 	uint framebuffer_origin_offset; /**<  */
352 	uint framebuffer_size; /**<  */
353 	uint framebuffer_stride; /**<  */
354 	uint device_private_size; /**<  */
355 }
356 
357 /**
358  * @brief xcb_xf86dri_auth_connection_cookie_t
359  **/
360 struct xcb_xf86dri_auth_connection_cookie_t {
361 	uint sequence; /**<  */
362 }
363 
364 /** Opcode for xcb_xf86dri_auth_connection. */
365 enum XCB_XF86DRI_AUTH_CONNECTION = 11;
366 
367 /**
368  * @brief xcb_xf86dri_auth_connection_request_t
369  **/
370 struct xcb_xf86dri_auth_connection_request_t {
371 	ubyte major_opcode; /**<  */
372 	ubyte minor_opcode; /**<  */
373 	ushort length; /**<  */
374 	uint screen; /**<  */
375 	uint magic; /**<  */
376 }
377 
378 /**
379  * @brief xcb_xf86dri_auth_connection_reply_t
380  **/
381 struct xcb_xf86dri_auth_connection_reply_t {
382 	ubyte response_type; /**<  */
383 	ubyte pad0; /**<  */
384 	ushort sequence; /**<  */
385 	uint length; /**<  */
386 	uint authenticated; /**<  */
387 }
388 
389 /**
390  * Get the next element of the iterator
391  * @param i Pointer to a xcb_xf86dri_drm_clip_rect_iterator_t
392  *
393  * Get the next element in the iterator. The member rem is
394  * decreased by one. The member data points to the next
395  * element. The member index is increased by sizeof(xcb_xf86dri_drm_clip_rect_t)
396  */
397 void xcb_xf86dri_drm_clip_rect_next(xcb_xf86dri_drm_clip_rect_iterator_t* i /**< */ );
398 
399 /**
400  * Return the iterator pointing to the last element
401  * @param i An xcb_xf86dri_drm_clip_rect_iterator_t
402  * @return  The iterator pointing to the last element
403  *
404  * Set the current element in the iterator to the last element.
405  * The member rem is set to 0. The member data points to the
406  * last element.
407  */
408 xcb_generic_iterator_t xcb_xf86dri_drm_clip_rect_end(xcb_xf86dri_drm_clip_rect_iterator_t i /**< */ );
409 
410 /**
411  *
412  * @param c The connection
413  * @return A cookie
414  *
415  * Delivers a request to the X server.
416  *
417  */
418 xcb_xf86dri_query_version_cookie_t xcb_xf86dri_query_version(xcb_connection_t* c /**< */ );
419 
420 /**
421  *
422  * @param c The connection
423  * @return A cookie
424  *
425  * Delivers a request to the X server.
426  *
427  * This form can be used only if the request will cause
428  * a reply to be generated. Any returned error will be
429  * placed in the event queue.
430  */
431 xcb_xf86dri_query_version_cookie_t xcb_xf86dri_query_version_unchecked(xcb_connection_t* c /**< */ );
432 
433 /**
434  * Return the reply
435  * @param c      The connection
436  * @param cookie The cookie
437  * @param e      The xcb_generic_error_t supplied
438  *
439  * Returns the reply of the request asked by
440  *
441  * The parameter @p e supplied to this function must be NULL if
442  * xcb_xf86dri_query_version_unchecked(). is used.
443  * Otherwise, it stores the error if any.
444  *
445  * The returned value must be freed by the caller using free().
446  */
447 xcb_xf86dri_query_version_reply_t* xcb_xf86dri_query_version_reply(xcb_connection_t* c /**< */ ,
448 	xcb_xf86dri_query_version_cookie_t cookie /**< */ , xcb_generic_error_t** e /**< */ );
449 
450 /**
451  *
452  * @param c The connection
453  * @return A cookie
454  *
455  * Delivers a request to the X server.
456  *
457  */
458 xcb_xf86dri_query_direct_rendering_capable_cookie_t xcb_xf86dri_query_direct_rendering_capable(xcb_connection_t* c /**< */ ,
459 	uint screen /**< */ );
460 
461 /**
462  *
463  * @param c The connection
464  * @return A cookie
465  *
466  * Delivers a request to the X server.
467  *
468  * This form can be used only if the request will cause
469  * a reply to be generated. Any returned error will be
470  * placed in the event queue.
471  */
472 xcb_xf86dri_query_direct_rendering_capable_cookie_t xcb_xf86dri_query_direct_rendering_capable_unchecked(xcb_connection_t* c /**< */ ,
473 	uint screen /**< */ );
474 
475 /**
476  * Return the reply
477  * @param c      The connection
478  * @param cookie The cookie
479  * @param e      The xcb_generic_error_t supplied
480  *
481  * Returns the reply of the request asked by
482  *
483  * The parameter @p e supplied to this function must be NULL if
484  * xcb_xf86dri_query_direct_rendering_capable_unchecked(). is used.
485  * Otherwise, it stores the error if any.
486  *
487  * The returned value must be freed by the caller using free().
488  */
489 xcb_xf86dri_query_direct_rendering_capable_reply_t* xcb_xf86dri_query_direct_rendering_capable_reply(xcb_connection_t* c /**< */ ,
490 	xcb_xf86dri_query_direct_rendering_capable_cookie_t cookie /**< */ , xcb_generic_error_t** e /**< */ );
491 
492 int xcb_xf86dri_open_connection_sizeof(const void* _buffer /**< */ );
493 
494 /**
495  *
496  * @param c The connection
497  * @return A cookie
498  *
499  * Delivers a request to the X server.
500  *
501  */
502 xcb_xf86dri_open_connection_cookie_t xcb_xf86dri_open_connection(xcb_connection_t* c /**< */ , uint screen /**< */ );
503 
504 /**
505  *
506  * @param c The connection
507  * @return A cookie
508  *
509  * Delivers a request to the X server.
510  *
511  * This form can be used only if the request will cause
512  * a reply to be generated. Any returned error will be
513  * placed in the event queue.
514  */
515 xcb_xf86dri_open_connection_cookie_t xcb_xf86dri_open_connection_unchecked(xcb_connection_t* c /**< */ , uint screen /**< */ );
516 
517 char* xcb_xf86dri_open_connection_bus_id(const xcb_xf86dri_open_connection_reply_t* R /**< */ );
518 
519 int xcb_xf86dri_open_connection_bus_id_length(const xcb_xf86dri_open_connection_reply_t* R /**< */ );
520 
521 xcb_generic_iterator_t xcb_xf86dri_open_connection_bus_id_end(const xcb_xf86dri_open_connection_reply_t* R /**< */ );
522 
523 /**
524  * Return the reply
525  * @param c      The connection
526  * @param cookie The cookie
527  * @param e      The xcb_generic_error_t supplied
528  *
529  * Returns the reply of the request asked by
530  *
531  * The parameter @p e supplied to this function must be NULL if
532  * xcb_xf86dri_open_connection_unchecked(). is used.
533  * Otherwise, it stores the error if any.
534  *
535  * The returned value must be freed by the caller using free().
536  */
537 xcb_xf86dri_open_connection_reply_t* xcb_xf86dri_open_connection_reply(xcb_connection_t* c /**< */ ,
538 	xcb_xf86dri_open_connection_cookie_t cookie /**< */ , xcb_generic_error_t** e /**< */ );
539 
540 /**
541  *
542  * @param c The connection
543  * @return A cookie
544  *
545  * Delivers a request to the X server.
546  *
547  * This form can be used only if the request will not cause
548  * a reply to be generated. Any returned error will be
549  * saved for handling by xcb_request_check().
550  */
551 xcb_void_cookie_t xcb_xf86dri_close_connection_checked(xcb_connection_t* c /**< */ , uint screen /**< */ );
552 
553 /**
554  *
555  * @param c The connection
556  * @return A cookie
557  *
558  * Delivers a request to the X server.
559  *
560  */
561 xcb_void_cookie_t xcb_xf86dri_close_connection(xcb_connection_t* c /**< */ , uint screen /**< */ );
562 
563 int xcb_xf86dri_get_client_driver_name_sizeof(const void* _buffer /**< */ );
564 
565 /**
566  *
567  * @param c The connection
568  * @return A cookie
569  *
570  * Delivers a request to the X server.
571  *
572  */
573 xcb_xf86dri_get_client_driver_name_cookie_t xcb_xf86dri_get_client_driver_name(xcb_connection_t* c /**< */ , uint screen /**< */ );
574 
575 /**
576  *
577  * @param c The connection
578  * @return A cookie
579  *
580  * Delivers a request to the X server.
581  *
582  * This form can be used only if the request will cause
583  * a reply to be generated. Any returned error will be
584  * placed in the event queue.
585  */
586 xcb_xf86dri_get_client_driver_name_cookie_t xcb_xf86dri_get_client_driver_name_unchecked(xcb_connection_t* c /**< */ , uint screen /**< */ );
587 
588 char* xcb_xf86dri_get_client_driver_name_client_driver_name(const xcb_xf86dri_get_client_driver_name_reply_t* R /**< */ );
589 
590 int xcb_xf86dri_get_client_driver_name_client_driver_name_length(const xcb_xf86dri_get_client_driver_name_reply_t* R /**< */ );
591 
592 xcb_generic_iterator_t xcb_xf86dri_get_client_driver_name_client_driver_name_end(const xcb_xf86dri_get_client_driver_name_reply_t* R /**< */ );
593 
594 /**
595  * Return the reply
596  * @param c      The connection
597  * @param cookie The cookie
598  * @param e      The xcb_generic_error_t supplied
599  *
600  * Returns the reply of the request asked by
601  *
602  * The parameter @p e supplied to this function must be NULL if
603  * xcb_xf86dri_get_client_driver_name_unchecked(). is used.
604  * Otherwise, it stores the error if any.
605  *
606  * The returned value must be freed by the caller using free().
607  */
608 xcb_xf86dri_get_client_driver_name_reply_t* xcb_xf86dri_get_client_driver_name_reply(xcb_connection_t* c /**< */ ,
609 	xcb_xf86dri_get_client_driver_name_cookie_t cookie /**< */ , xcb_generic_error_t** e /**< */ );
610 
611 /**
612  *
613  * @param c The connection
614  * @return A cookie
615  *
616  * Delivers a request to the X server.
617  *
618  */
619 xcb_xf86dri_create_context_cookie_t xcb_xf86dri_create_context(xcb_connection_t* c /**< */ , uint screen /**< */ , uint visual /**< */ ,
620 	uint context /**< */ );
621 
622 /**
623  *
624  * @param c The connection
625  * @return A cookie
626  *
627  * Delivers a request to the X server.
628  *
629  * This form can be used only if the request will cause
630  * a reply to be generated. Any returned error will be
631  * placed in the event queue.
632  */
633 xcb_xf86dri_create_context_cookie_t xcb_xf86dri_create_context_unchecked(xcb_connection_t* c /**< */ , uint screen /**< */ ,
634 	uint visual /**< */ , uint context /**< */ );
635 
636 /**
637  * Return the reply
638  * @param c      The connection
639  * @param cookie The cookie
640  * @param e      The xcb_generic_error_t supplied
641  *
642  * Returns the reply of the request asked by
643  *
644  * The parameter @p e supplied to this function must be NULL if
645  * xcb_xf86dri_create_context_unchecked(). is used.
646  * Otherwise, it stores the error if any.
647  *
648  * The returned value must be freed by the caller using free().
649  */
650 xcb_xf86dri_create_context_reply_t* xcb_xf86dri_create_context_reply(xcb_connection_t* c /**< */ ,
651 	xcb_xf86dri_create_context_cookie_t cookie /**< */ , xcb_generic_error_t** e /**< */ );
652 
653 /**
654  *
655  * @param c The connection
656  * @return A cookie
657  *
658  * Delivers a request to the X server.
659  *
660  * This form can be used only if the request will not cause
661  * a reply to be generated. Any returned error will be
662  * saved for handling by xcb_request_check().
663  */
664 xcb_void_cookie_t xcb_xf86dri_destroy_context_checked(xcb_connection_t* c /**< */ , uint screen /**< */ , uint context /**< */ );
665 
666 /**
667  *
668  * @param c The connection
669  * @return A cookie
670  *
671  * Delivers a request to the X server.
672  *
673  */
674 xcb_void_cookie_t xcb_xf86dri_destroy_context(xcb_connection_t* c /**< */ , uint screen /**< */ , uint context /**< */ );
675 
676 /**
677  *
678  * @param c The connection
679  * @return A cookie
680  *
681  * Delivers a request to the X server.
682  *
683  */
684 xcb_xf86dri_create_drawable_cookie_t xcb_xf86dri_create_drawable(xcb_connection_t* c /**< */ , uint screen /**< */ , uint drawable /**< */ );
685 
686 /**
687  *
688  * @param c The connection
689  * @return A cookie
690  *
691  * Delivers a request to the X server.
692  *
693  * This form can be used only if the request will cause
694  * a reply to be generated. Any returned error will be
695  * placed in the event queue.
696  */
697 xcb_xf86dri_create_drawable_cookie_t xcb_xf86dri_create_drawable_unchecked(xcb_connection_t* c /**< */ , uint screen /**< */ ,
698 	uint drawable /**< */ );
699 
700 /**
701  * Return the reply
702  * @param c      The connection
703  * @param cookie The cookie
704  * @param e      The xcb_generic_error_t supplied
705  *
706  * Returns the reply of the request asked by
707  *
708  * The parameter @p e supplied to this function must be NULL if
709  * xcb_xf86dri_create_drawable_unchecked(). is used.
710  * Otherwise, it stores the error if any.
711  *
712  * The returned value must be freed by the caller using free().
713  */
714 xcb_xf86dri_create_drawable_reply_t* xcb_xf86dri_create_drawable_reply(xcb_connection_t* c /**< */ ,
715 	xcb_xf86dri_create_drawable_cookie_t cookie /**< */ , xcb_generic_error_t** e /**< */ );
716 
717 /**
718  *
719  * @param c The connection
720  * @return A cookie
721  *
722  * Delivers a request to the X server.
723  *
724  * This form can be used only if the request will not cause
725  * a reply to be generated. Any returned error will be
726  * saved for handling by xcb_request_check().
727  */
728 xcb_void_cookie_t xcb_xf86dri_destroy_drawable_checked(xcb_connection_t* c /**< */ , uint screen /**< */ , uint drawable /**< */ );
729 
730 /**
731  *
732  * @param c The connection
733  * @return A cookie
734  *
735  * Delivers a request to the X server.
736  *
737  */
738 xcb_void_cookie_t xcb_xf86dri_destroy_drawable(xcb_connection_t* c /**< */ , uint screen /**< */ , uint drawable /**< */ );
739 
740 int xcb_xf86dri_get_drawable_info_sizeof(const void* _buffer /**< */ );
741 
742 /**
743  *
744  * @param c The connection
745  * @return A cookie
746  *
747  * Delivers a request to the X server.
748  *
749  */
750 xcb_xf86dri_get_drawable_info_cookie_t xcb_xf86dri_get_drawable_info(xcb_connection_t* c /**< */ , uint screen /**< */ , uint drawable /**< */ );
751 
752 /**
753  *
754  * @param c The connection
755  * @return A cookie
756  *
757  * Delivers a request to the X server.
758  *
759  * This form can be used only if the request will cause
760  * a reply to be generated. Any returned error will be
761  * placed in the event queue.
762  */
763 xcb_xf86dri_get_drawable_info_cookie_t xcb_xf86dri_get_drawable_info_unchecked(xcb_connection_t* c /**< */ , uint screen /**< */ ,
764 	uint drawable /**< */ );
765 
766 xcb_xf86dri_drm_clip_rect_t* xcb_xf86dri_get_drawable_info_clip_rects(const xcb_xf86dri_get_drawable_info_reply_t* R /**< */ );
767 
768 int xcb_xf86dri_get_drawable_info_clip_rects_length(const xcb_xf86dri_get_drawable_info_reply_t* R /**< */ );
769 
770 xcb_xf86dri_drm_clip_rect_iterator_t xcb_xf86dri_get_drawable_info_clip_rects_iterator(const xcb_xf86dri_get_drawable_info_reply_t* R /**< */ );
771 
772 xcb_xf86dri_drm_clip_rect_t* xcb_xf86dri_get_drawable_info_back_clip_rects(const xcb_xf86dri_get_drawable_info_reply_t* R /**< */ );
773 
774 int xcb_xf86dri_get_drawable_info_back_clip_rects_length(const xcb_xf86dri_get_drawable_info_reply_t* R /**< */ );
775 
776 xcb_xf86dri_drm_clip_rect_iterator_t xcb_xf86dri_get_drawable_info_back_clip_rects_iterator(const xcb_xf86dri_get_drawable_info_reply_t* R /**< */ );
777 
778 /**
779  * Return the reply
780  * @param c      The connection
781  * @param cookie The cookie
782  * @param e      The xcb_generic_error_t supplied
783  *
784  * Returns the reply of the request asked by
785  *
786  * The parameter @p e supplied to this function must be NULL if
787  * xcb_xf86dri_get_drawable_info_unchecked(). is used.
788  * Otherwise, it stores the error if any.
789  *
790  * The returned value must be freed by the caller using free().
791  */
792 xcb_xf86dri_get_drawable_info_reply_t* xcb_xf86dri_get_drawable_info_reply(xcb_connection_t* c /**< */ ,
793 	xcb_xf86dri_get_drawable_info_cookie_t cookie /**< */ , xcb_generic_error_t** e /**< */ );
794 
795 int xcb_xf86dri_get_device_info_sizeof(const void* _buffer /**< */ );
796 
797 /**
798  *
799  * @param c The connection
800  * @return A cookie
801  *
802  * Delivers a request to the X server.
803  *
804  */
805 xcb_xf86dri_get_device_info_cookie_t xcb_xf86dri_get_device_info(xcb_connection_t* c /**< */ , uint screen /**< */ );
806 
807 /**
808  *
809  * @param c The connection
810  * @return A cookie
811  *
812  * Delivers a request to the X server.
813  *
814  * This form can be used only if the request will cause
815  * a reply to be generated. Any returned error will be
816  * placed in the event queue.
817  */
818 xcb_xf86dri_get_device_info_cookie_t xcb_xf86dri_get_device_info_unchecked(xcb_connection_t* c /**< */ , uint screen /**< */ );
819 
820 uint* xcb_xf86dri_get_device_info_device_private(const xcb_xf86dri_get_device_info_reply_t* R /**< */ );
821 
822 int xcb_xf86dri_get_device_info_device_private_length(const xcb_xf86dri_get_device_info_reply_t* R /**< */ );
823 
824 xcb_generic_iterator_t xcb_xf86dri_get_device_info_device_private_end(const xcb_xf86dri_get_device_info_reply_t* R /**< */ );
825 
826 /**
827  * Return the reply
828  * @param c      The connection
829  * @param cookie The cookie
830  * @param e      The xcb_generic_error_t supplied
831  *
832  * Returns the reply of the request asked by
833  *
834  * The parameter @p e supplied to this function must be NULL if
835  * xcb_xf86dri_get_device_info_unchecked(). is used.
836  * Otherwise, it stores the error if any.
837  *
838  * The returned value must be freed by the caller using free().
839  */
840 xcb_xf86dri_get_device_info_reply_t* xcb_xf86dri_get_device_info_reply(xcb_connection_t* c /**< */ ,
841 	xcb_xf86dri_get_device_info_cookie_t cookie /**< */ , xcb_generic_error_t** e /**< */ );
842 
843 /**
844  *
845  * @param c The connection
846  * @return A cookie
847  *
848  * Delivers a request to the X server.
849  *
850  */
851 xcb_xf86dri_auth_connection_cookie_t xcb_xf86dri_auth_connection(xcb_connection_t* c /**< */ , uint screen /**< */ , uint magic /**< */ );
852 
853 /**
854  *
855  * @param c The connection
856  * @return A cookie
857  *
858  * Delivers a request to the X server.
859  *
860  * This form can be used only if the request will cause
861  * a reply to be generated. Any returned error will be
862  * placed in the event queue.
863  */
864 xcb_xf86dri_auth_connection_cookie_t xcb_xf86dri_auth_connection_unchecked(xcb_connection_t* c /**< */ , uint screen /**< */ ,
865 	uint magic /**< */ );
866 
867 /**
868  * Return the reply
869  * @param c      The connection
870  * @param cookie The cookie
871  * @param e      The xcb_generic_error_t supplied
872  *
873  * Returns the reply of the request asked by
874  *
875  * The parameter @p e supplied to this function must be NULL if
876  * xcb_xf86dri_auth_connection_unchecked(). is used.
877  * Otherwise, it stores the error if any.
878  *
879  * The returned value must be freed by the caller using free().
880  */
881 xcb_xf86dri_auth_connection_reply_t* xcb_xf86dri_auth_connection_reply(xcb_connection_t* c /**< */ ,
882 	xcb_xf86dri_auth_connection_cookie_t cookie /**< */ , xcb_generic_error_t** e /**< */ );
883 
884 /**
885  * @}
886  */