xref: /netbsd-src/external/mit/xorg/lib/libxcb/files/xtest.h (revision ba6321fe7f085fc81d62ca44a3abf72ff7ab2641)
1 /*
2  * This file generated automatically from xtest.xml by c_client.py.
3  * Edit at your peril.
4  */
5 
6 /**
7  * @defgroup XCB_Test_API XCB Test API
8  * @brief Test XCB Protocol Implementation.
9  * @{
10  **/
11 
12 #ifndef __XTEST_H
13 #define __XTEST_H
14 
15 #include "xcb.h"
16 #include "xproto.h"
17 
18 #ifdef __cplusplus
19 extern "C" {
20 #endif
21 
22 #define XCB_TEST_MAJOR_VERSION 2
23 #define XCB_TEST_MINOR_VERSION 2
24 
25 extern xcb_extension_t xcb_test_id;
26 
27 /**
28  * @brief xcb_test_get_version_cookie_t
29  **/
30 typedef struct xcb_test_get_version_cookie_t {
31     unsigned int sequence;
32 } xcb_test_get_version_cookie_t;
33 
34 /** Opcode for xcb_test_get_version. */
35 #define XCB_TEST_GET_VERSION 0
36 
37 /**
38  * @brief xcb_test_get_version_request_t
39  **/
40 typedef struct xcb_test_get_version_request_t {
41     uint8_t  major_opcode;
42     uint8_t  minor_opcode;
43     uint16_t length;
44     uint8_t  major_version;
45     uint8_t  pad0;
46     uint16_t minor_version;
47 } xcb_test_get_version_request_t;
48 
49 /**
50  * @brief xcb_test_get_version_reply_t
51  **/
52 typedef struct xcb_test_get_version_reply_t {
53     uint8_t  response_type;
54     uint8_t  major_version;
55     uint16_t sequence;
56     uint32_t length;
57     uint16_t minor_version;
58 } xcb_test_get_version_reply_t;
59 
60 typedef enum xcb_test_cursor_t {
61     XCB_TEST_CURSOR_NONE = 0,
62     XCB_TEST_CURSOR_CURRENT = 1
63 } xcb_test_cursor_t;
64 
65 /**
66  * @brief xcb_test_compare_cursor_cookie_t
67  **/
68 typedef struct xcb_test_compare_cursor_cookie_t {
69     unsigned int sequence;
70 } xcb_test_compare_cursor_cookie_t;
71 
72 /** Opcode for xcb_test_compare_cursor. */
73 #define XCB_TEST_COMPARE_CURSOR 1
74 
75 /**
76  * @brief xcb_test_compare_cursor_request_t
77  **/
78 typedef struct xcb_test_compare_cursor_request_t {
79     uint8_t      major_opcode;
80     uint8_t      minor_opcode;
81     uint16_t     length;
82     xcb_window_t window;
83     xcb_cursor_t cursor;
84 } xcb_test_compare_cursor_request_t;
85 
86 /**
87  * @brief xcb_test_compare_cursor_reply_t
88  **/
89 typedef struct xcb_test_compare_cursor_reply_t {
90     uint8_t  response_type;
91     uint8_t  same;
92     uint16_t sequence;
93     uint32_t length;
94 } xcb_test_compare_cursor_reply_t;
95 
96 /** Opcode for xcb_test_fake_input. */
97 #define XCB_TEST_FAKE_INPUT 2
98 
99 /**
100  * @brief xcb_test_fake_input_request_t
101  **/
102 typedef struct xcb_test_fake_input_request_t {
103     uint8_t      major_opcode;
104     uint8_t      minor_opcode;
105     uint16_t     length;
106     uint8_t      type;
107     uint8_t      detail;
108     uint8_t      pad0[2];
109     uint32_t     time;
110     xcb_window_t root;
111     uint8_t      pad1[8];
112     int16_t      rootX;
113     int16_t      rootY;
114     uint8_t      pad2[7];
115     uint8_t      deviceid;
116 } xcb_test_fake_input_request_t;
117 
118 /** Opcode for xcb_test_grab_control. */
119 #define XCB_TEST_GRAB_CONTROL 3
120 
121 /**
122  * @brief xcb_test_grab_control_request_t
123  **/
124 typedef struct xcb_test_grab_control_request_t {
125     uint8_t  major_opcode;
126     uint8_t  minor_opcode;
127     uint16_t length;
128     uint8_t  impervious;
129     uint8_t  pad0[3];
130 } xcb_test_grab_control_request_t;
131 
132 /**
133  *
134  * @param c The connection
135  * @return A cookie
136  *
137  * Delivers a request to the X server.
138  *
139  */
140 xcb_test_get_version_cookie_t
141 xcb_test_get_version (xcb_connection_t *c,
142                       uint8_t           major_version,
143                       uint16_t          minor_version);
144 
145 /**
146  *
147  * @param c The connection
148  * @return A cookie
149  *
150  * Delivers a request to the X server.
151  *
152  * This form can be used only if the request will cause
153  * a reply to be generated. Any returned error will be
154  * placed in the event queue.
155  */
156 xcb_test_get_version_cookie_t
157 xcb_test_get_version_unchecked (xcb_connection_t *c,
158                                 uint8_t           major_version,
159                                 uint16_t          minor_version);
160 
161 /**
162  * Return the reply
163  * @param c      The connection
164  * @param cookie The cookie
165  * @param e      The xcb_generic_error_t supplied
166  *
167  * Returns the reply of the request asked by
168  *
169  * The parameter @p e supplied to this function must be NULL if
170  * xcb_test_get_version_unchecked(). is used.
171  * Otherwise, it stores the error if any.
172  *
173  * The returned value must be freed by the caller using free().
174  */
175 xcb_test_get_version_reply_t *
176 xcb_test_get_version_reply (xcb_connection_t               *c,
177                             xcb_test_get_version_cookie_t   cookie  /**< */,
178                             xcb_generic_error_t           **e);
179 
180 /**
181  *
182  * @param c The connection
183  * @return A cookie
184  *
185  * Delivers a request to the X server.
186  *
187  */
188 xcb_test_compare_cursor_cookie_t
189 xcb_test_compare_cursor (xcb_connection_t *c,
190                          xcb_window_t      window,
191                          xcb_cursor_t      cursor);
192 
193 /**
194  *
195  * @param c The connection
196  * @return A cookie
197  *
198  * Delivers a request to the X server.
199  *
200  * This form can be used only if the request will cause
201  * a reply to be generated. Any returned error will be
202  * placed in the event queue.
203  */
204 xcb_test_compare_cursor_cookie_t
205 xcb_test_compare_cursor_unchecked (xcb_connection_t *c,
206                                    xcb_window_t      window,
207                                    xcb_cursor_t      cursor);
208 
209 /**
210  * Return the reply
211  * @param c      The connection
212  * @param cookie The cookie
213  * @param e      The xcb_generic_error_t supplied
214  *
215  * Returns the reply of the request asked by
216  *
217  * The parameter @p e supplied to this function must be NULL if
218  * xcb_test_compare_cursor_unchecked(). is used.
219  * Otherwise, it stores the error if any.
220  *
221  * The returned value must be freed by the caller using free().
222  */
223 xcb_test_compare_cursor_reply_t *
224 xcb_test_compare_cursor_reply (xcb_connection_t                  *c,
225                                xcb_test_compare_cursor_cookie_t   cookie  /**< */,
226                                xcb_generic_error_t              **e);
227 
228 /**
229  *
230  * @param c The connection
231  * @return A cookie
232  *
233  * Delivers a request to the X server.
234  *
235  * This form can be used only if the request will not cause
236  * a reply to be generated. Any returned error will be
237  * saved for handling by xcb_request_check().
238  */
239 xcb_void_cookie_t
240 xcb_test_fake_input_checked (xcb_connection_t *c,
241                              uint8_t           type,
242                              uint8_t           detail,
243                              uint32_t          time,
244                              xcb_window_t      root,
245                              int16_t           rootX,
246                              int16_t           rootY,
247                              uint8_t           deviceid);
248 
249 /**
250  *
251  * @param c The connection
252  * @return A cookie
253  *
254  * Delivers a request to the X server.
255  *
256  */
257 xcb_void_cookie_t
258 xcb_test_fake_input (xcb_connection_t *c,
259                      uint8_t           type,
260                      uint8_t           detail,
261                      uint32_t          time,
262                      xcb_window_t      root,
263                      int16_t           rootX,
264                      int16_t           rootY,
265                      uint8_t           deviceid);
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 not cause
275  * a reply to be generated. Any returned error will be
276  * saved for handling by xcb_request_check().
277  */
278 xcb_void_cookie_t
279 xcb_test_grab_control_checked (xcb_connection_t *c,
280                                uint8_t           impervious);
281 
282 /**
283  *
284  * @param c The connection
285  * @return A cookie
286  *
287  * Delivers a request to the X server.
288  *
289  */
290 xcb_void_cookie_t
291 xcb_test_grab_control (xcb_connection_t *c,
292                        uint8_t           impervious);
293 
294 
295 #ifdef __cplusplus
296 }
297 #endif
298 
299 #endif
300 
301 /**
302  * @}
303  */
304