xinerama.c revision 1.2 1 /*
2 * This file generated automatically from xinerama.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 "xinerama.h"
15
16 #define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member)
17 #include "xproto.h"
18
19 xcb_extension_t xcb_xinerama_id = { "XINERAMA", 0 };
20
21
22 /*****************************************************************************
23 **
24 ** void xcb_xinerama_screen_info_next
25 **
26 ** @param xcb_xinerama_screen_info_iterator_t *i
27 ** @returns void
28 **
29 *****************************************************************************/
30
31 void
32 xcb_xinerama_screen_info_next (xcb_xinerama_screen_info_iterator_t *i /**< */)
33 {
34 --i->rem;
35 ++i->data;
36 i->index += sizeof(xcb_xinerama_screen_info_t);
37 }
38
39
40 /*****************************************************************************
41 **
42 ** xcb_generic_iterator_t xcb_xinerama_screen_info_end
43 **
44 ** @param xcb_xinerama_screen_info_iterator_t i
45 ** @returns xcb_generic_iterator_t
46 **
47 *****************************************************************************/
48
49 xcb_generic_iterator_t
50 xcb_xinerama_screen_info_end (xcb_xinerama_screen_info_iterator_t i /**< */)
51 {
52 xcb_generic_iterator_t ret;
53 ret.data = i.data + i.rem;
54 ret.index = i.index + ((char *) ret.data - (char *) i.data);
55 ret.rem = 0;
56 return ret;
57 }
58
59
60 /*****************************************************************************
61 **
62 ** xcb_xinerama_query_version_cookie_t xcb_xinerama_query_version
63 **
64 ** @param xcb_connection_t *c
65 ** @param uint8_t major
66 ** @param uint8_t minor
67 ** @returns xcb_xinerama_query_version_cookie_t
68 **
69 *****************************************************************************/
70
71 xcb_xinerama_query_version_cookie_t
72 xcb_xinerama_query_version (xcb_connection_t *c /**< */,
73 uint8_t major /**< */,
74 uint8_t minor /**< */)
75 {
76 static const xcb_protocol_request_t xcb_req = {
77 /* count */ 2,
78 /* ext */ &xcb_xinerama_id,
79 /* opcode */ XCB_XINERAMA_QUERY_VERSION,
80 /* isvoid */ 0
81 };
82
83 struct iovec xcb_parts[4];
84 xcb_xinerama_query_version_cookie_t xcb_ret;
85 xcb_xinerama_query_version_request_t xcb_out;
86
87 xcb_out.major = major;
88 xcb_out.minor = minor;
89
90 xcb_parts[2].iov_base = (char *) &xcb_out;
91 xcb_parts[2].iov_len = sizeof(xcb_out);
92 xcb_parts[3].iov_base = 0;
93 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
94
95 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
96 return xcb_ret;
97 }
98
99
100 /*****************************************************************************
101 **
102 ** xcb_xinerama_query_version_cookie_t xcb_xinerama_query_version_unchecked
103 **
104 ** @param xcb_connection_t *c
105 ** @param uint8_t major
106 ** @param uint8_t minor
107 ** @returns xcb_xinerama_query_version_cookie_t
108 **
109 *****************************************************************************/
110
111 xcb_xinerama_query_version_cookie_t
112 xcb_xinerama_query_version_unchecked (xcb_connection_t *c /**< */,
113 uint8_t major /**< */,
114 uint8_t minor /**< */)
115 {
116 static const xcb_protocol_request_t xcb_req = {
117 /* count */ 2,
118 /* ext */ &xcb_xinerama_id,
119 /* opcode */ XCB_XINERAMA_QUERY_VERSION,
120 /* isvoid */ 0
121 };
122
123 struct iovec xcb_parts[4];
124 xcb_xinerama_query_version_cookie_t xcb_ret;
125 xcb_xinerama_query_version_request_t xcb_out;
126
127 xcb_out.major = major;
128 xcb_out.minor = minor;
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
140 /*****************************************************************************
141 **
142 ** xcb_xinerama_query_version_reply_t * xcb_xinerama_query_version_reply
143 **
144 ** @param xcb_connection_t *c
145 ** @param xcb_xinerama_query_version_cookie_t cookie
146 ** @param xcb_generic_error_t **e
147 ** @returns xcb_xinerama_query_version_reply_t *
148 **
149 *****************************************************************************/
150
151 xcb_xinerama_query_version_reply_t *
152 xcb_xinerama_query_version_reply (xcb_connection_t *c /**< */,
153 xcb_xinerama_query_version_cookie_t cookie /**< */,
154 xcb_generic_error_t **e /**< */)
155 {
156 return (xcb_xinerama_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
157 }
158
159
160 /*****************************************************************************
161 **
162 ** xcb_xinerama_get_state_cookie_t xcb_xinerama_get_state
163 **
164 ** @param xcb_connection_t *c
165 ** @param xcb_window_t window
166 ** @returns xcb_xinerama_get_state_cookie_t
167 **
168 *****************************************************************************/
169
170 xcb_xinerama_get_state_cookie_t
171 xcb_xinerama_get_state (xcb_connection_t *c /**< */,
172 xcb_window_t window /**< */)
173 {
174 static const xcb_protocol_request_t xcb_req = {
175 /* count */ 2,
176 /* ext */ &xcb_xinerama_id,
177 /* opcode */ XCB_XINERAMA_GET_STATE,
178 /* isvoid */ 0
179 };
180
181 struct iovec xcb_parts[4];
182 xcb_xinerama_get_state_cookie_t xcb_ret;
183 xcb_xinerama_get_state_request_t xcb_out;
184
185 xcb_out.window = window;
186
187 xcb_parts[2].iov_base = (char *) &xcb_out;
188 xcb_parts[2].iov_len = sizeof(xcb_out);
189 xcb_parts[3].iov_base = 0;
190 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
191
192 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
193 return xcb_ret;
194 }
195
196
197 /*****************************************************************************
198 **
199 ** xcb_xinerama_get_state_cookie_t xcb_xinerama_get_state_unchecked
200 **
201 ** @param xcb_connection_t *c
202 ** @param xcb_window_t window
203 ** @returns xcb_xinerama_get_state_cookie_t
204 **
205 *****************************************************************************/
206
207 xcb_xinerama_get_state_cookie_t
208 xcb_xinerama_get_state_unchecked (xcb_connection_t *c /**< */,
209 xcb_window_t window /**< */)
210 {
211 static const xcb_protocol_request_t xcb_req = {
212 /* count */ 2,
213 /* ext */ &xcb_xinerama_id,
214 /* opcode */ XCB_XINERAMA_GET_STATE,
215 /* isvoid */ 0
216 };
217
218 struct iovec xcb_parts[4];
219 xcb_xinerama_get_state_cookie_t xcb_ret;
220 xcb_xinerama_get_state_request_t xcb_out;
221
222 xcb_out.window = window;
223
224 xcb_parts[2].iov_base = (char *) &xcb_out;
225 xcb_parts[2].iov_len = sizeof(xcb_out);
226 xcb_parts[3].iov_base = 0;
227 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
228
229 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
230 return xcb_ret;
231 }
232
233
234 /*****************************************************************************
235 **
236 ** xcb_xinerama_get_state_reply_t * xcb_xinerama_get_state_reply
237 **
238 ** @param xcb_connection_t *c
239 ** @param xcb_xinerama_get_state_cookie_t cookie
240 ** @param xcb_generic_error_t **e
241 ** @returns xcb_xinerama_get_state_reply_t *
242 **
243 *****************************************************************************/
244
245 xcb_xinerama_get_state_reply_t *
246 xcb_xinerama_get_state_reply (xcb_connection_t *c /**< */,
247 xcb_xinerama_get_state_cookie_t cookie /**< */,
248 xcb_generic_error_t **e /**< */)
249 {
250 return (xcb_xinerama_get_state_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
251 }
252
253
254 /*****************************************************************************
255 **
256 ** xcb_xinerama_get_screen_count_cookie_t xcb_xinerama_get_screen_count
257 **
258 ** @param xcb_connection_t *c
259 ** @param xcb_window_t window
260 ** @returns xcb_xinerama_get_screen_count_cookie_t
261 **
262 *****************************************************************************/
263
264 xcb_xinerama_get_screen_count_cookie_t
265 xcb_xinerama_get_screen_count (xcb_connection_t *c /**< */,
266 xcb_window_t window /**< */)
267 {
268 static const xcb_protocol_request_t xcb_req = {
269 /* count */ 2,
270 /* ext */ &xcb_xinerama_id,
271 /* opcode */ XCB_XINERAMA_GET_SCREEN_COUNT,
272 /* isvoid */ 0
273 };
274
275 struct iovec xcb_parts[4];
276 xcb_xinerama_get_screen_count_cookie_t xcb_ret;
277 xcb_xinerama_get_screen_count_request_t xcb_out;
278
279 xcb_out.window = window;
280
281 xcb_parts[2].iov_base = (char *) &xcb_out;
282 xcb_parts[2].iov_len = sizeof(xcb_out);
283 xcb_parts[3].iov_base = 0;
284 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
285
286 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
287 return xcb_ret;
288 }
289
290
291 /*****************************************************************************
292 **
293 ** xcb_xinerama_get_screen_count_cookie_t xcb_xinerama_get_screen_count_unchecked
294 **
295 ** @param xcb_connection_t *c
296 ** @param xcb_window_t window
297 ** @returns xcb_xinerama_get_screen_count_cookie_t
298 **
299 *****************************************************************************/
300
301 xcb_xinerama_get_screen_count_cookie_t
302 xcb_xinerama_get_screen_count_unchecked (xcb_connection_t *c /**< */,
303 xcb_window_t window /**< */)
304 {
305 static const xcb_protocol_request_t xcb_req = {
306 /* count */ 2,
307 /* ext */ &xcb_xinerama_id,
308 /* opcode */ XCB_XINERAMA_GET_SCREEN_COUNT,
309 /* isvoid */ 0
310 };
311
312 struct iovec xcb_parts[4];
313 xcb_xinerama_get_screen_count_cookie_t xcb_ret;
314 xcb_xinerama_get_screen_count_request_t xcb_out;
315
316 xcb_out.window = window;
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
323 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
324 return xcb_ret;
325 }
326
327
328 /*****************************************************************************
329 **
330 ** xcb_xinerama_get_screen_count_reply_t * xcb_xinerama_get_screen_count_reply
331 **
332 ** @param xcb_connection_t *c
333 ** @param xcb_xinerama_get_screen_count_cookie_t cookie
334 ** @param xcb_generic_error_t **e
335 ** @returns xcb_xinerama_get_screen_count_reply_t *
336 **
337 *****************************************************************************/
338
339 xcb_xinerama_get_screen_count_reply_t *
340 xcb_xinerama_get_screen_count_reply (xcb_connection_t *c /**< */,
341 xcb_xinerama_get_screen_count_cookie_t cookie /**< */,
342 xcb_generic_error_t **e /**< */)
343 {
344 return (xcb_xinerama_get_screen_count_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
345 }
346
347
348 /*****************************************************************************
349 **
350 ** xcb_xinerama_get_screen_size_cookie_t xcb_xinerama_get_screen_size
351 **
352 ** @param xcb_connection_t *c
353 ** @param xcb_window_t window
354 ** @param uint32_t screen
355 ** @returns xcb_xinerama_get_screen_size_cookie_t
356 **
357 *****************************************************************************/
358
359 xcb_xinerama_get_screen_size_cookie_t
360 xcb_xinerama_get_screen_size (xcb_connection_t *c /**< */,
361 xcb_window_t window /**< */,
362 uint32_t screen /**< */)
363 {
364 static const xcb_protocol_request_t xcb_req = {
365 /* count */ 2,
366 /* ext */ &xcb_xinerama_id,
367 /* opcode */ XCB_XINERAMA_GET_SCREEN_SIZE,
368 /* isvoid */ 0
369 };
370
371 struct iovec xcb_parts[4];
372 xcb_xinerama_get_screen_size_cookie_t xcb_ret;
373 xcb_xinerama_get_screen_size_request_t xcb_out;
374
375 xcb_out.window = window;
376 xcb_out.screen = screen;
377
378 xcb_parts[2].iov_base = (char *) &xcb_out;
379 xcb_parts[2].iov_len = sizeof(xcb_out);
380 xcb_parts[3].iov_base = 0;
381 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
382
383 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
384 return xcb_ret;
385 }
386
387
388 /*****************************************************************************
389 **
390 ** xcb_xinerama_get_screen_size_cookie_t xcb_xinerama_get_screen_size_unchecked
391 **
392 ** @param xcb_connection_t *c
393 ** @param xcb_window_t window
394 ** @param uint32_t screen
395 ** @returns xcb_xinerama_get_screen_size_cookie_t
396 **
397 *****************************************************************************/
398
399 xcb_xinerama_get_screen_size_cookie_t
400 xcb_xinerama_get_screen_size_unchecked (xcb_connection_t *c /**< */,
401 xcb_window_t window /**< */,
402 uint32_t screen /**< */)
403 {
404 static const xcb_protocol_request_t xcb_req = {
405 /* count */ 2,
406 /* ext */ &xcb_xinerama_id,
407 /* opcode */ XCB_XINERAMA_GET_SCREEN_SIZE,
408 /* isvoid */ 0
409 };
410
411 struct iovec xcb_parts[4];
412 xcb_xinerama_get_screen_size_cookie_t xcb_ret;
413 xcb_xinerama_get_screen_size_request_t xcb_out;
414
415 xcb_out.window = window;
416 xcb_out.screen = screen;
417
418 xcb_parts[2].iov_base = (char *) &xcb_out;
419 xcb_parts[2].iov_len = sizeof(xcb_out);
420 xcb_parts[3].iov_base = 0;
421 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
422
423 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
424 return xcb_ret;
425 }
426
427
428 /*****************************************************************************
429 **
430 ** xcb_xinerama_get_screen_size_reply_t * xcb_xinerama_get_screen_size_reply
431 **
432 ** @param xcb_connection_t *c
433 ** @param xcb_xinerama_get_screen_size_cookie_t cookie
434 ** @param xcb_generic_error_t **e
435 ** @returns xcb_xinerama_get_screen_size_reply_t *
436 **
437 *****************************************************************************/
438
439 xcb_xinerama_get_screen_size_reply_t *
440 xcb_xinerama_get_screen_size_reply (xcb_connection_t *c /**< */,
441 xcb_xinerama_get_screen_size_cookie_t cookie /**< */,
442 xcb_generic_error_t **e /**< */)
443 {
444 return (xcb_xinerama_get_screen_size_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
445 }
446
447
448 /*****************************************************************************
449 **
450 ** xcb_xinerama_is_active_cookie_t xcb_xinerama_is_active
451 **
452 ** @param xcb_connection_t *c
453 ** @returns xcb_xinerama_is_active_cookie_t
454 **
455 *****************************************************************************/
456
457 xcb_xinerama_is_active_cookie_t
458 xcb_xinerama_is_active (xcb_connection_t *c /**< */)
459 {
460 static const xcb_protocol_request_t xcb_req = {
461 /* count */ 2,
462 /* ext */ &xcb_xinerama_id,
463 /* opcode */ XCB_XINERAMA_IS_ACTIVE,
464 /* isvoid */ 0
465 };
466
467 struct iovec xcb_parts[4];
468 xcb_xinerama_is_active_cookie_t xcb_ret;
469 xcb_xinerama_is_active_request_t xcb_out;
470
471
472 xcb_parts[2].iov_base = (char *) &xcb_out;
473 xcb_parts[2].iov_len = sizeof(xcb_out);
474 xcb_parts[3].iov_base = 0;
475 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
476
477 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
478 return xcb_ret;
479 }
480
481
482 /*****************************************************************************
483 **
484 ** xcb_xinerama_is_active_cookie_t xcb_xinerama_is_active_unchecked
485 **
486 ** @param xcb_connection_t *c
487 ** @returns xcb_xinerama_is_active_cookie_t
488 **
489 *****************************************************************************/
490
491 xcb_xinerama_is_active_cookie_t
492 xcb_xinerama_is_active_unchecked (xcb_connection_t *c /**< */)
493 {
494 static const xcb_protocol_request_t xcb_req = {
495 /* count */ 2,
496 /* ext */ &xcb_xinerama_id,
497 /* opcode */ XCB_XINERAMA_IS_ACTIVE,
498 /* isvoid */ 0
499 };
500
501 struct iovec xcb_parts[4];
502 xcb_xinerama_is_active_cookie_t xcb_ret;
503 xcb_xinerama_is_active_request_t xcb_out;
504
505
506 xcb_parts[2].iov_base = (char *) &xcb_out;
507 xcb_parts[2].iov_len = sizeof(xcb_out);
508 xcb_parts[3].iov_base = 0;
509 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
510
511 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
512 return xcb_ret;
513 }
514
515
516 /*****************************************************************************
517 **
518 ** xcb_xinerama_is_active_reply_t * xcb_xinerama_is_active_reply
519 **
520 ** @param xcb_connection_t *c
521 ** @param xcb_xinerama_is_active_cookie_t cookie
522 ** @param xcb_generic_error_t **e
523 ** @returns xcb_xinerama_is_active_reply_t *
524 **
525 *****************************************************************************/
526
527 xcb_xinerama_is_active_reply_t *
528 xcb_xinerama_is_active_reply (xcb_connection_t *c /**< */,
529 xcb_xinerama_is_active_cookie_t cookie /**< */,
530 xcb_generic_error_t **e /**< */)
531 {
532 return (xcb_xinerama_is_active_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
533 }
534
535 int
536 xcb_xinerama_query_screens_sizeof (const void *_buffer /**< */)
537 {
538 char *xcb_tmp = (char *)_buffer;
539 const xcb_xinerama_query_screens_reply_t *_aux = (xcb_xinerama_query_screens_reply_t *)_buffer;
540 unsigned int xcb_buffer_len = 0;
541 unsigned int xcb_block_len = 0;
542 unsigned int xcb_pad = 0;
543 unsigned int xcb_align_to;
544
545
546 xcb_block_len += sizeof(xcb_xinerama_query_screens_reply_t);
547 xcb_tmp += xcb_block_len;
548 /* screen_info */
549 xcb_block_len += _aux->number * sizeof(xcb_xinerama_screen_info_t);
550 xcb_tmp += xcb_block_len;
551 xcb_align_to = ALIGNOF(xcb_xinerama_screen_info_t);
552 /* insert padding */
553 xcb_pad = -xcb_block_len & (xcb_align_to - 1);
554 xcb_buffer_len += xcb_block_len + xcb_pad;
555 if (0 != xcb_pad) {
556 xcb_tmp += xcb_pad;
557 xcb_pad = 0;
558 }
559 xcb_block_len = 0;
560
561 return xcb_buffer_len;
562 }
563
564
565 /*****************************************************************************
566 **
567 ** xcb_xinerama_query_screens_cookie_t xcb_xinerama_query_screens
568 **
569 ** @param xcb_connection_t *c
570 ** @returns xcb_xinerama_query_screens_cookie_t
571 **
572 *****************************************************************************/
573
574 xcb_xinerama_query_screens_cookie_t
575 xcb_xinerama_query_screens (xcb_connection_t *c /**< */)
576 {
577 static const xcb_protocol_request_t xcb_req = {
578 /* count */ 2,
579 /* ext */ &xcb_xinerama_id,
580 /* opcode */ XCB_XINERAMA_QUERY_SCREENS,
581 /* isvoid */ 0
582 };
583
584 struct iovec xcb_parts[4];
585 xcb_xinerama_query_screens_cookie_t xcb_ret;
586 xcb_xinerama_query_screens_request_t xcb_out;
587
588
589 xcb_parts[2].iov_base = (char *) &xcb_out;
590 xcb_parts[2].iov_len = sizeof(xcb_out);
591 xcb_parts[3].iov_base = 0;
592 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
593
594 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
595 return xcb_ret;
596 }
597
598
599 /*****************************************************************************
600 **
601 ** xcb_xinerama_query_screens_cookie_t xcb_xinerama_query_screens_unchecked
602 **
603 ** @param xcb_connection_t *c
604 ** @returns xcb_xinerama_query_screens_cookie_t
605 **
606 *****************************************************************************/
607
608 xcb_xinerama_query_screens_cookie_t
609 xcb_xinerama_query_screens_unchecked (xcb_connection_t *c /**< */)
610 {
611 static const xcb_protocol_request_t xcb_req = {
612 /* count */ 2,
613 /* ext */ &xcb_xinerama_id,
614 /* opcode */ XCB_XINERAMA_QUERY_SCREENS,
615 /* isvoid */ 0
616 };
617
618 struct iovec xcb_parts[4];
619 xcb_xinerama_query_screens_cookie_t xcb_ret;
620 xcb_xinerama_query_screens_request_t xcb_out;
621
622
623 xcb_parts[2].iov_base = (char *) &xcb_out;
624 xcb_parts[2].iov_len = sizeof(xcb_out);
625 xcb_parts[3].iov_base = 0;
626 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
627
628 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
629 return xcb_ret;
630 }
631
632
633 /*****************************************************************************
634 **
635 ** xcb_xinerama_screen_info_t * xcb_xinerama_query_screens_screen_info
636 **
637 ** @param const xcb_xinerama_query_screens_reply_t *R
638 ** @returns xcb_xinerama_screen_info_t *
639 **
640 *****************************************************************************/
641
642 xcb_xinerama_screen_info_t *
643 xcb_xinerama_query_screens_screen_info (const xcb_xinerama_query_screens_reply_t *R /**< */)
644 {
645 return (xcb_xinerama_screen_info_t *) (R + 1);
646 }
647
648
649 /*****************************************************************************
650 **
651 ** int xcb_xinerama_query_screens_screen_info_length
652 **
653 ** @param const xcb_xinerama_query_screens_reply_t *R
654 ** @returns int
655 **
656 *****************************************************************************/
657
658 int
659 xcb_xinerama_query_screens_screen_info_length (const xcb_xinerama_query_screens_reply_t *R /**< */)
660 {
661 return R->number;
662 }
663
664
665 /*****************************************************************************
666 **
667 ** xcb_xinerama_screen_info_iterator_t xcb_xinerama_query_screens_screen_info_iterator
668 **
669 ** @param const xcb_xinerama_query_screens_reply_t *R
670 ** @returns xcb_xinerama_screen_info_iterator_t
671 **
672 *****************************************************************************/
673
674 xcb_xinerama_screen_info_iterator_t
675 xcb_xinerama_query_screens_screen_info_iterator (const xcb_xinerama_query_screens_reply_t *R /**< */)
676 {
677 xcb_xinerama_screen_info_iterator_t i;
678 i.data = (xcb_xinerama_screen_info_t *) (R + 1);
679 i.rem = R->number;
680 i.index = (char *) i.data - (char *) R;
681 return i;
682 }
683
684
685 /*****************************************************************************
686 **
687 ** xcb_xinerama_query_screens_reply_t * xcb_xinerama_query_screens_reply
688 **
689 ** @param xcb_connection_t *c
690 ** @param xcb_xinerama_query_screens_cookie_t cookie
691 ** @param xcb_generic_error_t **e
692 ** @returns xcb_xinerama_query_screens_reply_t *
693 **
694 *****************************************************************************/
695
696 xcb_xinerama_query_screens_reply_t *
697 xcb_xinerama_query_screens_reply (xcb_connection_t *c /**< */,
698 xcb_xinerama_query_screens_cookie_t cookie /**< */,
699 xcb_generic_error_t **e /**< */)
700 {
701 return (xcb_xinerama_query_screens_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
702 }
703
704