xref: /minix3/external/mit/xorg/lib/libxcb/files/dri3.h (revision 0a6a1f1d05b60e214de2f05a7310ddd1f0e590e7)
1*0a6a1f1dSLionel Sambuc /*
2*0a6a1f1dSLionel Sambuc  * This file generated automatically from dri3.xml by c_client.py.
3*0a6a1f1dSLionel Sambuc  * Edit at your peril.
4*0a6a1f1dSLionel Sambuc  */
5*0a6a1f1dSLionel Sambuc 
6*0a6a1f1dSLionel Sambuc /**
7*0a6a1f1dSLionel Sambuc  * @defgroup XCB_DRI3_API XCB DRI3 API
8*0a6a1f1dSLionel Sambuc  * @brief DRI3 XCB Protocol Implementation.
9*0a6a1f1dSLionel Sambuc  * @{
10*0a6a1f1dSLionel Sambuc  **/
11*0a6a1f1dSLionel Sambuc 
12*0a6a1f1dSLionel Sambuc #ifndef __DRI3_H
13*0a6a1f1dSLionel Sambuc #define __DRI3_H
14*0a6a1f1dSLionel Sambuc 
15*0a6a1f1dSLionel Sambuc #include "xcb.h"
16*0a6a1f1dSLionel Sambuc #include "xproto.h"
17*0a6a1f1dSLionel Sambuc 
18*0a6a1f1dSLionel Sambuc #ifdef __cplusplus
19*0a6a1f1dSLionel Sambuc extern "C" {
20*0a6a1f1dSLionel Sambuc #endif
21*0a6a1f1dSLionel Sambuc 
22*0a6a1f1dSLionel Sambuc #define XCB_DRI3_MAJOR_VERSION 1
23*0a6a1f1dSLionel Sambuc #define XCB_DRI3_MINOR_VERSION 0
24*0a6a1f1dSLionel Sambuc 
25*0a6a1f1dSLionel Sambuc extern xcb_extension_t xcb_dri3_id;
26*0a6a1f1dSLionel Sambuc 
27*0a6a1f1dSLionel Sambuc /**
28*0a6a1f1dSLionel Sambuc  * @brief xcb_dri3_query_version_cookie_t
29*0a6a1f1dSLionel Sambuc  **/
30*0a6a1f1dSLionel Sambuc typedef struct xcb_dri3_query_version_cookie_t {
31*0a6a1f1dSLionel Sambuc     unsigned int sequence; /**<  */
32*0a6a1f1dSLionel Sambuc } xcb_dri3_query_version_cookie_t;
33*0a6a1f1dSLionel Sambuc 
34*0a6a1f1dSLionel Sambuc /** Opcode for xcb_dri3_query_version. */
35*0a6a1f1dSLionel Sambuc #define XCB_DRI3_QUERY_VERSION 0
36*0a6a1f1dSLionel Sambuc 
37*0a6a1f1dSLionel Sambuc /**
38*0a6a1f1dSLionel Sambuc  * @brief xcb_dri3_query_version_request_t
39*0a6a1f1dSLionel Sambuc  **/
40*0a6a1f1dSLionel Sambuc typedef struct xcb_dri3_query_version_request_t {
41*0a6a1f1dSLionel Sambuc     uint8_t  major_opcode; /**<  */
42*0a6a1f1dSLionel Sambuc     uint8_t  minor_opcode; /**<  */
43*0a6a1f1dSLionel Sambuc     uint16_t length; /**<  */
44*0a6a1f1dSLionel Sambuc     uint32_t major_version; /**<  */
45*0a6a1f1dSLionel Sambuc     uint32_t minor_version; /**<  */
46*0a6a1f1dSLionel Sambuc } xcb_dri3_query_version_request_t;
47*0a6a1f1dSLionel Sambuc 
48*0a6a1f1dSLionel Sambuc /**
49*0a6a1f1dSLionel Sambuc  * @brief xcb_dri3_query_version_reply_t
50*0a6a1f1dSLionel Sambuc  **/
51*0a6a1f1dSLionel Sambuc typedef struct xcb_dri3_query_version_reply_t {
52*0a6a1f1dSLionel Sambuc     uint8_t  response_type; /**<  */
53*0a6a1f1dSLionel Sambuc     uint8_t  pad0; /**<  */
54*0a6a1f1dSLionel Sambuc     uint16_t sequence; /**<  */
55*0a6a1f1dSLionel Sambuc     uint32_t length; /**<  */
56*0a6a1f1dSLionel Sambuc     uint32_t major_version; /**<  */
57*0a6a1f1dSLionel Sambuc     uint32_t minor_version; /**<  */
58*0a6a1f1dSLionel Sambuc } xcb_dri3_query_version_reply_t;
59*0a6a1f1dSLionel Sambuc 
60*0a6a1f1dSLionel Sambuc /**
61*0a6a1f1dSLionel Sambuc  * @brief xcb_dri3_open_cookie_t
62*0a6a1f1dSLionel Sambuc  **/
63*0a6a1f1dSLionel Sambuc typedef struct xcb_dri3_open_cookie_t {
64*0a6a1f1dSLionel Sambuc     unsigned int sequence; /**<  */
65*0a6a1f1dSLionel Sambuc } xcb_dri3_open_cookie_t;
66*0a6a1f1dSLionel Sambuc 
67*0a6a1f1dSLionel Sambuc /** Opcode for xcb_dri3_open. */
68*0a6a1f1dSLionel Sambuc #define XCB_DRI3_OPEN 1
69*0a6a1f1dSLionel Sambuc 
70*0a6a1f1dSLionel Sambuc /**
71*0a6a1f1dSLionel Sambuc  * @brief xcb_dri3_open_request_t
72*0a6a1f1dSLionel Sambuc  **/
73*0a6a1f1dSLionel Sambuc typedef struct xcb_dri3_open_request_t {
74*0a6a1f1dSLionel Sambuc     uint8_t        major_opcode; /**<  */
75*0a6a1f1dSLionel Sambuc     uint8_t        minor_opcode; /**<  */
76*0a6a1f1dSLionel Sambuc     uint16_t       length; /**<  */
77*0a6a1f1dSLionel Sambuc     xcb_drawable_t drawable; /**<  */
78*0a6a1f1dSLionel Sambuc     uint32_t       provider; /**<  */
79*0a6a1f1dSLionel Sambuc } xcb_dri3_open_request_t;
80*0a6a1f1dSLionel Sambuc 
81*0a6a1f1dSLionel Sambuc /**
82*0a6a1f1dSLionel Sambuc  * @brief xcb_dri3_open_reply_t
83*0a6a1f1dSLionel Sambuc  **/
84*0a6a1f1dSLionel Sambuc typedef struct xcb_dri3_open_reply_t {
85*0a6a1f1dSLionel Sambuc     uint8_t  response_type; /**<  */
86*0a6a1f1dSLionel Sambuc     uint8_t  nfd; /**<  */
87*0a6a1f1dSLionel Sambuc     uint16_t sequence; /**<  */
88*0a6a1f1dSLionel Sambuc     uint32_t length; /**<  */
89*0a6a1f1dSLionel Sambuc     uint8_t  pad0[24]; /**<  */
90*0a6a1f1dSLionel Sambuc } xcb_dri3_open_reply_t;
91*0a6a1f1dSLionel Sambuc 
92*0a6a1f1dSLionel Sambuc /** Opcode for xcb_dri3_pixmap_from_buffer. */
93*0a6a1f1dSLionel Sambuc #define XCB_DRI3_PIXMAP_FROM_BUFFER 2
94*0a6a1f1dSLionel Sambuc 
95*0a6a1f1dSLionel Sambuc /**
96*0a6a1f1dSLionel Sambuc  * @brief xcb_dri3_pixmap_from_buffer_request_t
97*0a6a1f1dSLionel Sambuc  **/
98*0a6a1f1dSLionel Sambuc typedef struct xcb_dri3_pixmap_from_buffer_request_t {
99*0a6a1f1dSLionel Sambuc     uint8_t        major_opcode; /**<  */
100*0a6a1f1dSLionel Sambuc     uint8_t        minor_opcode; /**<  */
101*0a6a1f1dSLionel Sambuc     uint16_t       length; /**<  */
102*0a6a1f1dSLionel Sambuc     xcb_pixmap_t   pixmap; /**<  */
103*0a6a1f1dSLionel Sambuc     xcb_drawable_t drawable; /**<  */
104*0a6a1f1dSLionel Sambuc     uint32_t       size; /**<  */
105*0a6a1f1dSLionel Sambuc     uint16_t       width; /**<  */
106*0a6a1f1dSLionel Sambuc     uint16_t       height; /**<  */
107*0a6a1f1dSLionel Sambuc     uint16_t       stride; /**<  */
108*0a6a1f1dSLionel Sambuc     uint8_t        depth; /**<  */
109*0a6a1f1dSLionel Sambuc     uint8_t        bpp; /**<  */
110*0a6a1f1dSLionel Sambuc } xcb_dri3_pixmap_from_buffer_request_t;
111*0a6a1f1dSLionel Sambuc 
112*0a6a1f1dSLionel Sambuc /**
113*0a6a1f1dSLionel Sambuc  * @brief xcb_dri3_buffer_from_pixmap_cookie_t
114*0a6a1f1dSLionel Sambuc  **/
115*0a6a1f1dSLionel Sambuc typedef struct xcb_dri3_buffer_from_pixmap_cookie_t {
116*0a6a1f1dSLionel Sambuc     unsigned int sequence; /**<  */
117*0a6a1f1dSLionel Sambuc } xcb_dri3_buffer_from_pixmap_cookie_t;
118*0a6a1f1dSLionel Sambuc 
119*0a6a1f1dSLionel Sambuc /** Opcode for xcb_dri3_buffer_from_pixmap. */
120*0a6a1f1dSLionel Sambuc #define XCB_DRI3_BUFFER_FROM_PIXMAP 3
121*0a6a1f1dSLionel Sambuc 
122*0a6a1f1dSLionel Sambuc /**
123*0a6a1f1dSLionel Sambuc  * @brief xcb_dri3_buffer_from_pixmap_request_t
124*0a6a1f1dSLionel Sambuc  **/
125*0a6a1f1dSLionel Sambuc typedef struct xcb_dri3_buffer_from_pixmap_request_t {
126*0a6a1f1dSLionel Sambuc     uint8_t      major_opcode; /**<  */
127*0a6a1f1dSLionel Sambuc     uint8_t      minor_opcode; /**<  */
128*0a6a1f1dSLionel Sambuc     uint16_t     length; /**<  */
129*0a6a1f1dSLionel Sambuc     xcb_pixmap_t pixmap; /**<  */
130*0a6a1f1dSLionel Sambuc } xcb_dri3_buffer_from_pixmap_request_t;
131*0a6a1f1dSLionel Sambuc 
132*0a6a1f1dSLionel Sambuc /**
133*0a6a1f1dSLionel Sambuc  * @brief xcb_dri3_buffer_from_pixmap_reply_t
134*0a6a1f1dSLionel Sambuc  **/
135*0a6a1f1dSLionel Sambuc typedef struct xcb_dri3_buffer_from_pixmap_reply_t {
136*0a6a1f1dSLionel Sambuc     uint8_t  response_type; /**<  */
137*0a6a1f1dSLionel Sambuc     uint8_t  nfd; /**<  */
138*0a6a1f1dSLionel Sambuc     uint16_t sequence; /**<  */
139*0a6a1f1dSLionel Sambuc     uint32_t length; /**<  */
140*0a6a1f1dSLionel Sambuc     uint32_t size; /**<  */
141*0a6a1f1dSLionel Sambuc     uint16_t width; /**<  */
142*0a6a1f1dSLionel Sambuc     uint16_t height; /**<  */
143*0a6a1f1dSLionel Sambuc     uint16_t stride; /**<  */
144*0a6a1f1dSLionel Sambuc     uint8_t  depth; /**<  */
145*0a6a1f1dSLionel Sambuc     uint8_t  bpp; /**<  */
146*0a6a1f1dSLionel Sambuc     uint8_t  pad0[12]; /**<  */
147*0a6a1f1dSLionel Sambuc } xcb_dri3_buffer_from_pixmap_reply_t;
148*0a6a1f1dSLionel Sambuc 
149*0a6a1f1dSLionel Sambuc /** Opcode for xcb_dri3_fence_from_fd. */
150*0a6a1f1dSLionel Sambuc #define XCB_DRI3_FENCE_FROM_FD 4
151*0a6a1f1dSLionel Sambuc 
152*0a6a1f1dSLionel Sambuc /**
153*0a6a1f1dSLionel Sambuc  * @brief xcb_dri3_fence_from_fd_request_t
154*0a6a1f1dSLionel Sambuc  **/
155*0a6a1f1dSLionel Sambuc typedef struct xcb_dri3_fence_from_fd_request_t {
156*0a6a1f1dSLionel Sambuc     uint8_t        major_opcode; /**<  */
157*0a6a1f1dSLionel Sambuc     uint8_t        minor_opcode; /**<  */
158*0a6a1f1dSLionel Sambuc     uint16_t       length; /**<  */
159*0a6a1f1dSLionel Sambuc     xcb_drawable_t drawable; /**<  */
160*0a6a1f1dSLionel Sambuc     uint32_t       fence; /**<  */
161*0a6a1f1dSLionel Sambuc     uint8_t        initially_triggered; /**<  */
162*0a6a1f1dSLionel Sambuc     uint8_t        pad0[3]; /**<  */
163*0a6a1f1dSLionel Sambuc } xcb_dri3_fence_from_fd_request_t;
164*0a6a1f1dSLionel Sambuc 
165*0a6a1f1dSLionel Sambuc /**
166*0a6a1f1dSLionel Sambuc  * @brief xcb_dri3_fd_from_fence_cookie_t
167*0a6a1f1dSLionel Sambuc  **/
168*0a6a1f1dSLionel Sambuc typedef struct xcb_dri3_fd_from_fence_cookie_t {
169*0a6a1f1dSLionel Sambuc     unsigned int sequence; /**<  */
170*0a6a1f1dSLionel Sambuc } xcb_dri3_fd_from_fence_cookie_t;
171*0a6a1f1dSLionel Sambuc 
172*0a6a1f1dSLionel Sambuc /** Opcode for xcb_dri3_fd_from_fence. */
173*0a6a1f1dSLionel Sambuc #define XCB_DRI3_FD_FROM_FENCE 5
174*0a6a1f1dSLionel Sambuc 
175*0a6a1f1dSLionel Sambuc /**
176*0a6a1f1dSLionel Sambuc  * @brief xcb_dri3_fd_from_fence_request_t
177*0a6a1f1dSLionel Sambuc  **/
178*0a6a1f1dSLionel Sambuc typedef struct xcb_dri3_fd_from_fence_request_t {
179*0a6a1f1dSLionel Sambuc     uint8_t        major_opcode; /**<  */
180*0a6a1f1dSLionel Sambuc     uint8_t        minor_opcode; /**<  */
181*0a6a1f1dSLionel Sambuc     uint16_t       length; /**<  */
182*0a6a1f1dSLionel Sambuc     xcb_drawable_t drawable; /**<  */
183*0a6a1f1dSLionel Sambuc     uint32_t       fence; /**<  */
184*0a6a1f1dSLionel Sambuc } xcb_dri3_fd_from_fence_request_t;
185*0a6a1f1dSLionel Sambuc 
186*0a6a1f1dSLionel Sambuc /**
187*0a6a1f1dSLionel Sambuc  * @brief xcb_dri3_fd_from_fence_reply_t
188*0a6a1f1dSLionel Sambuc  **/
189*0a6a1f1dSLionel Sambuc typedef struct xcb_dri3_fd_from_fence_reply_t {
190*0a6a1f1dSLionel Sambuc     uint8_t  response_type; /**<  */
191*0a6a1f1dSLionel Sambuc     uint8_t  nfd; /**<  */
192*0a6a1f1dSLionel Sambuc     uint16_t sequence; /**<  */
193*0a6a1f1dSLionel Sambuc     uint32_t length; /**<  */
194*0a6a1f1dSLionel Sambuc     uint8_t  pad0[24]; /**<  */
195*0a6a1f1dSLionel Sambuc } xcb_dri3_fd_from_fence_reply_t;
196*0a6a1f1dSLionel Sambuc 
197*0a6a1f1dSLionel Sambuc /**
198*0a6a1f1dSLionel Sambuc  *
199*0a6a1f1dSLionel Sambuc  * @param c The connection
200*0a6a1f1dSLionel Sambuc  * @return A cookie
201*0a6a1f1dSLionel Sambuc  *
202*0a6a1f1dSLionel Sambuc  * Delivers a request to the X server.
203*0a6a1f1dSLionel Sambuc  *
204*0a6a1f1dSLionel Sambuc  */
205*0a6a1f1dSLionel Sambuc xcb_dri3_query_version_cookie_t
206*0a6a1f1dSLionel Sambuc xcb_dri3_query_version (xcb_connection_t *c  /**< */,
207*0a6a1f1dSLionel Sambuc                         uint32_t          major_version  /**< */,
208*0a6a1f1dSLionel Sambuc                         uint32_t          minor_version  /**< */);
209*0a6a1f1dSLionel Sambuc 
210*0a6a1f1dSLionel Sambuc /**
211*0a6a1f1dSLionel Sambuc  *
212*0a6a1f1dSLionel Sambuc  * @param c The connection
213*0a6a1f1dSLionel Sambuc  * @return A cookie
214*0a6a1f1dSLionel Sambuc  *
215*0a6a1f1dSLionel Sambuc  * Delivers a request to the X server.
216*0a6a1f1dSLionel Sambuc  *
217*0a6a1f1dSLionel Sambuc  * This form can be used only if the request will cause
218*0a6a1f1dSLionel Sambuc  * a reply to be generated. Any returned error will be
219*0a6a1f1dSLionel Sambuc  * placed in the event queue.
220*0a6a1f1dSLionel Sambuc  */
221*0a6a1f1dSLionel Sambuc xcb_dri3_query_version_cookie_t
222*0a6a1f1dSLionel Sambuc xcb_dri3_query_version_unchecked (xcb_connection_t *c  /**< */,
223*0a6a1f1dSLionel Sambuc                                   uint32_t          major_version  /**< */,
224*0a6a1f1dSLionel Sambuc                                   uint32_t          minor_version  /**< */);
225*0a6a1f1dSLionel Sambuc 
226*0a6a1f1dSLionel Sambuc /**
227*0a6a1f1dSLionel Sambuc  * Return the reply
228*0a6a1f1dSLionel Sambuc  * @param c      The connection
229*0a6a1f1dSLionel Sambuc  * @param cookie The cookie
230*0a6a1f1dSLionel Sambuc  * @param e      The xcb_generic_error_t supplied
231*0a6a1f1dSLionel Sambuc  *
232*0a6a1f1dSLionel Sambuc  * Returns the reply of the request asked by
233*0a6a1f1dSLionel Sambuc  *
234*0a6a1f1dSLionel Sambuc  * The parameter @p e supplied to this function must be NULL if
235*0a6a1f1dSLionel Sambuc  * xcb_dri3_query_version_unchecked(). is used.
236*0a6a1f1dSLionel Sambuc  * Otherwise, it stores the error if any.
237*0a6a1f1dSLionel Sambuc  *
238*0a6a1f1dSLionel Sambuc  * The returned value must be freed by the caller using free().
239*0a6a1f1dSLionel Sambuc  */
240*0a6a1f1dSLionel Sambuc xcb_dri3_query_version_reply_t *
241*0a6a1f1dSLionel Sambuc xcb_dri3_query_version_reply (xcb_connection_t                 *c  /**< */,
242*0a6a1f1dSLionel Sambuc                               xcb_dri3_query_version_cookie_t   cookie  /**< */,
243*0a6a1f1dSLionel Sambuc                               xcb_generic_error_t             **e  /**< */);
244*0a6a1f1dSLionel Sambuc 
245*0a6a1f1dSLionel Sambuc /**
246*0a6a1f1dSLionel Sambuc  *
247*0a6a1f1dSLionel Sambuc  * @param c The connection
248*0a6a1f1dSLionel Sambuc  * @return A cookie
249*0a6a1f1dSLionel Sambuc  *
250*0a6a1f1dSLionel Sambuc  * Delivers a request to the X server.
251*0a6a1f1dSLionel Sambuc  *
252*0a6a1f1dSLionel Sambuc  */
253*0a6a1f1dSLionel Sambuc xcb_dri3_open_cookie_t
254*0a6a1f1dSLionel Sambuc xcb_dri3_open (xcb_connection_t *c  /**< */,
255*0a6a1f1dSLionel Sambuc                xcb_drawable_t    drawable  /**< */,
256*0a6a1f1dSLionel Sambuc                uint32_t          provider  /**< */);
257*0a6a1f1dSLionel Sambuc 
258*0a6a1f1dSLionel Sambuc /**
259*0a6a1f1dSLionel Sambuc  *
260*0a6a1f1dSLionel Sambuc  * @param c The connection
261*0a6a1f1dSLionel Sambuc  * @return A cookie
262*0a6a1f1dSLionel Sambuc  *
263*0a6a1f1dSLionel Sambuc  * Delivers a request to the X server.
264*0a6a1f1dSLionel Sambuc  *
265*0a6a1f1dSLionel Sambuc  * This form can be used only if the request will cause
266*0a6a1f1dSLionel Sambuc  * a reply to be generated. Any returned error will be
267*0a6a1f1dSLionel Sambuc  * placed in the event queue.
268*0a6a1f1dSLionel Sambuc  */
269*0a6a1f1dSLionel Sambuc xcb_dri3_open_cookie_t
270*0a6a1f1dSLionel Sambuc xcb_dri3_open_unchecked (xcb_connection_t *c  /**< */,
271*0a6a1f1dSLionel Sambuc                          xcb_drawable_t    drawable  /**< */,
272*0a6a1f1dSLionel Sambuc                          uint32_t          provider  /**< */);
273*0a6a1f1dSLionel Sambuc 
274*0a6a1f1dSLionel Sambuc /**
275*0a6a1f1dSLionel Sambuc  * Return the reply
276*0a6a1f1dSLionel Sambuc  * @param c      The connection
277*0a6a1f1dSLionel Sambuc  * @param cookie The cookie
278*0a6a1f1dSLionel Sambuc  * @param e      The xcb_generic_error_t supplied
279*0a6a1f1dSLionel Sambuc  *
280*0a6a1f1dSLionel Sambuc  * Returns the reply of the request asked by
281*0a6a1f1dSLionel Sambuc  *
282*0a6a1f1dSLionel Sambuc  * The parameter @p e supplied to this function must be NULL if
283*0a6a1f1dSLionel Sambuc  * xcb_dri3_open_unchecked(). is used.
284*0a6a1f1dSLionel Sambuc  * Otherwise, it stores the error if any.
285*0a6a1f1dSLionel Sambuc  *
286*0a6a1f1dSLionel Sambuc  * The returned value must be freed by the caller using free().
287*0a6a1f1dSLionel Sambuc  */
288*0a6a1f1dSLionel Sambuc xcb_dri3_open_reply_t *
289*0a6a1f1dSLionel Sambuc xcb_dri3_open_reply (xcb_connection_t        *c  /**< */,
290*0a6a1f1dSLionel Sambuc                      xcb_dri3_open_cookie_t   cookie  /**< */,
291*0a6a1f1dSLionel Sambuc                      xcb_generic_error_t    **e  /**< */);
292*0a6a1f1dSLionel Sambuc 
293*0a6a1f1dSLionel Sambuc /**
294*0a6a1f1dSLionel Sambuc  * Return the reply fds
295*0a6a1f1dSLionel Sambuc  * @param c      The connection
296*0a6a1f1dSLionel Sambuc  * @param reply  The reply
297*0a6a1f1dSLionel Sambuc  *
298*0a6a1f1dSLionel Sambuc  * Returns the array of reply fds of the request asked by
299*0a6a1f1dSLionel Sambuc  *
300*0a6a1f1dSLionel Sambuc  * The returned value must be freed by the caller using free().
301*0a6a1f1dSLionel Sambuc  */
302*0a6a1f1dSLionel Sambuc int *
303*0a6a1f1dSLionel Sambuc xcb_dri3_open_reply_fds (xcb_connection_t       *c  /**< */,
304*0a6a1f1dSLionel Sambuc                          xcb_dri3_open_reply_t  *reply  /**< */);
305*0a6a1f1dSLionel Sambuc 
306*0a6a1f1dSLionel Sambuc /**
307*0a6a1f1dSLionel Sambuc  *
308*0a6a1f1dSLionel Sambuc  * @param c The connection
309*0a6a1f1dSLionel Sambuc  * @return A cookie
310*0a6a1f1dSLionel Sambuc  *
311*0a6a1f1dSLionel Sambuc  * Delivers a request to the X server.
312*0a6a1f1dSLionel Sambuc  *
313*0a6a1f1dSLionel Sambuc  * This form can be used only if the request will not cause
314*0a6a1f1dSLionel Sambuc  * a reply to be generated. Any returned error will be
315*0a6a1f1dSLionel Sambuc  * saved for handling by xcb_request_check().
316*0a6a1f1dSLionel Sambuc  */
317*0a6a1f1dSLionel Sambuc xcb_void_cookie_t
318*0a6a1f1dSLionel Sambuc xcb_dri3_pixmap_from_buffer_checked (xcb_connection_t *c  /**< */,
319*0a6a1f1dSLionel Sambuc                                      xcb_pixmap_t      pixmap  /**< */,
320*0a6a1f1dSLionel Sambuc                                      xcb_drawable_t    drawable  /**< */,
321*0a6a1f1dSLionel Sambuc                                      uint32_t          size  /**< */,
322*0a6a1f1dSLionel Sambuc                                      uint16_t          width  /**< */,
323*0a6a1f1dSLionel Sambuc                                      uint16_t          height  /**< */,
324*0a6a1f1dSLionel Sambuc                                      uint16_t          stride  /**< */,
325*0a6a1f1dSLionel Sambuc                                      uint8_t           depth  /**< */,
326*0a6a1f1dSLionel Sambuc                                      uint8_t           bpp  /**< */,
327*0a6a1f1dSLionel Sambuc                                      int32_t           pixmap_fd  /**< */);
328*0a6a1f1dSLionel Sambuc 
329*0a6a1f1dSLionel Sambuc /**
330*0a6a1f1dSLionel Sambuc  *
331*0a6a1f1dSLionel Sambuc  * @param c The connection
332*0a6a1f1dSLionel Sambuc  * @return A cookie
333*0a6a1f1dSLionel Sambuc  *
334*0a6a1f1dSLionel Sambuc  * Delivers a request to the X server.
335*0a6a1f1dSLionel Sambuc  *
336*0a6a1f1dSLionel Sambuc  */
337*0a6a1f1dSLionel Sambuc xcb_void_cookie_t
338*0a6a1f1dSLionel Sambuc xcb_dri3_pixmap_from_buffer (xcb_connection_t *c  /**< */,
339*0a6a1f1dSLionel Sambuc                              xcb_pixmap_t      pixmap  /**< */,
340*0a6a1f1dSLionel Sambuc                              xcb_drawable_t    drawable  /**< */,
341*0a6a1f1dSLionel Sambuc                              uint32_t          size  /**< */,
342*0a6a1f1dSLionel Sambuc                              uint16_t          width  /**< */,
343*0a6a1f1dSLionel Sambuc                              uint16_t          height  /**< */,
344*0a6a1f1dSLionel Sambuc                              uint16_t          stride  /**< */,
345*0a6a1f1dSLionel Sambuc                              uint8_t           depth  /**< */,
346*0a6a1f1dSLionel Sambuc                              uint8_t           bpp  /**< */,
347*0a6a1f1dSLionel Sambuc                              int32_t           pixmap_fd  /**< */);
348*0a6a1f1dSLionel Sambuc 
349*0a6a1f1dSLionel Sambuc /**
350*0a6a1f1dSLionel Sambuc  *
351*0a6a1f1dSLionel Sambuc  * @param c The connection
352*0a6a1f1dSLionel Sambuc  * @return A cookie
353*0a6a1f1dSLionel Sambuc  *
354*0a6a1f1dSLionel Sambuc  * Delivers a request to the X server.
355*0a6a1f1dSLionel Sambuc  *
356*0a6a1f1dSLionel Sambuc  */
357*0a6a1f1dSLionel Sambuc xcb_dri3_buffer_from_pixmap_cookie_t
358*0a6a1f1dSLionel Sambuc xcb_dri3_buffer_from_pixmap (xcb_connection_t *c  /**< */,
359*0a6a1f1dSLionel Sambuc                              xcb_pixmap_t      pixmap  /**< */);
360*0a6a1f1dSLionel Sambuc 
361*0a6a1f1dSLionel Sambuc /**
362*0a6a1f1dSLionel Sambuc  *
363*0a6a1f1dSLionel Sambuc  * @param c The connection
364*0a6a1f1dSLionel Sambuc  * @return A cookie
365*0a6a1f1dSLionel Sambuc  *
366*0a6a1f1dSLionel Sambuc  * Delivers a request to the X server.
367*0a6a1f1dSLionel Sambuc  *
368*0a6a1f1dSLionel Sambuc  * This form can be used only if the request will cause
369*0a6a1f1dSLionel Sambuc  * a reply to be generated. Any returned error will be
370*0a6a1f1dSLionel Sambuc  * placed in the event queue.
371*0a6a1f1dSLionel Sambuc  */
372*0a6a1f1dSLionel Sambuc xcb_dri3_buffer_from_pixmap_cookie_t
373*0a6a1f1dSLionel Sambuc xcb_dri3_buffer_from_pixmap_unchecked (xcb_connection_t *c  /**< */,
374*0a6a1f1dSLionel Sambuc                                        xcb_pixmap_t      pixmap  /**< */);
375*0a6a1f1dSLionel Sambuc 
376*0a6a1f1dSLionel Sambuc /**
377*0a6a1f1dSLionel Sambuc  * Return the reply
378*0a6a1f1dSLionel Sambuc  * @param c      The connection
379*0a6a1f1dSLionel Sambuc  * @param cookie The cookie
380*0a6a1f1dSLionel Sambuc  * @param e      The xcb_generic_error_t supplied
381*0a6a1f1dSLionel Sambuc  *
382*0a6a1f1dSLionel Sambuc  * Returns the reply of the request asked by
383*0a6a1f1dSLionel Sambuc  *
384*0a6a1f1dSLionel Sambuc  * The parameter @p e supplied to this function must be NULL if
385*0a6a1f1dSLionel Sambuc  * xcb_dri3_buffer_from_pixmap_unchecked(). is used.
386*0a6a1f1dSLionel Sambuc  * Otherwise, it stores the error if any.
387*0a6a1f1dSLionel Sambuc  *
388*0a6a1f1dSLionel Sambuc  * The returned value must be freed by the caller using free().
389*0a6a1f1dSLionel Sambuc  */
390*0a6a1f1dSLionel Sambuc xcb_dri3_buffer_from_pixmap_reply_t *
391*0a6a1f1dSLionel Sambuc xcb_dri3_buffer_from_pixmap_reply (xcb_connection_t                      *c  /**< */,
392*0a6a1f1dSLionel Sambuc                                    xcb_dri3_buffer_from_pixmap_cookie_t   cookie  /**< */,
393*0a6a1f1dSLionel Sambuc                                    xcb_generic_error_t                  **e  /**< */);
394*0a6a1f1dSLionel Sambuc 
395*0a6a1f1dSLionel Sambuc /**
396*0a6a1f1dSLionel Sambuc  * Return the reply fds
397*0a6a1f1dSLionel Sambuc  * @param c      The connection
398*0a6a1f1dSLionel Sambuc  * @param reply  The reply
399*0a6a1f1dSLionel Sambuc  *
400*0a6a1f1dSLionel Sambuc  * Returns the array of reply fds of the request asked by
401*0a6a1f1dSLionel Sambuc  *
402*0a6a1f1dSLionel Sambuc  * The returned value must be freed by the caller using free().
403*0a6a1f1dSLionel Sambuc  */
404*0a6a1f1dSLionel Sambuc int *
405*0a6a1f1dSLionel Sambuc xcb_dri3_buffer_from_pixmap_reply_fds (xcb_connection_t                     *c  /**< */,
406*0a6a1f1dSLionel Sambuc                                        xcb_dri3_buffer_from_pixmap_reply_t  *reply  /**< */);
407*0a6a1f1dSLionel Sambuc 
408*0a6a1f1dSLionel Sambuc /**
409*0a6a1f1dSLionel Sambuc  *
410*0a6a1f1dSLionel Sambuc  * @param c The connection
411*0a6a1f1dSLionel Sambuc  * @return A cookie
412*0a6a1f1dSLionel Sambuc  *
413*0a6a1f1dSLionel Sambuc  * Delivers a request to the X server.
414*0a6a1f1dSLionel Sambuc  *
415*0a6a1f1dSLionel Sambuc  * This form can be used only if the request will not cause
416*0a6a1f1dSLionel Sambuc  * a reply to be generated. Any returned error will be
417*0a6a1f1dSLionel Sambuc  * saved for handling by xcb_request_check().
418*0a6a1f1dSLionel Sambuc  */
419*0a6a1f1dSLionel Sambuc xcb_void_cookie_t
420*0a6a1f1dSLionel Sambuc xcb_dri3_fence_from_fd_checked (xcb_connection_t *c  /**< */,
421*0a6a1f1dSLionel Sambuc                                 xcb_drawable_t    drawable  /**< */,
422*0a6a1f1dSLionel Sambuc                                 uint32_t          fence  /**< */,
423*0a6a1f1dSLionel Sambuc                                 uint8_t           initially_triggered  /**< */,
424*0a6a1f1dSLionel Sambuc                                 int32_t           fence_fd  /**< */);
425*0a6a1f1dSLionel Sambuc 
426*0a6a1f1dSLionel Sambuc /**
427*0a6a1f1dSLionel Sambuc  *
428*0a6a1f1dSLionel Sambuc  * @param c The connection
429*0a6a1f1dSLionel Sambuc  * @return A cookie
430*0a6a1f1dSLionel Sambuc  *
431*0a6a1f1dSLionel Sambuc  * Delivers a request to the X server.
432*0a6a1f1dSLionel Sambuc  *
433*0a6a1f1dSLionel Sambuc  */
434*0a6a1f1dSLionel Sambuc xcb_void_cookie_t
435*0a6a1f1dSLionel Sambuc xcb_dri3_fence_from_fd (xcb_connection_t *c  /**< */,
436*0a6a1f1dSLionel Sambuc                         xcb_drawable_t    drawable  /**< */,
437*0a6a1f1dSLionel Sambuc                         uint32_t          fence  /**< */,
438*0a6a1f1dSLionel Sambuc                         uint8_t           initially_triggered  /**< */,
439*0a6a1f1dSLionel Sambuc                         int32_t           fence_fd  /**< */);
440*0a6a1f1dSLionel Sambuc 
441*0a6a1f1dSLionel Sambuc /**
442*0a6a1f1dSLionel Sambuc  *
443*0a6a1f1dSLionel Sambuc  * @param c The connection
444*0a6a1f1dSLionel Sambuc  * @return A cookie
445*0a6a1f1dSLionel Sambuc  *
446*0a6a1f1dSLionel Sambuc  * Delivers a request to the X server.
447*0a6a1f1dSLionel Sambuc  *
448*0a6a1f1dSLionel Sambuc  */
449*0a6a1f1dSLionel Sambuc xcb_dri3_fd_from_fence_cookie_t
450*0a6a1f1dSLionel Sambuc xcb_dri3_fd_from_fence (xcb_connection_t *c  /**< */,
451*0a6a1f1dSLionel Sambuc                         xcb_drawable_t    drawable  /**< */,
452*0a6a1f1dSLionel Sambuc                         uint32_t          fence  /**< */);
453*0a6a1f1dSLionel Sambuc 
454*0a6a1f1dSLionel Sambuc /**
455*0a6a1f1dSLionel Sambuc  *
456*0a6a1f1dSLionel Sambuc  * @param c The connection
457*0a6a1f1dSLionel Sambuc  * @return A cookie
458*0a6a1f1dSLionel Sambuc  *
459*0a6a1f1dSLionel Sambuc  * Delivers a request to the X server.
460*0a6a1f1dSLionel Sambuc  *
461*0a6a1f1dSLionel Sambuc  * This form can be used only if the request will cause
462*0a6a1f1dSLionel Sambuc  * a reply to be generated. Any returned error will be
463*0a6a1f1dSLionel Sambuc  * placed in the event queue.
464*0a6a1f1dSLionel Sambuc  */
465*0a6a1f1dSLionel Sambuc xcb_dri3_fd_from_fence_cookie_t
466*0a6a1f1dSLionel Sambuc xcb_dri3_fd_from_fence_unchecked (xcb_connection_t *c  /**< */,
467*0a6a1f1dSLionel Sambuc                                   xcb_drawable_t    drawable  /**< */,
468*0a6a1f1dSLionel Sambuc                                   uint32_t          fence  /**< */);
469*0a6a1f1dSLionel Sambuc 
470*0a6a1f1dSLionel Sambuc /**
471*0a6a1f1dSLionel Sambuc  * Return the reply
472*0a6a1f1dSLionel Sambuc  * @param c      The connection
473*0a6a1f1dSLionel Sambuc  * @param cookie The cookie
474*0a6a1f1dSLionel Sambuc  * @param e      The xcb_generic_error_t supplied
475*0a6a1f1dSLionel Sambuc  *
476*0a6a1f1dSLionel Sambuc  * Returns the reply of the request asked by
477*0a6a1f1dSLionel Sambuc  *
478*0a6a1f1dSLionel Sambuc  * The parameter @p e supplied to this function must be NULL if
479*0a6a1f1dSLionel Sambuc  * xcb_dri3_fd_from_fence_unchecked(). is used.
480*0a6a1f1dSLionel Sambuc  * Otherwise, it stores the error if any.
481*0a6a1f1dSLionel Sambuc  *
482*0a6a1f1dSLionel Sambuc  * The returned value must be freed by the caller using free().
483*0a6a1f1dSLionel Sambuc  */
484*0a6a1f1dSLionel Sambuc xcb_dri3_fd_from_fence_reply_t *
485*0a6a1f1dSLionel Sambuc xcb_dri3_fd_from_fence_reply (xcb_connection_t                 *c  /**< */,
486*0a6a1f1dSLionel Sambuc                               xcb_dri3_fd_from_fence_cookie_t   cookie  /**< */,
487*0a6a1f1dSLionel Sambuc                               xcb_generic_error_t             **e  /**< */);
488*0a6a1f1dSLionel Sambuc 
489*0a6a1f1dSLionel Sambuc /**
490*0a6a1f1dSLionel Sambuc  * Return the reply fds
491*0a6a1f1dSLionel Sambuc  * @param c      The connection
492*0a6a1f1dSLionel Sambuc  * @param reply  The reply
493*0a6a1f1dSLionel Sambuc  *
494*0a6a1f1dSLionel Sambuc  * Returns the array of reply fds of the request asked by
495*0a6a1f1dSLionel Sambuc  *
496*0a6a1f1dSLionel Sambuc  * The returned value must be freed by the caller using free().
497*0a6a1f1dSLionel Sambuc  */
498*0a6a1f1dSLionel Sambuc int *
499*0a6a1f1dSLionel Sambuc xcb_dri3_fd_from_fence_reply_fds (xcb_connection_t                *c  /**< */,
500*0a6a1f1dSLionel Sambuc                                   xcb_dri3_fd_from_fence_reply_t  *reply  /**< */);
501*0a6a1f1dSLionel Sambuc 
502*0a6a1f1dSLionel Sambuc 
503*0a6a1f1dSLionel Sambuc #ifdef __cplusplus
504*0a6a1f1dSLionel Sambuc }
505*0a6a1f1dSLionel Sambuc #endif
506*0a6a1f1dSLionel Sambuc 
507*0a6a1f1dSLionel Sambuc #endif
508*0a6a1f1dSLionel Sambuc 
509*0a6a1f1dSLionel Sambuc /**
510*0a6a1f1dSLionel Sambuc  * @}
511*0a6a1f1dSLionel Sambuc  */
512