xref: /netbsd/external/mit/xorg/lib/libxcb/files/xc_misc.h (revision a842a3df)
1 /*
2  * This file generated automatically from xc_misc.xml by c_client.py.
3  * Edit at your peril.
4  */
5 
6 /**
7  * @defgroup XCB_XCMisc_API XCB XCMisc API
8  * @brief XCMisc XCB Protocol Implementation.
9  * @{
10  **/
11 
12 #ifndef __XC_MISC_H
13 #define __XC_MISC_H
14 
15 #include "xcb.h"
16 
17 #ifdef __cplusplus
18 extern "C" {
19 #endif
20 
21 #define XCB_XCMISC_MAJOR_VERSION 1
22 #define XCB_XCMISC_MINOR_VERSION 1
23 
24 extern xcb_extension_t xcb_xc_misc_id;
25 
26 /**
27  * @brief xcb_xc_misc_get_version_cookie_t
28  **/
29 typedef struct xcb_xc_misc_get_version_cookie_t {
30     unsigned int sequence;
31 } xcb_xc_misc_get_version_cookie_t;
32 
33 /** Opcode for xcb_xc_misc_get_version. */
34 #define XCB_XC_MISC_GET_VERSION 0
35 
36 /**
37  * @brief xcb_xc_misc_get_version_request_t
38  **/
39 typedef struct xcb_xc_misc_get_version_request_t {
40     uint8_t  major_opcode;
41     uint8_t  minor_opcode;
42     uint16_t length;
43     uint16_t client_major_version;
44     uint16_t client_minor_version;
45 } xcb_xc_misc_get_version_request_t;
46 
47 /**
48  * @brief xcb_xc_misc_get_version_reply_t
49  **/
50 typedef struct xcb_xc_misc_get_version_reply_t {
51     uint8_t  response_type;
52     uint8_t  pad0;
53     uint16_t sequence;
54     uint32_t length;
55     uint16_t server_major_version;
56     uint16_t server_minor_version;
57 } xcb_xc_misc_get_version_reply_t;
58 
59 /**
60  * @brief xcb_xc_misc_get_xid_range_cookie_t
61  **/
62 typedef struct xcb_xc_misc_get_xid_range_cookie_t {
63     unsigned int sequence;
64 } xcb_xc_misc_get_xid_range_cookie_t;
65 
66 /** Opcode for xcb_xc_misc_get_xid_range. */
67 #define XCB_XC_MISC_GET_XID_RANGE 1
68 
69 /**
70  * @brief xcb_xc_misc_get_xid_range_request_t
71  **/
72 typedef struct xcb_xc_misc_get_xid_range_request_t {
73     uint8_t  major_opcode;
74     uint8_t  minor_opcode;
75     uint16_t length;
76 } xcb_xc_misc_get_xid_range_request_t;
77 
78 /**
79  * @brief xcb_xc_misc_get_xid_range_reply_t
80  **/
81 typedef struct xcb_xc_misc_get_xid_range_reply_t {
82     uint8_t  response_type;
83     uint8_t  pad0;
84     uint16_t sequence;
85     uint32_t length;
86     uint32_t start_id;
87     uint32_t count;
88 } xcb_xc_misc_get_xid_range_reply_t;
89 
90 /**
91  * @brief xcb_xc_misc_get_xid_list_cookie_t
92  **/
93 typedef struct xcb_xc_misc_get_xid_list_cookie_t {
94     unsigned int sequence;
95 } xcb_xc_misc_get_xid_list_cookie_t;
96 
97 /** Opcode for xcb_xc_misc_get_xid_list. */
98 #define XCB_XC_MISC_GET_XID_LIST 2
99 
100 /**
101  * @brief xcb_xc_misc_get_xid_list_request_t
102  **/
103 typedef struct xcb_xc_misc_get_xid_list_request_t {
104     uint8_t  major_opcode;
105     uint8_t  minor_opcode;
106     uint16_t length;
107     uint32_t count;
108 } xcb_xc_misc_get_xid_list_request_t;
109 
110 /**
111  * @brief xcb_xc_misc_get_xid_list_reply_t
112  **/
113 typedef struct xcb_xc_misc_get_xid_list_reply_t {
114     uint8_t  response_type;
115     uint8_t  pad0;
116     uint16_t sequence;
117     uint32_t length;
118     uint32_t ids_len;
119     uint8_t  pad1[20];
120 } xcb_xc_misc_get_xid_list_reply_t;
121 
122 /**
123  *
124  * @param c The connection
125  * @return A cookie
126  *
127  * Delivers a request to the X server.
128  *
129  */
130 xcb_xc_misc_get_version_cookie_t
131 xcb_xc_misc_get_version (xcb_connection_t *c,
132                          uint16_t          client_major_version,
133                          uint16_t          client_minor_version);
134 
135 /**
136  *
137  * @param c The connection
138  * @return A cookie
139  *
140  * Delivers a request to the X server.
141  *
142  * This form can be used only if the request will cause
143  * a reply to be generated. Any returned error will be
144  * placed in the event queue.
145  */
146 xcb_xc_misc_get_version_cookie_t
147 xcb_xc_misc_get_version_unchecked (xcb_connection_t *c,
148                                    uint16_t          client_major_version,
149                                    uint16_t          client_minor_version);
150 
151 /**
152  * Return the reply
153  * @param c      The connection
154  * @param cookie The cookie
155  * @param e      The xcb_generic_error_t supplied
156  *
157  * Returns the reply of the request asked by
158  *
159  * The parameter @p e supplied to this function must be NULL if
160  * xcb_xc_misc_get_version_unchecked(). is used.
161  * Otherwise, it stores the error if any.
162  *
163  * The returned value must be freed by the caller using free().
164  */
165 xcb_xc_misc_get_version_reply_t *
166 xcb_xc_misc_get_version_reply (xcb_connection_t                  *c,
167                                xcb_xc_misc_get_version_cookie_t   cookie  /**< */,
168                                xcb_generic_error_t              **e);
169 
170 /**
171  *
172  * @param c The connection
173  * @return A cookie
174  *
175  * Delivers a request to the X server.
176  *
177  */
178 xcb_xc_misc_get_xid_range_cookie_t
179 xcb_xc_misc_get_xid_range (xcb_connection_t *c);
180 
181 /**
182  *
183  * @param c The connection
184  * @return A cookie
185  *
186  * Delivers a request to the X server.
187  *
188  * This form can be used only if the request will cause
189  * a reply to be generated. Any returned error will be
190  * placed in the event queue.
191  */
192 xcb_xc_misc_get_xid_range_cookie_t
193 xcb_xc_misc_get_xid_range_unchecked (xcb_connection_t *c);
194 
195 /**
196  * Return the reply
197  * @param c      The connection
198  * @param cookie The cookie
199  * @param e      The xcb_generic_error_t supplied
200  *
201  * Returns the reply of the request asked by
202  *
203  * The parameter @p e supplied to this function must be NULL if
204  * xcb_xc_misc_get_xid_range_unchecked(). is used.
205  * Otherwise, it stores the error if any.
206  *
207  * The returned value must be freed by the caller using free().
208  */
209 xcb_xc_misc_get_xid_range_reply_t *
210 xcb_xc_misc_get_xid_range_reply (xcb_connection_t                    *c,
211                                  xcb_xc_misc_get_xid_range_cookie_t   cookie  /**< */,
212                                  xcb_generic_error_t                **e);
213 
214 int
215 xcb_xc_misc_get_xid_list_sizeof (const void  *_buffer);
216 
217 /**
218  *
219  * @param c The connection
220  * @return A cookie
221  *
222  * Delivers a request to the X server.
223  *
224  */
225 xcb_xc_misc_get_xid_list_cookie_t
226 xcb_xc_misc_get_xid_list (xcb_connection_t *c,
227                           uint32_t          count);
228 
229 /**
230  *
231  * @param c The connection
232  * @return A cookie
233  *
234  * Delivers a request to the X server.
235  *
236  * This form can be used only if the request will cause
237  * a reply to be generated. Any returned error will be
238  * placed in the event queue.
239  */
240 xcb_xc_misc_get_xid_list_cookie_t
241 xcb_xc_misc_get_xid_list_unchecked (xcb_connection_t *c,
242                                     uint32_t          count);
243 
244 uint32_t *
245 xcb_xc_misc_get_xid_list_ids (const xcb_xc_misc_get_xid_list_reply_t *R);
246 
247 int
248 xcb_xc_misc_get_xid_list_ids_length (const xcb_xc_misc_get_xid_list_reply_t *R);
249 
250 xcb_generic_iterator_t
251 xcb_xc_misc_get_xid_list_ids_end (const xcb_xc_misc_get_xid_list_reply_t *R);
252 
253 /**
254  * Return the reply
255  * @param c      The connection
256  * @param cookie The cookie
257  * @param e      The xcb_generic_error_t supplied
258  *
259  * Returns the reply of the request asked by
260  *
261  * The parameter @p e supplied to this function must be NULL if
262  * xcb_xc_misc_get_xid_list_unchecked(). is used.
263  * Otherwise, it stores the error if any.
264  *
265  * The returned value must be freed by the caller using free().
266  */
267 xcb_xc_misc_get_xid_list_reply_t *
268 xcb_xc_misc_get_xid_list_reply (xcb_connection_t                   *c,
269                                 xcb_xc_misc_get_xid_list_cookie_t   cookie  /**< */,
270                                 xcb_generic_error_t               **e);
271 
272 
273 #ifdef __cplusplus
274 }
275 #endif
276 
277 #endif
278 
279 /**
280  * @}
281  */
282