xref: /netbsd-src/external/mit/xorg/lib/libxcb/files/screensaver.c (revision 413d532bcc3f62d122e56d92e13ac64825a40baf)
1 /*
2  * This file generated automatically from screensaver.xml by c_client.py.
3  * Edit at your peril.
4  */
5 
6 #ifdef HAVE_CONFIG_H
7 #include "config.h"
8 #endif
9 #include <stdlib.h>
10 #include <string.h>
11 #include <assert.h>
12 #include <stddef.h>  /* for offsetof() */
13 #include "xcbext.h"
14 #include "screensaver.h"
15 
16 #define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member)
17 #include "xproto.h"
18 
19 xcb_extension_t xcb_screensaver_id = { "MIT-SCREEN-SAVER", 0 };
20 
21 
22 /*****************************************************************************
23  **
24  ** xcb_screensaver_query_version_cookie_t xcb_screensaver_query_version
25  **
26  ** @param xcb_connection_t *c
27  ** @param uint8_t           client_major_version
28  ** @param uint8_t           client_minor_version
29  ** @returns xcb_screensaver_query_version_cookie_t
30  **
31  *****************************************************************************/
32 
33 xcb_screensaver_query_version_cookie_t
34 xcb_screensaver_query_version (xcb_connection_t *c  /**< */,
35                                uint8_t           client_major_version  /**< */,
36                                uint8_t           client_minor_version  /**< */)
37 {
38     static const xcb_protocol_request_t xcb_req = {
39         /* count */ 2,
40         /* ext */ &xcb_screensaver_id,
41         /* opcode */ XCB_SCREENSAVER_QUERY_VERSION,
42         /* isvoid */ 0
43     };
44 
45     struct iovec xcb_parts[4];
46     xcb_screensaver_query_version_cookie_t xcb_ret;
47     xcb_screensaver_query_version_request_t xcb_out;
48 
49     xcb_out.client_major_version = client_major_version;
50     xcb_out.client_minor_version = client_minor_version;
51     memset(xcb_out.pad0, 0, 2);
52 
53     xcb_parts[2].iov_base = (char *) &xcb_out;
54     xcb_parts[2].iov_len = sizeof(xcb_out);
55     xcb_parts[3].iov_base = 0;
56     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
57 
58     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
59     return xcb_ret;
60 }
61 
62 
63 /*****************************************************************************
64  **
65  ** xcb_screensaver_query_version_cookie_t xcb_screensaver_query_version_unchecked
66  **
67  ** @param xcb_connection_t *c
68  ** @param uint8_t           client_major_version
69  ** @param uint8_t           client_minor_version
70  ** @returns xcb_screensaver_query_version_cookie_t
71  **
72  *****************************************************************************/
73 
74 xcb_screensaver_query_version_cookie_t
75 xcb_screensaver_query_version_unchecked (xcb_connection_t *c  /**< */,
76                                          uint8_t           client_major_version  /**< */,
77                                          uint8_t           client_minor_version  /**< */)
78 {
79     static const xcb_protocol_request_t xcb_req = {
80         /* count */ 2,
81         /* ext */ &xcb_screensaver_id,
82         /* opcode */ XCB_SCREENSAVER_QUERY_VERSION,
83         /* isvoid */ 0
84     };
85 
86     struct iovec xcb_parts[4];
87     xcb_screensaver_query_version_cookie_t xcb_ret;
88     xcb_screensaver_query_version_request_t xcb_out;
89 
90     xcb_out.client_major_version = client_major_version;
91     xcb_out.client_minor_version = client_minor_version;
92     memset(xcb_out.pad0, 0, 2);
93 
94     xcb_parts[2].iov_base = (char *) &xcb_out;
95     xcb_parts[2].iov_len = sizeof(xcb_out);
96     xcb_parts[3].iov_base = 0;
97     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
98 
99     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
100     return xcb_ret;
101 }
102 
103 
104 /*****************************************************************************
105  **
106  ** xcb_screensaver_query_version_reply_t * xcb_screensaver_query_version_reply
107  **
108  ** @param xcb_connection_t                        *c
109  ** @param xcb_screensaver_query_version_cookie_t   cookie
110  ** @param xcb_generic_error_t                    **e
111  ** @returns xcb_screensaver_query_version_reply_t *
112  **
113  *****************************************************************************/
114 
115 xcb_screensaver_query_version_reply_t *
116 xcb_screensaver_query_version_reply (xcb_connection_t                        *c  /**< */,
117                                      xcb_screensaver_query_version_cookie_t   cookie  /**< */,
118                                      xcb_generic_error_t                    **e  /**< */)
119 {
120     return (xcb_screensaver_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
121 }
122 
123 
124 /*****************************************************************************
125  **
126  ** xcb_screensaver_query_info_cookie_t xcb_screensaver_query_info
127  **
128  ** @param xcb_connection_t *c
129  ** @param xcb_drawable_t    drawable
130  ** @returns xcb_screensaver_query_info_cookie_t
131  **
132  *****************************************************************************/
133 
134 xcb_screensaver_query_info_cookie_t
135 xcb_screensaver_query_info (xcb_connection_t *c  /**< */,
136                             xcb_drawable_t    drawable  /**< */)
137 {
138     static const xcb_protocol_request_t xcb_req = {
139         /* count */ 2,
140         /* ext */ &xcb_screensaver_id,
141         /* opcode */ XCB_SCREENSAVER_QUERY_INFO,
142         /* isvoid */ 0
143     };
144 
145     struct iovec xcb_parts[4];
146     xcb_screensaver_query_info_cookie_t xcb_ret;
147     xcb_screensaver_query_info_request_t xcb_out;
148 
149     xcb_out.drawable = drawable;
150 
151     xcb_parts[2].iov_base = (char *) &xcb_out;
152     xcb_parts[2].iov_len = sizeof(xcb_out);
153     xcb_parts[3].iov_base = 0;
154     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
155 
156     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
157     return xcb_ret;
158 }
159 
160 
161 /*****************************************************************************
162  **
163  ** xcb_screensaver_query_info_cookie_t xcb_screensaver_query_info_unchecked
164  **
165  ** @param xcb_connection_t *c
166  ** @param xcb_drawable_t    drawable
167  ** @returns xcb_screensaver_query_info_cookie_t
168  **
169  *****************************************************************************/
170 
171 xcb_screensaver_query_info_cookie_t
172 xcb_screensaver_query_info_unchecked (xcb_connection_t *c  /**< */,
173                                       xcb_drawable_t    drawable  /**< */)
174 {
175     static const xcb_protocol_request_t xcb_req = {
176         /* count */ 2,
177         /* ext */ &xcb_screensaver_id,
178         /* opcode */ XCB_SCREENSAVER_QUERY_INFO,
179         /* isvoid */ 0
180     };
181 
182     struct iovec xcb_parts[4];
183     xcb_screensaver_query_info_cookie_t xcb_ret;
184     xcb_screensaver_query_info_request_t xcb_out;
185 
186     xcb_out.drawable = drawable;
187 
188     xcb_parts[2].iov_base = (char *) &xcb_out;
189     xcb_parts[2].iov_len = sizeof(xcb_out);
190     xcb_parts[3].iov_base = 0;
191     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
192 
193     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
194     return xcb_ret;
195 }
196 
197 
198 /*****************************************************************************
199  **
200  ** xcb_screensaver_query_info_reply_t * xcb_screensaver_query_info_reply
201  **
202  ** @param xcb_connection_t                     *c
203  ** @param xcb_screensaver_query_info_cookie_t   cookie
204  ** @param xcb_generic_error_t                 **e
205  ** @returns xcb_screensaver_query_info_reply_t *
206  **
207  *****************************************************************************/
208 
209 xcb_screensaver_query_info_reply_t *
210 xcb_screensaver_query_info_reply (xcb_connection_t                     *c  /**< */,
211                                   xcb_screensaver_query_info_cookie_t   cookie  /**< */,
212                                   xcb_generic_error_t                 **e  /**< */)
213 {
214     return (xcb_screensaver_query_info_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
215 }
216 
217 
218 /*****************************************************************************
219  **
220  ** xcb_void_cookie_t xcb_screensaver_select_input_checked
221  **
222  ** @param xcb_connection_t *c
223  ** @param xcb_drawable_t    drawable
224  ** @param uint32_t          event_mask
225  ** @returns xcb_void_cookie_t
226  **
227  *****************************************************************************/
228 
229 xcb_void_cookie_t
230 xcb_screensaver_select_input_checked (xcb_connection_t *c  /**< */,
231                                       xcb_drawable_t    drawable  /**< */,
232                                       uint32_t          event_mask  /**< */)
233 {
234     static const xcb_protocol_request_t xcb_req = {
235         /* count */ 2,
236         /* ext */ &xcb_screensaver_id,
237         /* opcode */ XCB_SCREENSAVER_SELECT_INPUT,
238         /* isvoid */ 1
239     };
240 
241     struct iovec xcb_parts[4];
242     xcb_void_cookie_t xcb_ret;
243     xcb_screensaver_select_input_request_t xcb_out;
244 
245     xcb_out.drawable = drawable;
246     xcb_out.event_mask = event_mask;
247 
248     xcb_parts[2].iov_base = (char *) &xcb_out;
249     xcb_parts[2].iov_len = sizeof(xcb_out);
250     xcb_parts[3].iov_base = 0;
251     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
252 
253     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
254     return xcb_ret;
255 }
256 
257 
258 /*****************************************************************************
259  **
260  ** xcb_void_cookie_t xcb_screensaver_select_input
261  **
262  ** @param xcb_connection_t *c
263  ** @param xcb_drawable_t    drawable
264  ** @param uint32_t          event_mask
265  ** @returns xcb_void_cookie_t
266  **
267  *****************************************************************************/
268 
269 xcb_void_cookie_t
270 xcb_screensaver_select_input (xcb_connection_t *c  /**< */,
271                               xcb_drawable_t    drawable  /**< */,
272                               uint32_t          event_mask  /**< */)
273 {
274     static const xcb_protocol_request_t xcb_req = {
275         /* count */ 2,
276         /* ext */ &xcb_screensaver_id,
277         /* opcode */ XCB_SCREENSAVER_SELECT_INPUT,
278         /* isvoid */ 1
279     };
280 
281     struct iovec xcb_parts[4];
282     xcb_void_cookie_t xcb_ret;
283     xcb_screensaver_select_input_request_t xcb_out;
284 
285     xcb_out.drawable = drawable;
286     xcb_out.event_mask = event_mask;
287 
288     xcb_parts[2].iov_base = (char *) &xcb_out;
289     xcb_parts[2].iov_len = sizeof(xcb_out);
290     xcb_parts[3].iov_base = 0;
291     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
292 
293     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
294     return xcb_ret;
295 }
296 
297 int
298 xcb_screensaver_set_attributes_sizeof (const void  *_buffer  /**< */)
299 {
300     char *xcb_tmp = (char *)_buffer;
301     const xcb_screensaver_set_attributes_request_t *_aux = (xcb_screensaver_set_attributes_request_t *)_buffer;
302     unsigned int xcb_buffer_len = 0;
303     unsigned int xcb_block_len = 0;
304     unsigned int xcb_pad = 0;
305     unsigned int xcb_align_to = 0;
306 
307 
308     xcb_block_len += sizeof(xcb_screensaver_set_attributes_request_t);
309     xcb_tmp += xcb_block_len;
310     xcb_buffer_len += xcb_block_len;
311     xcb_block_len = 0;
312     /* value_list */
313     xcb_block_len += xcb_popcount(_aux->value_mask) * sizeof(uint32_t);
314     xcb_tmp += xcb_block_len;
315     xcb_align_to = ALIGNOF(uint32_t);
316     /* insert padding */
317     xcb_pad = -xcb_block_len & (xcb_align_to - 1);
318     xcb_buffer_len += xcb_block_len + xcb_pad;
319     if (0 != xcb_pad) {
320         xcb_tmp += xcb_pad;
321         xcb_pad = 0;
322     }
323     xcb_block_len = 0;
324 
325     return xcb_buffer_len;
326 }
327 
328 
329 /*****************************************************************************
330  **
331  ** xcb_void_cookie_t xcb_screensaver_set_attributes_checked
332  **
333  ** @param xcb_connection_t *c
334  ** @param xcb_drawable_t    drawable
335  ** @param int16_t           x
336  ** @param int16_t           y
337  ** @param uint16_t          width
338  ** @param uint16_t          height
339  ** @param uint16_t          border_width
340  ** @param uint8_t           _class
341  ** @param uint8_t           depth
342  ** @param xcb_visualid_t    visual
343  ** @param uint32_t          value_mask
344  ** @param const uint32_t   *value_list
345  ** @returns xcb_void_cookie_t
346  **
347  *****************************************************************************/
348 
349 xcb_void_cookie_t
350 xcb_screensaver_set_attributes_checked (xcb_connection_t *c  /**< */,
351                                         xcb_drawable_t    drawable  /**< */,
352                                         int16_t           x  /**< */,
353                                         int16_t           y  /**< */,
354                                         uint16_t          width  /**< */,
355                                         uint16_t          height  /**< */,
356                                         uint16_t          border_width  /**< */,
357                                         uint8_t           _class  /**< */,
358                                         uint8_t           depth  /**< */,
359                                         xcb_visualid_t    visual  /**< */,
360                                         uint32_t          value_mask  /**< */,
361                                         const uint32_t   *value_list  /**< */)
362 {
363     static const xcb_protocol_request_t xcb_req = {
364         /* count */ 4,
365         /* ext */ &xcb_screensaver_id,
366         /* opcode */ XCB_SCREENSAVER_SET_ATTRIBUTES,
367         /* isvoid */ 1
368     };
369 
370     struct iovec xcb_parts[6];
371     xcb_void_cookie_t xcb_ret;
372     xcb_screensaver_set_attributes_request_t xcb_out;
373 
374     xcb_out.drawable = drawable;
375     xcb_out.x = x;
376     xcb_out.y = y;
377     xcb_out.width = width;
378     xcb_out.height = height;
379     xcb_out.border_width = border_width;
380     xcb_out._class = _class;
381     xcb_out.depth = depth;
382     xcb_out.visual = visual;
383     xcb_out.value_mask = value_mask;
384 
385     xcb_parts[2].iov_base = (char *) &xcb_out;
386     xcb_parts[2].iov_len = sizeof(xcb_out);
387     xcb_parts[3].iov_base = 0;
388     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
389     /* uint32_t value_list */
390     xcb_parts[4].iov_base = (char *) value_list;
391     xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t);
392     xcb_parts[5].iov_base = 0;
393     xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
394 
395     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
396     return xcb_ret;
397 }
398 
399 
400 /*****************************************************************************
401  **
402  ** xcb_void_cookie_t xcb_screensaver_set_attributes
403  **
404  ** @param xcb_connection_t *c
405  ** @param xcb_drawable_t    drawable
406  ** @param int16_t           x
407  ** @param int16_t           y
408  ** @param uint16_t          width
409  ** @param uint16_t          height
410  ** @param uint16_t          border_width
411  ** @param uint8_t           _class
412  ** @param uint8_t           depth
413  ** @param xcb_visualid_t    visual
414  ** @param uint32_t          value_mask
415  ** @param const uint32_t   *value_list
416  ** @returns xcb_void_cookie_t
417  **
418  *****************************************************************************/
419 
420 xcb_void_cookie_t
421 xcb_screensaver_set_attributes (xcb_connection_t *c  /**< */,
422                                 xcb_drawable_t    drawable  /**< */,
423                                 int16_t           x  /**< */,
424                                 int16_t           y  /**< */,
425                                 uint16_t          width  /**< */,
426                                 uint16_t          height  /**< */,
427                                 uint16_t          border_width  /**< */,
428                                 uint8_t           _class  /**< */,
429                                 uint8_t           depth  /**< */,
430                                 xcb_visualid_t    visual  /**< */,
431                                 uint32_t          value_mask  /**< */,
432                                 const uint32_t   *value_list  /**< */)
433 {
434     static const xcb_protocol_request_t xcb_req = {
435         /* count */ 4,
436         /* ext */ &xcb_screensaver_id,
437         /* opcode */ XCB_SCREENSAVER_SET_ATTRIBUTES,
438         /* isvoid */ 1
439     };
440 
441     struct iovec xcb_parts[6];
442     xcb_void_cookie_t xcb_ret;
443     xcb_screensaver_set_attributes_request_t xcb_out;
444 
445     xcb_out.drawable = drawable;
446     xcb_out.x = x;
447     xcb_out.y = y;
448     xcb_out.width = width;
449     xcb_out.height = height;
450     xcb_out.border_width = border_width;
451     xcb_out._class = _class;
452     xcb_out.depth = depth;
453     xcb_out.visual = visual;
454     xcb_out.value_mask = value_mask;
455 
456     xcb_parts[2].iov_base = (char *) &xcb_out;
457     xcb_parts[2].iov_len = sizeof(xcb_out);
458     xcb_parts[3].iov_base = 0;
459     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
460     /* uint32_t value_list */
461     xcb_parts[4].iov_base = (char *) value_list;
462     xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t);
463     xcb_parts[5].iov_base = 0;
464     xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
465 
466     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
467     return xcb_ret;
468 }
469 
470 
471 /*****************************************************************************
472  **
473  ** xcb_void_cookie_t xcb_screensaver_unset_attributes_checked
474  **
475  ** @param xcb_connection_t *c
476  ** @param xcb_drawable_t    drawable
477  ** @returns xcb_void_cookie_t
478  **
479  *****************************************************************************/
480 
481 xcb_void_cookie_t
482 xcb_screensaver_unset_attributes_checked (xcb_connection_t *c  /**< */,
483                                           xcb_drawable_t    drawable  /**< */)
484 {
485     static const xcb_protocol_request_t xcb_req = {
486         /* count */ 2,
487         /* ext */ &xcb_screensaver_id,
488         /* opcode */ XCB_SCREENSAVER_UNSET_ATTRIBUTES,
489         /* isvoid */ 1
490     };
491 
492     struct iovec xcb_parts[4];
493     xcb_void_cookie_t xcb_ret;
494     xcb_screensaver_unset_attributes_request_t xcb_out;
495 
496     xcb_out.drawable = drawable;
497 
498     xcb_parts[2].iov_base = (char *) &xcb_out;
499     xcb_parts[2].iov_len = sizeof(xcb_out);
500     xcb_parts[3].iov_base = 0;
501     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
502 
503     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
504     return xcb_ret;
505 }
506 
507 
508 /*****************************************************************************
509  **
510  ** xcb_void_cookie_t xcb_screensaver_unset_attributes
511  **
512  ** @param xcb_connection_t *c
513  ** @param xcb_drawable_t    drawable
514  ** @returns xcb_void_cookie_t
515  **
516  *****************************************************************************/
517 
518 xcb_void_cookie_t
519 xcb_screensaver_unset_attributes (xcb_connection_t *c  /**< */,
520                                   xcb_drawable_t    drawable  /**< */)
521 {
522     static const xcb_protocol_request_t xcb_req = {
523         /* count */ 2,
524         /* ext */ &xcb_screensaver_id,
525         /* opcode */ XCB_SCREENSAVER_UNSET_ATTRIBUTES,
526         /* isvoid */ 1
527     };
528 
529     struct iovec xcb_parts[4];
530     xcb_void_cookie_t xcb_ret;
531     xcb_screensaver_unset_attributes_request_t xcb_out;
532 
533     xcb_out.drawable = drawable;
534 
535     xcb_parts[2].iov_base = (char *) &xcb_out;
536     xcb_parts[2].iov_len = sizeof(xcb_out);
537     xcb_parts[3].iov_base = 0;
538     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
539 
540     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
541     return xcb_ret;
542 }
543 
544 
545 /*****************************************************************************
546  **
547  ** xcb_void_cookie_t xcb_screensaver_suspend_checked
548  **
549  ** @param xcb_connection_t *c
550  ** @param uint8_t           suspend
551  ** @returns xcb_void_cookie_t
552  **
553  *****************************************************************************/
554 
555 xcb_void_cookie_t
556 xcb_screensaver_suspend_checked (xcb_connection_t *c  /**< */,
557                                  uint8_t           suspend  /**< */)
558 {
559     static const xcb_protocol_request_t xcb_req = {
560         /* count */ 2,
561         /* ext */ &xcb_screensaver_id,
562         /* opcode */ XCB_SCREENSAVER_SUSPEND,
563         /* isvoid */ 1
564     };
565 
566     struct iovec xcb_parts[4];
567     xcb_void_cookie_t xcb_ret;
568     xcb_screensaver_suspend_request_t xcb_out;
569 
570     xcb_out.suspend = suspend;
571     memset(xcb_out.pad0, 0, 3);
572 
573     xcb_parts[2].iov_base = (char *) &xcb_out;
574     xcb_parts[2].iov_len = sizeof(xcb_out);
575     xcb_parts[3].iov_base = 0;
576     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
577 
578     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
579     return xcb_ret;
580 }
581 
582 
583 /*****************************************************************************
584  **
585  ** xcb_void_cookie_t xcb_screensaver_suspend
586  **
587  ** @param xcb_connection_t *c
588  ** @param uint8_t           suspend
589  ** @returns xcb_void_cookie_t
590  **
591  *****************************************************************************/
592 
593 xcb_void_cookie_t
594 xcb_screensaver_suspend (xcb_connection_t *c  /**< */,
595                          uint8_t           suspend  /**< */)
596 {
597     static const xcb_protocol_request_t xcb_req = {
598         /* count */ 2,
599         /* ext */ &xcb_screensaver_id,
600         /* opcode */ XCB_SCREENSAVER_SUSPEND,
601         /* isvoid */ 1
602     };
603 
604     struct iovec xcb_parts[4];
605     xcb_void_cookie_t xcb_ret;
606     xcb_screensaver_suspend_request_t xcb_out;
607 
608     xcb_out.suspend = suspend;
609     memset(xcb_out.pad0, 0, 3);
610 
611     xcb_parts[2].iov_base = (char *) &xcb_out;
612     xcb_parts[2].iov_len = sizeof(xcb_out);
613     xcb_parts[3].iov_base = 0;
614     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
615 
616     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
617     return xcb_ret;
618 }
619 
620