xref: /netbsd/external/mit/xorg/lib/libxcb/files/xtest.c (revision 6550d01e)
1 /*
2  * This file generated automatically from xtest.xml by c_client.py.
3  * Edit at your peril.
4  */
5 
6 #include <string.h>
7 #include <assert.h>
8 #include "xcbext.h"
9 #include "xtest.h"
10 #include "xproto.h"
11 
12 xcb_extension_t xcb_test_id = { "XTEST", 0 };
13 
14 
15 /*****************************************************************************
16  **
17  ** xcb_test_get_version_cookie_t xcb_test_get_version
18  **
19  ** @param xcb_connection_t *c
20  ** @param uint8_t           major_version
21  ** @param uint16_t          minor_version
22  ** @returns xcb_test_get_version_cookie_t
23  **
24  *****************************************************************************/
25 
26 xcb_test_get_version_cookie_t
27 xcb_test_get_version (xcb_connection_t *c  /**< */,
28                       uint8_t           major_version  /**< */,
29                       uint16_t          minor_version  /**< */)
30 {
31     static const xcb_protocol_request_t xcb_req = {
32         /* count */ 2,
33         /* ext */ &xcb_test_id,
34         /* opcode */ XCB_TEST_GET_VERSION,
35         /* isvoid */ 0
36     };
37 
38     struct iovec xcb_parts[4];
39     xcb_test_get_version_cookie_t xcb_ret;
40     xcb_test_get_version_request_t xcb_out;
41 
42     xcb_out.major_version = major_version;
43     xcb_out.pad0 = 0;
44     xcb_out.minor_version = minor_version;
45 
46     xcb_parts[2].iov_base = (char *) &xcb_out;
47     xcb_parts[2].iov_len = sizeof(xcb_out);
48     xcb_parts[3].iov_base = 0;
49     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
50     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
51     return xcb_ret;
52 }
53 
54 
55 /*****************************************************************************
56  **
57  ** xcb_test_get_version_cookie_t xcb_test_get_version_unchecked
58  **
59  ** @param xcb_connection_t *c
60  ** @param uint8_t           major_version
61  ** @param uint16_t          minor_version
62  ** @returns xcb_test_get_version_cookie_t
63  **
64  *****************************************************************************/
65 
66 xcb_test_get_version_cookie_t
67 xcb_test_get_version_unchecked (xcb_connection_t *c  /**< */,
68                                 uint8_t           major_version  /**< */,
69                                 uint16_t          minor_version  /**< */)
70 {
71     static const xcb_protocol_request_t xcb_req = {
72         /* count */ 2,
73         /* ext */ &xcb_test_id,
74         /* opcode */ XCB_TEST_GET_VERSION,
75         /* isvoid */ 0
76     };
77 
78     struct iovec xcb_parts[4];
79     xcb_test_get_version_cookie_t xcb_ret;
80     xcb_test_get_version_request_t xcb_out;
81 
82     xcb_out.major_version = major_version;
83     xcb_out.pad0 = 0;
84     xcb_out.minor_version = minor_version;
85 
86     xcb_parts[2].iov_base = (char *) &xcb_out;
87     xcb_parts[2].iov_len = sizeof(xcb_out);
88     xcb_parts[3].iov_base = 0;
89     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
90     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
91     return xcb_ret;
92 }
93 
94 
95 /*****************************************************************************
96  **
97  ** xcb_test_get_version_reply_t * xcb_test_get_version_reply
98  **
99  ** @param xcb_connection_t               *c
100  ** @param xcb_test_get_version_cookie_t   cookie
101  ** @param xcb_generic_error_t           **e
102  ** @returns xcb_test_get_version_reply_t *
103  **
104  *****************************************************************************/
105 
106 xcb_test_get_version_reply_t *
107 xcb_test_get_version_reply (xcb_connection_t               *c  /**< */,
108                             xcb_test_get_version_cookie_t   cookie  /**< */,
109                             xcb_generic_error_t           **e  /**< */)
110 {
111     return (xcb_test_get_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
112 }
113 
114 
115 /*****************************************************************************
116  **
117  ** xcb_test_compare_cursor_cookie_t xcb_test_compare_cursor
118  **
119  ** @param xcb_connection_t *c
120  ** @param xcb_window_t      window
121  ** @param xcb_cursor_t      cursor
122  ** @returns xcb_test_compare_cursor_cookie_t
123  **
124  *****************************************************************************/
125 
126 xcb_test_compare_cursor_cookie_t
127 xcb_test_compare_cursor (xcb_connection_t *c  /**< */,
128                          xcb_window_t      window  /**< */,
129                          xcb_cursor_t      cursor  /**< */)
130 {
131     static const xcb_protocol_request_t xcb_req = {
132         /* count */ 2,
133         /* ext */ &xcb_test_id,
134         /* opcode */ XCB_TEST_COMPARE_CURSOR,
135         /* isvoid */ 0
136     };
137 
138     struct iovec xcb_parts[4];
139     xcb_test_compare_cursor_cookie_t xcb_ret;
140     xcb_test_compare_cursor_request_t xcb_out;
141 
142     xcb_out.window = window;
143     xcb_out.cursor = cursor;
144 
145     xcb_parts[2].iov_base = (char *) &xcb_out;
146     xcb_parts[2].iov_len = sizeof(xcb_out);
147     xcb_parts[3].iov_base = 0;
148     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
149     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
150     return xcb_ret;
151 }
152 
153 
154 /*****************************************************************************
155  **
156  ** xcb_test_compare_cursor_cookie_t xcb_test_compare_cursor_unchecked
157  **
158  ** @param xcb_connection_t *c
159  ** @param xcb_window_t      window
160  ** @param xcb_cursor_t      cursor
161  ** @returns xcb_test_compare_cursor_cookie_t
162  **
163  *****************************************************************************/
164 
165 xcb_test_compare_cursor_cookie_t
166 xcb_test_compare_cursor_unchecked (xcb_connection_t *c  /**< */,
167                                    xcb_window_t      window  /**< */,
168                                    xcb_cursor_t      cursor  /**< */)
169 {
170     static const xcb_protocol_request_t xcb_req = {
171         /* count */ 2,
172         /* ext */ &xcb_test_id,
173         /* opcode */ XCB_TEST_COMPARE_CURSOR,
174         /* isvoid */ 0
175     };
176 
177     struct iovec xcb_parts[4];
178     xcb_test_compare_cursor_cookie_t xcb_ret;
179     xcb_test_compare_cursor_request_t xcb_out;
180 
181     xcb_out.window = window;
182     xcb_out.cursor = cursor;
183 
184     xcb_parts[2].iov_base = (char *) &xcb_out;
185     xcb_parts[2].iov_len = sizeof(xcb_out);
186     xcb_parts[3].iov_base = 0;
187     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
188     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
189     return xcb_ret;
190 }
191 
192 
193 /*****************************************************************************
194  **
195  ** xcb_test_compare_cursor_reply_t * xcb_test_compare_cursor_reply
196  **
197  ** @param xcb_connection_t                  *c
198  ** @param xcb_test_compare_cursor_cookie_t   cookie
199  ** @param xcb_generic_error_t              **e
200  ** @returns xcb_test_compare_cursor_reply_t *
201  **
202  *****************************************************************************/
203 
204 xcb_test_compare_cursor_reply_t *
205 xcb_test_compare_cursor_reply (xcb_connection_t                  *c  /**< */,
206                                xcb_test_compare_cursor_cookie_t   cookie  /**< */,
207                                xcb_generic_error_t              **e  /**< */)
208 {
209     return (xcb_test_compare_cursor_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
210 }
211 
212 
213 /*****************************************************************************
214  **
215  ** xcb_void_cookie_t xcb_test_fake_input_checked
216  **
217  ** @param xcb_connection_t *c
218  ** @param uint8_t           type
219  ** @param uint8_t           detail
220  ** @param uint32_t          time
221  ** @param xcb_window_t      root
222  ** @param uint16_t          rootX
223  ** @param uint16_t          rootY
224  ** @param uint8_t           deviceid
225  ** @returns xcb_void_cookie_t
226  **
227  *****************************************************************************/
228 
229 xcb_void_cookie_t
230 xcb_test_fake_input_checked (xcb_connection_t *c  /**< */,
231                              uint8_t           type  /**< */,
232                              uint8_t           detail  /**< */,
233                              uint32_t          time  /**< */,
234                              xcb_window_t      root  /**< */,
235                              uint16_t          rootX  /**< */,
236                              uint16_t          rootY  /**< */,
237                              uint8_t           deviceid  /**< */)
238 {
239     static const xcb_protocol_request_t xcb_req = {
240         /* count */ 2,
241         /* ext */ &xcb_test_id,
242         /* opcode */ XCB_TEST_FAKE_INPUT,
243         /* isvoid */ 1
244     };
245 
246     struct iovec xcb_parts[4];
247     xcb_void_cookie_t xcb_ret;
248     xcb_test_fake_input_request_t xcb_out;
249 
250     xcb_out.type = type;
251     xcb_out.detail = detail;
252     memset(xcb_out.pad0, 0, 2);
253     xcb_out.time = time;
254     xcb_out.root = root;
255     memset(xcb_out.pad1, 0, 8);
256     xcb_out.rootX = rootX;
257     xcb_out.rootY = rootY;
258     memset(xcb_out.pad2, 0, 7);
259     xcb_out.deviceid = deviceid;
260 
261     xcb_parts[2].iov_base = (char *) &xcb_out;
262     xcb_parts[2].iov_len = sizeof(xcb_out);
263     xcb_parts[3].iov_base = 0;
264     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
265     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
266     return xcb_ret;
267 }
268 
269 
270 /*****************************************************************************
271  **
272  ** xcb_void_cookie_t xcb_test_fake_input
273  **
274  ** @param xcb_connection_t *c
275  ** @param uint8_t           type
276  ** @param uint8_t           detail
277  ** @param uint32_t          time
278  ** @param xcb_window_t      root
279  ** @param uint16_t          rootX
280  ** @param uint16_t          rootY
281  ** @param uint8_t           deviceid
282  ** @returns xcb_void_cookie_t
283  **
284  *****************************************************************************/
285 
286 xcb_void_cookie_t
287 xcb_test_fake_input (xcb_connection_t *c  /**< */,
288                      uint8_t           type  /**< */,
289                      uint8_t           detail  /**< */,
290                      uint32_t          time  /**< */,
291                      xcb_window_t      root  /**< */,
292                      uint16_t          rootX  /**< */,
293                      uint16_t          rootY  /**< */,
294                      uint8_t           deviceid  /**< */)
295 {
296     static const xcb_protocol_request_t xcb_req = {
297         /* count */ 2,
298         /* ext */ &xcb_test_id,
299         /* opcode */ XCB_TEST_FAKE_INPUT,
300         /* isvoid */ 1
301     };
302 
303     struct iovec xcb_parts[4];
304     xcb_void_cookie_t xcb_ret;
305     xcb_test_fake_input_request_t xcb_out;
306 
307     xcb_out.type = type;
308     xcb_out.detail = detail;
309     memset(xcb_out.pad0, 0, 2);
310     xcb_out.time = time;
311     xcb_out.root = root;
312     memset(xcb_out.pad1, 0, 8);
313     xcb_out.rootX = rootX;
314     xcb_out.rootY = rootY;
315     memset(xcb_out.pad2, 0, 7);
316     xcb_out.deviceid = deviceid;
317 
318     xcb_parts[2].iov_base = (char *) &xcb_out;
319     xcb_parts[2].iov_len = sizeof(xcb_out);
320     xcb_parts[3].iov_base = 0;
321     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
322     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
323     return xcb_ret;
324 }
325 
326 
327 /*****************************************************************************
328  **
329  ** xcb_void_cookie_t xcb_test_grab_control_checked
330  **
331  ** @param xcb_connection_t *c
332  ** @param uint8_t           impervious
333  ** @returns xcb_void_cookie_t
334  **
335  *****************************************************************************/
336 
337 xcb_void_cookie_t
338 xcb_test_grab_control_checked (xcb_connection_t *c  /**< */,
339                                uint8_t           impervious  /**< */)
340 {
341     static const xcb_protocol_request_t xcb_req = {
342         /* count */ 2,
343         /* ext */ &xcb_test_id,
344         /* opcode */ XCB_TEST_GRAB_CONTROL,
345         /* isvoid */ 1
346     };
347 
348     struct iovec xcb_parts[4];
349     xcb_void_cookie_t xcb_ret;
350     xcb_test_grab_control_request_t xcb_out;
351 
352     xcb_out.impervious = impervious;
353     memset(xcb_out.pad0, 0, 3);
354 
355     xcb_parts[2].iov_base = (char *) &xcb_out;
356     xcb_parts[2].iov_len = sizeof(xcb_out);
357     xcb_parts[3].iov_base = 0;
358     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
359     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
360     return xcb_ret;
361 }
362 
363 
364 /*****************************************************************************
365  **
366  ** xcb_void_cookie_t xcb_test_grab_control
367  **
368  ** @param xcb_connection_t *c
369  ** @param uint8_t           impervious
370  ** @returns xcb_void_cookie_t
371  **
372  *****************************************************************************/
373 
374 xcb_void_cookie_t
375 xcb_test_grab_control (xcb_connection_t *c  /**< */,
376                        uint8_t           impervious  /**< */)
377 {
378     static const xcb_protocol_request_t xcb_req = {
379         /* count */ 2,
380         /* ext */ &xcb_test_id,
381         /* opcode */ XCB_TEST_GRAB_CONTROL,
382         /* isvoid */ 1
383     };
384 
385     struct iovec xcb_parts[4];
386     xcb_void_cookie_t xcb_ret;
387     xcb_test_grab_control_request_t xcb_out;
388 
389     xcb_out.impervious = impervious;
390     memset(xcb_out.pad0, 0, 3);
391 
392     xcb_parts[2].iov_base = (char *) &xcb_out;
393     xcb_parts[2].iov_len = sizeof(xcb_out);
394     xcb_parts[3].iov_base = 0;
395     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
396     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
397     return xcb_ret;
398 }
399 
400