etc/protocols - sync with NetBSD-8
[minix.git] / external / mit / xorg / lib / libxcb / files / xevie.h
blob7d386f3caf7ac7ea1aafc7a5a6fed20277950c1e
1 /*
2 * This file generated automatically from xevie.xml by c_client.py.
3 * Edit at your peril.
4 */
6 /**
7 * @defgroup XCB_Xevie_API XCB Xevie API
8 * @brief Xevie XCB Protocol Implementation.
9 * @{
10 **/
12 #ifndef __XEVIE_H
13 #define __XEVIE_H
15 #include "xcb.h"
17 #ifdef __cplusplus
18 extern "C" {
19 #endif
21 #define XCB_XEVIE_MAJOR_VERSION 1
22 #define XCB_XEVIE_MINOR_VERSION 0
24 extern xcb_extension_t xcb_xevie_id;
26 /**
27 * @brief xcb_xevie_query_version_cookie_t
28 **/
29 typedef struct xcb_xevie_query_version_cookie_t {
30 unsigned int sequence; /**< */
31 } xcb_xevie_query_version_cookie_t;
33 /** Opcode for xcb_xevie_query_version. */
34 #define XCB_XEVIE_QUERY_VERSION 0
36 /**
37 * @brief xcb_xevie_query_version_request_t
38 **/
39 typedef 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;
47 /**
48 * @brief xcb_xevie_query_version_reply_t
49 **/
50 typedef 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;
60 /**
61 * @brief xcb_xevie_start_cookie_t
62 **/
63 typedef struct xcb_xevie_start_cookie_t {
64 unsigned int sequence; /**< */
65 } xcb_xevie_start_cookie_t;
67 /** Opcode for xcb_xevie_start. */
68 #define XCB_XEVIE_START 1
70 /**
71 * @brief xcb_xevie_start_request_t
72 **/
73 typedef 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;
80 /**
81 * @brief xcb_xevie_start_reply_t
82 **/
83 typedef 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;
91 /**
92 * @brief xcb_xevie_end_cookie_t
93 **/
94 typedef struct xcb_xevie_end_cookie_t {
95 unsigned int sequence; /**< */
96 } xcb_xevie_end_cookie_t;
98 /** Opcode for xcb_xevie_end. */
99 #define XCB_XEVIE_END 2
102 * @brief xcb_xevie_end_request_t
104 typedef 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;
112 * @brief xcb_xevie_end_reply_t
114 typedef 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;
122 typedef enum xcb_xevie_datatype_t {
123 XCB_XEVIE_DATATYPE_UNMODIFIED = 0,
124 XCB_XEVIE_DATATYPE_MODIFIED = 1
125 } xcb_xevie_datatype_t;
128 * @brief xcb_xevie_event_t
130 typedef struct xcb_xevie_event_t {
131 uint8_t pad0[32]; /**< */
132 } xcb_xevie_event_t;
135 * @brief xcb_xevie_event_iterator_t
137 typedef struct xcb_xevie_event_iterator_t {
138 xcb_xevie_event_t *data; /**< */
139 int rem; /**< */
140 int index; /**< */
141 } xcb_xevie_event_iterator_t;
144 * @brief xcb_xevie_send_cookie_t
146 typedef struct xcb_xevie_send_cookie_t {
147 unsigned int sequence; /**< */
148 } xcb_xevie_send_cookie_t;
150 /** Opcode for xcb_xevie_send. */
151 #define XCB_XEVIE_SEND 3
154 * @brief xcb_xevie_send_request_t
156 typedef 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;
166 * @brief xcb_xevie_send_reply_t
168 typedef 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;
177 * @brief xcb_xevie_select_input_cookie_t
179 typedef struct xcb_xevie_select_input_cookie_t {
180 unsigned int sequence; /**< */
181 } xcb_xevie_select_input_cookie_t;
183 /** Opcode for xcb_xevie_select_input. */
184 #define XCB_XEVIE_SELECT_INPUT 4
187 * @brief xcb_xevie_select_input_request_t
189 typedef 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;
197 * @brief xcb_xevie_select_input_reply_t
199 typedef 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;
209 * @param c The connection
210 * @return A cookie
212 * Delivers a request to the X server.
215 xcb_xevie_query_version_cookie_t
216 xcb_xevie_query_version (xcb_connection_t *c /**< */,
217 uint16_t client_major_version /**< */,
218 uint16_t client_minor_version /**< */);
222 * @param c The connection
223 * @return A cookie
225 * Delivers a request to the X server.
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.
231 xcb_xevie_query_version_cookie_t
232 xcb_xevie_query_version_unchecked (xcb_connection_t *c /**< */,
233 uint16_t client_major_version /**< */,
234 uint16_t client_minor_version /**< */);
237 * Return the reply
238 * @param c The connection
239 * @param cookie The cookie
240 * @param e The xcb_generic_error_t supplied
242 * Returns the reply of the request asked by
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.
248 * The returned value must be freed by the caller using free().
250 xcb_xevie_query_version_reply_t *
251 xcb_xevie_query_version_reply (xcb_connection_t *c /**< */,
252 xcb_xevie_query_version_cookie_t cookie /**< */,
253 xcb_generic_error_t **e /**< */);
257 * @param c The connection
258 * @return A cookie
260 * Delivers a request to the X server.
263 xcb_xevie_start_cookie_t
264 xcb_xevie_start (xcb_connection_t *c /**< */,
265 uint32_t screen /**< */);
269 * @param c The connection
270 * @return A cookie
272 * Delivers a request to the X server.
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.
278 xcb_xevie_start_cookie_t
279 xcb_xevie_start_unchecked (xcb_connection_t *c /**< */,
280 uint32_t screen /**< */);
283 * Return the reply
284 * @param c The connection
285 * @param cookie The cookie
286 * @param e The xcb_generic_error_t supplied
288 * Returns the reply of the request asked by
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.
294 * The returned value must be freed by the caller using free().
296 xcb_xevie_start_reply_t *
297 xcb_xevie_start_reply (xcb_connection_t *c /**< */,
298 xcb_xevie_start_cookie_t cookie /**< */,
299 xcb_generic_error_t **e /**< */);
303 * @param c The connection
304 * @return A cookie
306 * Delivers a request to the X server.
309 xcb_xevie_end_cookie_t
310 xcb_xevie_end (xcb_connection_t *c /**< */,
311 uint32_t cmap /**< */);
315 * @param c The connection
316 * @return A cookie
318 * Delivers a request to the X server.
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.
324 xcb_xevie_end_cookie_t
325 xcb_xevie_end_unchecked (xcb_connection_t *c /**< */,
326 uint32_t cmap /**< */);
329 * Return the reply
330 * @param c The connection
331 * @param cookie The cookie
332 * @param e The xcb_generic_error_t supplied
334 * Returns the reply of the request asked by
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.
340 * The returned value must be freed by the caller using free().
342 xcb_xevie_end_reply_t *
343 xcb_xevie_end_reply (xcb_connection_t *c /**< */,
344 xcb_xevie_end_cookie_t cookie /**< */,
345 xcb_generic_error_t **e /**< */);
348 * Get the next element of the iterator
349 * @param i Pointer to a xcb_xevie_event_iterator_t
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)
355 void
356 xcb_xevie_event_next (xcb_xevie_event_iterator_t *i /**< */);
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
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.
367 xcb_generic_iterator_t
368 xcb_xevie_event_end (xcb_xevie_event_iterator_t i /**< */);
372 * @param c The connection
373 * @return A cookie
375 * Delivers a request to the X server.
378 xcb_xevie_send_cookie_t
379 xcb_xevie_send (xcb_connection_t *c /**< */,
380 xcb_xevie_event_t event /**< */,
381 uint32_t data_type /**< */);
385 * @param c The connection
386 * @return A cookie
388 * Delivers a request to the X server.
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.
394 xcb_xevie_send_cookie_t
395 xcb_xevie_send_unchecked (xcb_connection_t *c /**< */,
396 xcb_xevie_event_t event /**< */,
397 uint32_t data_type /**< */);
400 * Return the reply
401 * @param c The connection
402 * @param cookie The cookie
403 * @param e The xcb_generic_error_t supplied
405 * Returns the reply of the request asked by
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.
411 * The returned value must be freed by the caller using free().
413 xcb_xevie_send_reply_t *
414 xcb_xevie_send_reply (xcb_connection_t *c /**< */,
415 xcb_xevie_send_cookie_t cookie /**< */,
416 xcb_generic_error_t **e /**< */);
420 * @param c The connection
421 * @return A cookie
423 * Delivers a request to the X server.
426 xcb_xevie_select_input_cookie_t
427 xcb_xevie_select_input (xcb_connection_t *c /**< */,
428 uint32_t event_mask /**< */);
432 * @param c The connection
433 * @return A cookie
435 * Delivers a request to the X server.
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.
441 xcb_xevie_select_input_cookie_t
442 xcb_xevie_select_input_unchecked (xcb_connection_t *c /**< */,
443 uint32_t event_mask /**< */);
446 * Return the reply
447 * @param c The connection
448 * @param cookie The cookie
449 * @param e The xcb_generic_error_t supplied
451 * Returns the reply of the request asked by
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.
457 * The returned value must be freed by the caller using free().
459 xcb_xevie_select_input_reply_t *
460 xcb_xevie_select_input_reply (xcb_connection_t *c /**< */,
461 xcb_xevie_select_input_cookie_t cookie /**< */,
462 xcb_generic_error_t **e /**< */);
465 #ifdef __cplusplus
467 #endif
469 #endif
472 * @}