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 xcb_screensaver_query_version_cookie_t
xcb_screensaver_query_version(xcb_connection_t * c,uint8_t client_major_version,uint8_t client_minor_version)22 xcb_screensaver_query_version (xcb_connection_t *c /**< */,
23 uint8_t client_major_version /**< */,
24 uint8_t client_minor_version /**< */)
25 {
26 static const xcb_protocol_request_t xcb_req = {
27 /* count */ 2,
28 /* ext */ &xcb_screensaver_id,
29 /* opcode */ XCB_SCREENSAVER_QUERY_VERSION,
30 /* isvoid */ 0
31 };
32
33 struct iovec xcb_parts[4];
34 xcb_screensaver_query_version_cookie_t xcb_ret;
35 xcb_screensaver_query_version_request_t xcb_out;
36
37 xcb_out.client_major_version = client_major_version;
38 xcb_out.client_minor_version = client_minor_version;
39 memset(xcb_out.pad0, 0, 2);
40
41 xcb_parts[2].iov_base = (char *) &xcb_out;
42 xcb_parts[2].iov_len = sizeof(xcb_out);
43 xcb_parts[3].iov_base = 0;
44 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
45
46 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
47 return xcb_ret;
48 }
49
50 xcb_screensaver_query_version_cookie_t
xcb_screensaver_query_version_unchecked(xcb_connection_t * c,uint8_t client_major_version,uint8_t client_minor_version)51 xcb_screensaver_query_version_unchecked (xcb_connection_t *c /**< */,
52 uint8_t client_major_version /**< */,
53 uint8_t client_minor_version /**< */)
54 {
55 static const xcb_protocol_request_t xcb_req = {
56 /* count */ 2,
57 /* ext */ &xcb_screensaver_id,
58 /* opcode */ XCB_SCREENSAVER_QUERY_VERSION,
59 /* isvoid */ 0
60 };
61
62 struct iovec xcb_parts[4];
63 xcb_screensaver_query_version_cookie_t xcb_ret;
64 xcb_screensaver_query_version_request_t xcb_out;
65
66 xcb_out.client_major_version = client_major_version;
67 xcb_out.client_minor_version = client_minor_version;
68 memset(xcb_out.pad0, 0, 2);
69
70 xcb_parts[2].iov_base = (char *) &xcb_out;
71 xcb_parts[2].iov_len = sizeof(xcb_out);
72 xcb_parts[3].iov_base = 0;
73 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
74
75 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
76 return xcb_ret;
77 }
78
79 xcb_screensaver_query_version_reply_t *
xcb_screensaver_query_version_reply(xcb_connection_t * c,xcb_screensaver_query_version_cookie_t cookie,xcb_generic_error_t ** e)80 xcb_screensaver_query_version_reply (xcb_connection_t *c /**< */,
81 xcb_screensaver_query_version_cookie_t cookie /**< */,
82 xcb_generic_error_t **e /**< */)
83 {
84 return (xcb_screensaver_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
85 }
86
87 xcb_screensaver_query_info_cookie_t
xcb_screensaver_query_info(xcb_connection_t * c,xcb_drawable_t drawable)88 xcb_screensaver_query_info (xcb_connection_t *c /**< */,
89 xcb_drawable_t drawable /**< */)
90 {
91 static const xcb_protocol_request_t xcb_req = {
92 /* count */ 2,
93 /* ext */ &xcb_screensaver_id,
94 /* opcode */ XCB_SCREENSAVER_QUERY_INFO,
95 /* isvoid */ 0
96 };
97
98 struct iovec xcb_parts[4];
99 xcb_screensaver_query_info_cookie_t xcb_ret;
100 xcb_screensaver_query_info_request_t xcb_out;
101
102 xcb_out.drawable = drawable;
103
104 xcb_parts[2].iov_base = (char *) &xcb_out;
105 xcb_parts[2].iov_len = sizeof(xcb_out);
106 xcb_parts[3].iov_base = 0;
107 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
108
109 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
110 return xcb_ret;
111 }
112
113 xcb_screensaver_query_info_cookie_t
xcb_screensaver_query_info_unchecked(xcb_connection_t * c,xcb_drawable_t drawable)114 xcb_screensaver_query_info_unchecked (xcb_connection_t *c /**< */,
115 xcb_drawable_t drawable /**< */)
116 {
117 static const xcb_protocol_request_t xcb_req = {
118 /* count */ 2,
119 /* ext */ &xcb_screensaver_id,
120 /* opcode */ XCB_SCREENSAVER_QUERY_INFO,
121 /* isvoid */ 0
122 };
123
124 struct iovec xcb_parts[4];
125 xcb_screensaver_query_info_cookie_t xcb_ret;
126 xcb_screensaver_query_info_request_t xcb_out;
127
128 xcb_out.drawable = drawable;
129
130 xcb_parts[2].iov_base = (char *) &xcb_out;
131 xcb_parts[2].iov_len = sizeof(xcb_out);
132 xcb_parts[3].iov_base = 0;
133 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
134
135 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
136 return xcb_ret;
137 }
138
139 xcb_screensaver_query_info_reply_t *
xcb_screensaver_query_info_reply(xcb_connection_t * c,xcb_screensaver_query_info_cookie_t cookie,xcb_generic_error_t ** e)140 xcb_screensaver_query_info_reply (xcb_connection_t *c /**< */,
141 xcb_screensaver_query_info_cookie_t cookie /**< */,
142 xcb_generic_error_t **e /**< */)
143 {
144 return (xcb_screensaver_query_info_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
145 }
146
147 xcb_void_cookie_t
xcb_screensaver_select_input_checked(xcb_connection_t * c,xcb_drawable_t drawable,uint32_t event_mask)148 xcb_screensaver_select_input_checked (xcb_connection_t *c /**< */,
149 xcb_drawable_t drawable /**< */,
150 uint32_t event_mask /**< */)
151 {
152 static const xcb_protocol_request_t xcb_req = {
153 /* count */ 2,
154 /* ext */ &xcb_screensaver_id,
155 /* opcode */ XCB_SCREENSAVER_SELECT_INPUT,
156 /* isvoid */ 1
157 };
158
159 struct iovec xcb_parts[4];
160 xcb_void_cookie_t xcb_ret;
161 xcb_screensaver_select_input_request_t xcb_out;
162
163 xcb_out.drawable = drawable;
164 xcb_out.event_mask = event_mask;
165
166 xcb_parts[2].iov_base = (char *) &xcb_out;
167 xcb_parts[2].iov_len = sizeof(xcb_out);
168 xcb_parts[3].iov_base = 0;
169 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
170
171 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
172 return xcb_ret;
173 }
174
175 xcb_void_cookie_t
xcb_screensaver_select_input(xcb_connection_t * c,xcb_drawable_t drawable,uint32_t event_mask)176 xcb_screensaver_select_input (xcb_connection_t *c /**< */,
177 xcb_drawable_t drawable /**< */,
178 uint32_t event_mask /**< */)
179 {
180 static const xcb_protocol_request_t xcb_req = {
181 /* count */ 2,
182 /* ext */ &xcb_screensaver_id,
183 /* opcode */ XCB_SCREENSAVER_SELECT_INPUT,
184 /* isvoid */ 1
185 };
186
187 struct iovec xcb_parts[4];
188 xcb_void_cookie_t xcb_ret;
189 xcb_screensaver_select_input_request_t xcb_out;
190
191 xcb_out.drawable = drawable;
192 xcb_out.event_mask = event_mask;
193
194 xcb_parts[2].iov_base = (char *) &xcb_out;
195 xcb_parts[2].iov_len = sizeof(xcb_out);
196 xcb_parts[3].iov_base = 0;
197 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
198
199 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
200 return xcb_ret;
201 }
202
203 int
xcb_screensaver_set_attributes_sizeof(const void * _buffer)204 xcb_screensaver_set_attributes_sizeof (const void *_buffer /**< */)
205 {
206 char *xcb_tmp = (char *)_buffer;
207 const xcb_screensaver_set_attributes_request_t *_aux = (xcb_screensaver_set_attributes_request_t *)_buffer;
208 unsigned int xcb_buffer_len = 0;
209 unsigned int xcb_block_len = 0;
210 unsigned int xcb_pad = 0;
211 unsigned int xcb_align_to = 0;
212
213
214 xcb_block_len += sizeof(xcb_screensaver_set_attributes_request_t);
215 xcb_tmp += xcb_block_len;
216 xcb_buffer_len += xcb_block_len;
217 xcb_block_len = 0;
218 /* value_list */
219 xcb_block_len += xcb_popcount(_aux->value_mask) * sizeof(uint32_t);
220 xcb_tmp += xcb_block_len;
221 xcb_align_to = ALIGNOF(uint32_t);
222 /* insert padding */
223 xcb_pad = -xcb_block_len & (xcb_align_to - 1);
224 xcb_buffer_len += xcb_block_len + xcb_pad;
225 if (0 != xcb_pad) {
226 xcb_tmp += xcb_pad;
227 xcb_pad = 0;
228 }
229 xcb_block_len = 0;
230
231 return xcb_buffer_len;
232 }
233
234 xcb_void_cookie_t
xcb_screensaver_set_attributes_checked(xcb_connection_t * c,xcb_drawable_t drawable,int16_t x,int16_t y,uint16_t width,uint16_t height,uint16_t border_width,uint8_t _class,uint8_t depth,xcb_visualid_t visual,uint32_t value_mask,const uint32_t * value_list)235 xcb_screensaver_set_attributes_checked (xcb_connection_t *c /**< */,
236 xcb_drawable_t drawable /**< */,
237 int16_t x /**< */,
238 int16_t y /**< */,
239 uint16_t width /**< */,
240 uint16_t height /**< */,
241 uint16_t border_width /**< */,
242 uint8_t _class /**< */,
243 uint8_t depth /**< */,
244 xcb_visualid_t visual /**< */,
245 uint32_t value_mask /**< */,
246 const uint32_t *value_list /**< */)
247 {
248 static const xcb_protocol_request_t xcb_req = {
249 /* count */ 4,
250 /* ext */ &xcb_screensaver_id,
251 /* opcode */ XCB_SCREENSAVER_SET_ATTRIBUTES,
252 /* isvoid */ 1
253 };
254
255 struct iovec xcb_parts[6];
256 xcb_void_cookie_t xcb_ret;
257 xcb_screensaver_set_attributes_request_t xcb_out;
258
259 xcb_out.drawable = drawable;
260 xcb_out.x = x;
261 xcb_out.y = y;
262 xcb_out.width = width;
263 xcb_out.height = height;
264 xcb_out.border_width = border_width;
265 xcb_out._class = _class;
266 xcb_out.depth = depth;
267 xcb_out.visual = visual;
268 xcb_out.value_mask = value_mask;
269
270 xcb_parts[2].iov_base = (char *) &xcb_out;
271 xcb_parts[2].iov_len = sizeof(xcb_out);
272 xcb_parts[3].iov_base = 0;
273 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
274 /* uint32_t value_list */
275 xcb_parts[4].iov_base = (char *) value_list;
276 xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t);
277 xcb_parts[5].iov_base = 0;
278 xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
279
280 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
281 return xcb_ret;
282 }
283
284 xcb_void_cookie_t
xcb_screensaver_set_attributes(xcb_connection_t * c,xcb_drawable_t drawable,int16_t x,int16_t y,uint16_t width,uint16_t height,uint16_t border_width,uint8_t _class,uint8_t depth,xcb_visualid_t visual,uint32_t value_mask,const uint32_t * value_list)285 xcb_screensaver_set_attributes (xcb_connection_t *c /**< */,
286 xcb_drawable_t drawable /**< */,
287 int16_t x /**< */,
288 int16_t y /**< */,
289 uint16_t width /**< */,
290 uint16_t height /**< */,
291 uint16_t border_width /**< */,
292 uint8_t _class /**< */,
293 uint8_t depth /**< */,
294 xcb_visualid_t visual /**< */,
295 uint32_t value_mask /**< */,
296 const uint32_t *value_list /**< */)
297 {
298 static const xcb_protocol_request_t xcb_req = {
299 /* count */ 4,
300 /* ext */ &xcb_screensaver_id,
301 /* opcode */ XCB_SCREENSAVER_SET_ATTRIBUTES,
302 /* isvoid */ 1
303 };
304
305 struct iovec xcb_parts[6];
306 xcb_void_cookie_t xcb_ret;
307 xcb_screensaver_set_attributes_request_t xcb_out;
308
309 xcb_out.drawable = drawable;
310 xcb_out.x = x;
311 xcb_out.y = y;
312 xcb_out.width = width;
313 xcb_out.height = height;
314 xcb_out.border_width = border_width;
315 xcb_out._class = _class;
316 xcb_out.depth = depth;
317 xcb_out.visual = visual;
318 xcb_out.value_mask = value_mask;
319
320 xcb_parts[2].iov_base = (char *) &xcb_out;
321 xcb_parts[2].iov_len = sizeof(xcb_out);
322 xcb_parts[3].iov_base = 0;
323 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
324 /* uint32_t value_list */
325 xcb_parts[4].iov_base = (char *) value_list;
326 xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t);
327 xcb_parts[5].iov_base = 0;
328 xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
329
330 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
331 return xcb_ret;
332 }
333
334 xcb_void_cookie_t
xcb_screensaver_unset_attributes_checked(xcb_connection_t * c,xcb_drawable_t drawable)335 xcb_screensaver_unset_attributes_checked (xcb_connection_t *c /**< */,
336 xcb_drawable_t drawable /**< */)
337 {
338 static const xcb_protocol_request_t xcb_req = {
339 /* count */ 2,
340 /* ext */ &xcb_screensaver_id,
341 /* opcode */ XCB_SCREENSAVER_UNSET_ATTRIBUTES,
342 /* isvoid */ 1
343 };
344
345 struct iovec xcb_parts[4];
346 xcb_void_cookie_t xcb_ret;
347 xcb_screensaver_unset_attributes_request_t xcb_out;
348
349 xcb_out.drawable = drawable;
350
351 xcb_parts[2].iov_base = (char *) &xcb_out;
352 xcb_parts[2].iov_len = sizeof(xcb_out);
353 xcb_parts[3].iov_base = 0;
354 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
355
356 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
357 return xcb_ret;
358 }
359
360 xcb_void_cookie_t
xcb_screensaver_unset_attributes(xcb_connection_t * c,xcb_drawable_t drawable)361 xcb_screensaver_unset_attributes (xcb_connection_t *c /**< */,
362 xcb_drawable_t drawable /**< */)
363 {
364 static const xcb_protocol_request_t xcb_req = {
365 /* count */ 2,
366 /* ext */ &xcb_screensaver_id,
367 /* opcode */ XCB_SCREENSAVER_UNSET_ATTRIBUTES,
368 /* isvoid */ 1
369 };
370
371 struct iovec xcb_parts[4];
372 xcb_void_cookie_t xcb_ret;
373 xcb_screensaver_unset_attributes_request_t xcb_out;
374
375 xcb_out.drawable = drawable;
376
377 xcb_parts[2].iov_base = (char *) &xcb_out;
378 xcb_parts[2].iov_len = sizeof(xcb_out);
379 xcb_parts[3].iov_base = 0;
380 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
381
382 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
383 return xcb_ret;
384 }
385
386 xcb_void_cookie_t
xcb_screensaver_suspend_checked(xcb_connection_t * c,uint8_t suspend)387 xcb_screensaver_suspend_checked (xcb_connection_t *c /**< */,
388 uint8_t suspend /**< */)
389 {
390 static const xcb_protocol_request_t xcb_req = {
391 /* count */ 2,
392 /* ext */ &xcb_screensaver_id,
393 /* opcode */ XCB_SCREENSAVER_SUSPEND,
394 /* isvoid */ 1
395 };
396
397 struct iovec xcb_parts[4];
398 xcb_void_cookie_t xcb_ret;
399 xcb_screensaver_suspend_request_t xcb_out;
400
401 xcb_out.suspend = suspend;
402 memset(xcb_out.pad0, 0, 3);
403
404 xcb_parts[2].iov_base = (char *) &xcb_out;
405 xcb_parts[2].iov_len = sizeof(xcb_out);
406 xcb_parts[3].iov_base = 0;
407 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
408
409 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
410 return xcb_ret;
411 }
412
413 xcb_void_cookie_t
xcb_screensaver_suspend(xcb_connection_t * c,uint8_t suspend)414 xcb_screensaver_suspend (xcb_connection_t *c /**< */,
415 uint8_t suspend /**< */)
416 {
417 static const xcb_protocol_request_t xcb_req = {
418 /* count */ 2,
419 /* ext */ &xcb_screensaver_id,
420 /* opcode */ XCB_SCREENSAVER_SUSPEND,
421 /* isvoid */ 1
422 };
423
424 struct iovec xcb_parts[4];
425 xcb_void_cookie_t xcb_ret;
426 xcb_screensaver_suspend_request_t xcb_out;
427
428 xcb_out.suspend = suspend;
429 memset(xcb_out.pad0, 0, 3);
430
431 xcb_parts[2].iov_base = (char *) &xcb_out;
432 xcb_parts[2].iov_len = sizeof(xcb_out);
433 xcb_parts[3].iov_base = 0;
434 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
435
436 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
437 return xcb_ret;
438 }
439
440