master
ブランチ master
ShaderPlayground / deps / xlibre / include / xcb / xevie.h
11.3 KB、473行 生 Blame 履歴
1/*
2 * This file generated automatically from xevie.xml by c_client.py.
3 * Edit at your peril.
4 */
5
6/**
7 * @defgroup XCB_Xevie_API XCB Xevie API
8 * @brief Xevie XCB Protocol Implementation.
9 * @{
10 **/
11
12#ifndef __XEVIE_H
13#define __XEVIE_H
14
15#include "xcb.h"
16
17#ifdef __cplusplus
18extern "C" {
19#endif
20
21#define XCB_XEVIE_MAJOR_VERSION 1
22#define XCB_XEVIE_MINOR_VERSION 0
23
24extern xcb_extension_t xcb_xevie_id;
25
26/**
27 * @brief xcb_xevie_query_version_cookie_t
28 **/
29typedef struct xcb_xevie_query_version_cookie_t {
30 unsigned int sequence;
31} xcb_xevie_query_version_cookie_t;
32
33/** Opcode for xcb_xevie_query_version. */
34#define XCB_XEVIE_QUERY_VERSION 0
35
36/**
37 * @brief xcb_xevie_query_version_request_t
38 **/
39typedef struct xcb_xevie_query_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_xevie_query_version_request_t;
46
47/**
48 * @brief xcb_xevie_query_version_reply_t
49 **/
50typedef struct xcb_xevie_query_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 uint8_t pad1[20];
58} xcb_xevie_query_version_reply_t;
59
60/**
61 * @brief xcb_xevie_start_cookie_t
62 **/
63typedef struct xcb_xevie_start_cookie_t {
64 unsigned int sequence;
65} xcb_xevie_start_cookie_t;
66
67/** Opcode for xcb_xevie_start. */
68#define XCB_XEVIE_START 1
69
70/**
71 * @brief xcb_xevie_start_request_t
72 **/
73typedef struct xcb_xevie_start_request_t {
74 uint8_t major_opcode;
75 uint8_t minor_opcode;
76 uint16_t length;
77 uint32_t screen;
78} xcb_xevie_start_request_t;
79
80/**
81 * @brief xcb_xevie_start_reply_t
82 **/
83typedef struct xcb_xevie_start_reply_t {
84 uint8_t response_type;
85 uint8_t pad0;
86 uint16_t sequence;
87 uint32_t length;
88 uint8_t pad1[24];
89} xcb_xevie_start_reply_t;
90
91/**
92 * @brief xcb_xevie_end_cookie_t
93 **/
94typedef struct xcb_xevie_end_cookie_t {
95 unsigned int sequence;
96} xcb_xevie_end_cookie_t;
97
98/** Opcode for xcb_xevie_end. */
99#define XCB_XEVIE_END 2
100
101/**
102 * @brief xcb_xevie_end_request_t
103 **/
104typedef struct xcb_xevie_end_request_t {
105 uint8_t major_opcode;
106 uint8_t minor_opcode;
107 uint16_t length;
108 uint32_t cmap;
109} xcb_xevie_end_request_t;
110
111/**
112 * @brief xcb_xevie_end_reply_t
113 **/
114typedef struct xcb_xevie_end_reply_t {
115 uint8_t response_type;
116 uint8_t pad0;
117 uint16_t sequence;
118 uint32_t length;
119 uint8_t pad1[24];
120} xcb_xevie_end_reply_t;
121
122typedef enum xcb_xevie_datatype_t {
123 XCB_XEVIE_DATATYPE_UNMODIFIED = 0,
124 XCB_XEVIE_DATATYPE_MODIFIED = 1
125} xcb_xevie_datatype_t;
126
127/**
128 * @brief xcb_xevie_event_t
129 **/
130typedef struct xcb_xevie_event_t {
131 uint8_t pad0[32];
132} xcb_xevie_event_t;
133
134/**
135 * @brief xcb_xevie_event_iterator_t
136 **/
137typedef struct xcb_xevie_event_iterator_t {
138 xcb_xevie_event_t *data;
139 int rem;
140 int index;
141} xcb_xevie_event_iterator_t;
142
143/**
144 * @brief xcb_xevie_send_cookie_t
145 **/
146typedef struct xcb_xevie_send_cookie_t {
147 unsigned int sequence;
148} xcb_xevie_send_cookie_t;
149
150/** Opcode for xcb_xevie_send. */
151#define XCB_XEVIE_SEND 3
152
153/**
154 * @brief xcb_xevie_send_request_t
155 **/
156typedef struct xcb_xevie_send_request_t {
157 uint8_t major_opcode;
158 uint8_t minor_opcode;
159 uint16_t length;
160 xcb_xevie_event_t event;
161 uint32_t data_type;
162 uint8_t pad0[64];
163} xcb_xevie_send_request_t;
164
165/**
166 * @brief xcb_xevie_send_reply_t
167 **/
168typedef struct xcb_xevie_send_reply_t {
169 uint8_t response_type;
170 uint8_t pad0;
171 uint16_t sequence;
172 uint32_t length;
173 uint8_t pad1[24];
174} xcb_xevie_send_reply_t;
175
176/**
177 * @brief xcb_xevie_select_input_cookie_t
178 **/
179typedef struct xcb_xevie_select_input_cookie_t {
180 unsigned int sequence;
181} xcb_xevie_select_input_cookie_t;
182
183/** Opcode for xcb_xevie_select_input. */
184#define XCB_XEVIE_SELECT_INPUT 4
185
186/**
187 * @brief xcb_xevie_select_input_request_t
188 **/
189typedef struct xcb_xevie_select_input_request_t {
190 uint8_t major_opcode;
191 uint8_t minor_opcode;
192 uint16_t length;
193 uint32_t event_mask;
194} xcb_xevie_select_input_request_t;
195
196/**
197 * @brief xcb_xevie_select_input_reply_t
198 **/
199typedef struct xcb_xevie_select_input_reply_t {
200 uint8_t response_type;
201 uint8_t pad0;
202 uint16_t sequence;
203 uint32_t length;
204 uint8_t pad1[24];
205} xcb_xevie_select_input_reply_t;
206
207/**
208 *
209 * @param c The connection
210 * @return A cookie
211 *
212 * Delivers a request to the X server.
213 *
214 */
215xcb_xevie_query_version_cookie_t
216xcb_xevie_query_version (xcb_connection_t *c,
217 uint16_t client_major_version,
218 uint16_t client_minor_version);
219
220/**
221 *
222 * @param c The connection
223 * @return A cookie
224 *
225 * Delivers a request to the X server.
226 *
227 * This form can be used only if the request will cause
228 * a reply to be generated. Any returned error will be
229 * placed in the event queue.
230 */
231xcb_xevie_query_version_cookie_t
232xcb_xevie_query_version_unchecked (xcb_connection_t *c,
233 uint16_t client_major_version,
234 uint16_t client_minor_version);
235
236/**
237 * Return the reply
238 * @param c The connection
239 * @param cookie The cookie
240 * @param e The xcb_generic_error_t supplied
241 *
242 * Returns the reply of the request asked by
243 *
244 * The parameter @p e supplied to this function must be NULL if
245 * xcb_xevie_query_version_unchecked(). is used.
246 * Otherwise, it stores the error if any.
247 *
248 * The returned value must be freed by the caller using free().
249 */
250xcb_xevie_query_version_reply_t *
251xcb_xevie_query_version_reply (xcb_connection_t *c,
252 xcb_xevie_query_version_cookie_t cookie /**< */,
253 xcb_generic_error_t **e);
254
255/**
256 *
257 * @param c The connection
258 * @return A cookie
259 *
260 * Delivers a request to the X server.
261 *
262 */
263xcb_xevie_start_cookie_t
264xcb_xevie_start (xcb_connection_t *c,
265 uint32_t screen);
266
267/**
268 *
269 * @param c The connection
270 * @return A cookie
271 *
272 * Delivers a request to the X server.
273 *
274 * This form can be used only if the request will cause
275 * a reply to be generated. Any returned error will be
276 * placed in the event queue.
277 */
278xcb_xevie_start_cookie_t
279xcb_xevie_start_unchecked (xcb_connection_t *c,
280 uint32_t screen);
281
282/**
283 * Return the reply
284 * @param c The connection
285 * @param cookie The cookie
286 * @param e The xcb_generic_error_t supplied
287 *
288 * Returns the reply of the request asked by
289 *
290 * The parameter @p e supplied to this function must be NULL if
291 * xcb_xevie_start_unchecked(). is used.
292 * Otherwise, it stores the error if any.
293 *
294 * The returned value must be freed by the caller using free().
295 */
296xcb_xevie_start_reply_t *
297xcb_xevie_start_reply (xcb_connection_t *c,
298 xcb_xevie_start_cookie_t cookie /**< */,
299 xcb_generic_error_t **e);
300
301/**
302 *
303 * @param c The connection
304 * @return A cookie
305 *
306 * Delivers a request to the X server.
307 *
308 */
309xcb_xevie_end_cookie_t
310xcb_xevie_end (xcb_connection_t *c,
311 uint32_t cmap);
312
313/**
314 *
315 * @param c The connection
316 * @return A cookie
317 *
318 * Delivers a request to the X server.
319 *
320 * This form can be used only if the request will cause
321 * a reply to be generated. Any returned error will be
322 * placed in the event queue.
323 */
324xcb_xevie_end_cookie_t
325xcb_xevie_end_unchecked (xcb_connection_t *c,
326 uint32_t cmap);
327
328/**
329 * Return the reply
330 * @param c The connection
331 * @param cookie The cookie
332 * @param e The xcb_generic_error_t supplied
333 *
334 * Returns the reply of the request asked by
335 *
336 * The parameter @p e supplied to this function must be NULL if
337 * xcb_xevie_end_unchecked(). is used.
338 * Otherwise, it stores the error if any.
339 *
340 * The returned value must be freed by the caller using free().
341 */
342xcb_xevie_end_reply_t *
343xcb_xevie_end_reply (xcb_connection_t *c,
344 xcb_xevie_end_cookie_t cookie /**< */,
345 xcb_generic_error_t **e);
346
347/**
348 * Get the next element of the iterator
349 * @param i Pointer to a xcb_xevie_event_iterator_t
350 *
351 * Get the next element in the iterator. The member rem is
352 * decreased by one. The member data points to the next
353 * element. The member index is increased by sizeof(xcb_xevie_event_t)
354 */
355void
356xcb_xevie_event_next (xcb_xevie_event_iterator_t *i);
357
358/**
359 * Return the iterator pointing to the last element
360 * @param i An xcb_xevie_event_iterator_t
361 * @return The iterator pointing to the last element
362 *
363 * Set the current element in the iterator to the last element.
364 * The member rem is set to 0. The member data points to the
365 * last element.
366 */
367xcb_generic_iterator_t
368xcb_xevie_event_end (xcb_xevie_event_iterator_t i);
369
370/**
371 *
372 * @param c The connection
373 * @return A cookie
374 *
375 * Delivers a request to the X server.
376 *
377 */
378xcb_xevie_send_cookie_t
379xcb_xevie_send (xcb_connection_t *c,
380 xcb_xevie_event_t event,
381 uint32_t data_type);
382
383/**
384 *
385 * @param c The connection
386 * @return A cookie
387 *
388 * Delivers a request to the X server.
389 *
390 * This form can be used only if the request will cause
391 * a reply to be generated. Any returned error will be
392 * placed in the event queue.
393 */
394xcb_xevie_send_cookie_t
395xcb_xevie_send_unchecked (xcb_connection_t *c,
396 xcb_xevie_event_t event,
397 uint32_t data_type);
398
399/**
400 * Return the reply
401 * @param c The connection
402 * @param cookie The cookie
403 * @param e The xcb_generic_error_t supplied
404 *
405 * Returns the reply of the request asked by
406 *
407 * The parameter @p e supplied to this function must be NULL if
408 * xcb_xevie_send_unchecked(). is used.
409 * Otherwise, it stores the error if any.
410 *
411 * The returned value must be freed by the caller using free().
412 */
413xcb_xevie_send_reply_t *
414xcb_xevie_send_reply (xcb_connection_t *c,
415 xcb_xevie_send_cookie_t cookie /**< */,
416 xcb_generic_error_t **e);
417
418/**
419 *
420 * @param c The connection
421 * @return A cookie
422 *
423 * Delivers a request to the X server.
424 *
425 */
426xcb_xevie_select_input_cookie_t
427xcb_xevie_select_input (xcb_connection_t *c,
428 uint32_t event_mask);
429
430/**
431 *
432 * @param c The connection
433 * @return A cookie
434 *
435 * Delivers a request to the X server.
436 *
437 * This form can be used only if the request will cause
438 * a reply to be generated. Any returned error will be
439 * placed in the event queue.
440 */
441xcb_xevie_select_input_cookie_t
442xcb_xevie_select_input_unchecked (xcb_connection_t *c,
443 uint32_t event_mask);
444
445/**
446 * Return the reply
447 * @param c The connection
448 * @param cookie The cookie
449 * @param e The xcb_generic_error_t supplied
450 *
451 * Returns the reply of the request asked by
452 *
453 * The parameter @p e supplied to this function must be NULL if
454 * xcb_xevie_select_input_unchecked(). is used.
455 * Otherwise, it stores the error if any.
456 *
457 * The returned value must be freed by the caller using free().
458 */
459xcb_xevie_select_input_reply_t *
460xcb_xevie_select_input_reply (xcb_connection_t *c,
461 xcb_xevie_select_input_cookie_t cookie /**< */,
462 xcb_generic_error_t **e);
463
464
465#ifdef __cplusplus
466}
467#endif
468
469#endif
470
471/**
472 * @}
473 */