1/* 2 * This file generated automatically from composite.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 "composite.h" 15 16#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) 17#include "xproto.h" 18#include "xfixes.h" 19 20xcb_extension_t xcb_composite_id = { "Composite", 0 }; 21 22xcb_composite_query_version_cookie_t 23xcb_composite_query_version (xcb_connection_t *c, 24 uint32_t client_major_version, 25 uint32_t client_minor_version) 26{ 27 static const xcb_protocol_request_t xcb_req = { 28 .count = 2, 29 .ext = &xcb_composite_id, 30 .opcode = XCB_COMPOSITE_QUERY_VERSION, 31 .isvoid = 0 32 }; 33 34 struct iovec xcb_parts[4]; 35 xcb_composite_query_version_cookie_t xcb_ret; 36 xcb_composite_query_version_request_t xcb_out; 37 38 xcb_out.client_major_version = client_major_version; 39 xcb_out.client_minor_version = client_minor_version; 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 50xcb_composite_query_version_cookie_t 51xcb_composite_query_version_unchecked (xcb_connection_t *c, 52 uint32_t client_major_version, 53 uint32_t client_minor_version) 54{ 55 static const xcb_protocol_request_t xcb_req = { 56 .count = 2, 57 .ext = &xcb_composite_id, 58 .opcode = XCB_COMPOSITE_QUERY_VERSION, 59 .isvoid = 0 60 }; 61 62 struct iovec xcb_parts[4]; 63 xcb_composite_query_version_cookie_t xcb_ret; 64 xcb_composite_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 69 xcb_parts[2].iov_base = (char *) &xcb_out; 70 xcb_parts[2].iov_len = sizeof(xcb_out); 71 xcb_parts[3].iov_base = 0; 72 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 73 74 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); 75 return xcb_ret; 76} 77 78xcb_composite_query_version_reply_t * 79xcb_composite_query_version_reply (xcb_connection_t *c, 80 xcb_composite_query_version_cookie_t cookie /**< */, 81 xcb_generic_error_t **e) 82{ 83 return (xcb_composite_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); 84} 85 86xcb_void_cookie_t 87xcb_composite_redirect_window_checked (xcb_connection_t *c, 88 xcb_window_t window, 89 uint8_t update) 90{ 91 static const xcb_protocol_request_t xcb_req = { 92 .count = 2, 93 .ext = &xcb_composite_id, 94 .opcode = XCB_COMPOSITE_REDIRECT_WINDOW, 95 .isvoid = 1 96 }; 97 98 struct iovec xcb_parts[4]; 99 xcb_void_cookie_t xcb_ret; 100 xcb_composite_redirect_window_request_t xcb_out; 101 102 xcb_out.window = window; 103 xcb_out.update = update; 104 memset(xcb_out.pad0, 0, 3); 105 106 xcb_parts[2].iov_base = (char *) &xcb_out; 107 xcb_parts[2].iov_len = sizeof(xcb_out); 108 xcb_parts[3].iov_base = 0; 109 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 110 111 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); 112 return xcb_ret; 113} 114 115xcb_void_cookie_t 116xcb_composite_redirect_window (xcb_connection_t *c, 117 xcb_window_t window, 118 uint8_t update) 119{ 120 static const xcb_protocol_request_t xcb_req = { 121 .count = 2, 122 .ext = &xcb_composite_id, 123 .opcode = XCB_COMPOSITE_REDIRECT_WINDOW, 124 .isvoid = 1 125 }; 126 127 struct iovec xcb_parts[4]; 128 xcb_void_cookie_t xcb_ret; 129 xcb_composite_redirect_window_request_t xcb_out; 130 131 xcb_out.window = window; 132 xcb_out.update = update; 133 memset(xcb_out.pad0, 0, 3); 134 135 xcb_parts[2].iov_base = (char *) &xcb_out; 136 xcb_parts[2].iov_len = sizeof(xcb_out); 137 xcb_parts[3].iov_base = 0; 138 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 139 140 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); 141 return xcb_ret; 142} 143 144xcb_void_cookie_t 145xcb_composite_redirect_subwindows_checked (xcb_connection_t *c, 146 xcb_window_t window, 147 uint8_t update) 148{ 149 static const xcb_protocol_request_t xcb_req = { 150 .count = 2, 151 .ext = &xcb_composite_id, 152 .opcode = XCB_COMPOSITE_REDIRECT_SUBWINDOWS, 153 .isvoid = 1 154 }; 155 156 struct iovec xcb_parts[4]; 157 xcb_void_cookie_t xcb_ret; 158 xcb_composite_redirect_subwindows_request_t xcb_out; 159 160 xcb_out.window = window; 161 xcb_out.update = update; 162 memset(xcb_out.pad0, 0, 3); 163 164 xcb_parts[2].iov_base = (char *) &xcb_out; 165 xcb_parts[2].iov_len = sizeof(xcb_out); 166 xcb_parts[3].iov_base = 0; 167 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 168 169 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); 170 return xcb_ret; 171} 172 173xcb_void_cookie_t 174xcb_composite_redirect_subwindows (xcb_connection_t *c, 175 xcb_window_t window, 176 uint8_t update) 177{ 178 static const xcb_protocol_request_t xcb_req = { 179 .count = 2, 180 .ext = &xcb_composite_id, 181 .opcode = XCB_COMPOSITE_REDIRECT_SUBWINDOWS, 182 .isvoid = 1 183 }; 184 185 struct iovec xcb_parts[4]; 186 xcb_void_cookie_t xcb_ret; 187 xcb_composite_redirect_subwindows_request_t xcb_out; 188 189 xcb_out.window = window; 190 xcb_out.update = update; 191 memset(xcb_out.pad0, 0, 3); 192 193 xcb_parts[2].iov_base = (char *) &xcb_out; 194 xcb_parts[2].iov_len = sizeof(xcb_out); 195 xcb_parts[3].iov_base = 0; 196 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 197 198 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); 199 return xcb_ret; 200} 201 202xcb_void_cookie_t 203xcb_composite_unredirect_window_checked (xcb_connection_t *c, 204 xcb_window_t window, 205 uint8_t update) 206{ 207 static const xcb_protocol_request_t xcb_req = { 208 .count = 2, 209 .ext = &xcb_composite_id, 210 .opcode = XCB_COMPOSITE_UNREDIRECT_WINDOW, 211 .isvoid = 1 212 }; 213 214 struct iovec xcb_parts[4]; 215 xcb_void_cookie_t xcb_ret; 216 xcb_composite_unredirect_window_request_t xcb_out; 217 218 xcb_out.window = window; 219 xcb_out.update = update; 220 memset(xcb_out.pad0, 0, 3); 221 222 xcb_parts[2].iov_base = (char *) &xcb_out; 223 xcb_parts[2].iov_len = sizeof(xcb_out); 224 xcb_parts[3].iov_base = 0; 225 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 226 227 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); 228 return xcb_ret; 229} 230 231xcb_void_cookie_t 232xcb_composite_unredirect_window (xcb_connection_t *c, 233 xcb_window_t window, 234 uint8_t update) 235{ 236 static const xcb_protocol_request_t xcb_req = { 237 .count = 2, 238 .ext = &xcb_composite_id, 239 .opcode = XCB_COMPOSITE_UNREDIRECT_WINDOW, 240 .isvoid = 1 241 }; 242 243 struct iovec xcb_parts[4]; 244 xcb_void_cookie_t xcb_ret; 245 xcb_composite_unredirect_window_request_t xcb_out; 246 247 xcb_out.window = window; 248 xcb_out.update = update; 249 memset(xcb_out.pad0, 0, 3); 250 251 xcb_parts[2].iov_base = (char *) &xcb_out; 252 xcb_parts[2].iov_len = sizeof(xcb_out); 253 xcb_parts[3].iov_base = 0; 254 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 255 256 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); 257 return xcb_ret; 258} 259 260xcb_void_cookie_t 261xcb_composite_unredirect_subwindows_checked (xcb_connection_t *c, 262 xcb_window_t window, 263 uint8_t update) 264{ 265 static const xcb_protocol_request_t xcb_req = { 266 .count = 2, 267 .ext = &xcb_composite_id, 268 .opcode = XCB_COMPOSITE_UNREDIRECT_SUBWINDOWS, 269 .isvoid = 1 270 }; 271 272 struct iovec xcb_parts[4]; 273 xcb_void_cookie_t xcb_ret; 274 xcb_composite_unredirect_subwindows_request_t xcb_out; 275 276 xcb_out.window = window; 277 xcb_out.update = update; 278 memset(xcb_out.pad0, 0, 3); 279 280 xcb_parts[2].iov_base = (char *) &xcb_out; 281 xcb_parts[2].iov_len = sizeof(xcb_out); 282 xcb_parts[3].iov_base = 0; 283 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 284 285 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); 286 return xcb_ret; 287} 288 289xcb_void_cookie_t 290xcb_composite_unredirect_subwindows (xcb_connection_t *c, 291 xcb_window_t window, 292 uint8_t update) 293{ 294 static const xcb_protocol_request_t xcb_req = { 295 .count = 2, 296 .ext = &xcb_composite_id, 297 .opcode = XCB_COMPOSITE_UNREDIRECT_SUBWINDOWS, 298 .isvoid = 1 299 }; 300 301 struct iovec xcb_parts[4]; 302 xcb_void_cookie_t xcb_ret; 303 xcb_composite_unredirect_subwindows_request_t xcb_out; 304 305 xcb_out.window = window; 306 xcb_out.update = update; 307 memset(xcb_out.pad0, 0, 3); 308 309 xcb_parts[2].iov_base = (char *) &xcb_out; 310 xcb_parts[2].iov_len = sizeof(xcb_out); 311 xcb_parts[3].iov_base = 0; 312 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 313 314 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); 315 return xcb_ret; 316} 317 318xcb_void_cookie_t 319xcb_composite_create_region_from_border_clip_checked (xcb_connection_t *c, 320 xcb_xfixes_region_t region, 321 xcb_window_t window) 322{ 323 static const xcb_protocol_request_t xcb_req = { 324 .count = 2, 325 .ext = &xcb_composite_id, 326 .opcode = XCB_COMPOSITE_CREATE_REGION_FROM_BORDER_CLIP, 327 .isvoid = 1 328 }; 329 330 struct iovec xcb_parts[4]; 331 xcb_void_cookie_t xcb_ret; 332 xcb_composite_create_region_from_border_clip_request_t xcb_out; 333 334 xcb_out.region = region; 335 xcb_out.window = window; 336 337 xcb_parts[2].iov_base = (char *) &xcb_out; 338 xcb_parts[2].iov_len = sizeof(xcb_out); 339 xcb_parts[3].iov_base = 0; 340 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 341 342 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); 343 return xcb_ret; 344} 345 346xcb_void_cookie_t 347xcb_composite_create_region_from_border_clip (xcb_connection_t *c, 348 xcb_xfixes_region_t region, 349 xcb_window_t window) 350{ 351 static const xcb_protocol_request_t xcb_req = { 352 .count = 2, 353 .ext = &xcb_composite_id, 354 .opcode = XCB_COMPOSITE_CREATE_REGION_FROM_BORDER_CLIP, 355 .isvoid = 1 356 }; 357 358 struct iovec xcb_parts[4]; 359 xcb_void_cookie_t xcb_ret; 360 xcb_composite_create_region_from_border_clip_request_t xcb_out; 361 362 xcb_out.region = region; 363 xcb_out.window = window; 364 365 xcb_parts[2].iov_base = (char *) &xcb_out; 366 xcb_parts[2].iov_len = sizeof(xcb_out); 367 xcb_parts[3].iov_base = 0; 368 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 369 370 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); 371 return xcb_ret; 372} 373 374xcb_void_cookie_t 375xcb_composite_name_window_pixmap_checked (xcb_connection_t *c, 376 xcb_window_t window, 377 xcb_pixmap_t pixmap) 378{ 379 static const xcb_protocol_request_t xcb_req = { 380 .count = 2, 381 .ext = &xcb_composite_id, 382 .opcode = XCB_COMPOSITE_NAME_WINDOW_PIXMAP, 383 .isvoid = 1 384 }; 385 386 struct iovec xcb_parts[4]; 387 xcb_void_cookie_t xcb_ret; 388 xcb_composite_name_window_pixmap_request_t xcb_out; 389 390 xcb_out.window = window; 391 xcb_out.pixmap = pixmap; 392 393 xcb_parts[2].iov_base = (char *) &xcb_out; 394 xcb_parts[2].iov_len = sizeof(xcb_out); 395 xcb_parts[3].iov_base = 0; 396 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 397 398 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); 399 return xcb_ret; 400} 401 402xcb_void_cookie_t 403xcb_composite_name_window_pixmap (xcb_connection_t *c, 404 xcb_window_t window, 405 xcb_pixmap_t pixmap) 406{ 407 static const xcb_protocol_request_t xcb_req = { 408 .count = 2, 409 .ext = &xcb_composite_id, 410 .opcode = XCB_COMPOSITE_NAME_WINDOW_PIXMAP, 411 .isvoid = 1 412 }; 413 414 struct iovec xcb_parts[4]; 415 xcb_void_cookie_t xcb_ret; 416 xcb_composite_name_window_pixmap_request_t xcb_out; 417 418 xcb_out.window = window; 419 xcb_out.pixmap = pixmap; 420 421 xcb_parts[2].iov_base = (char *) &xcb_out; 422 xcb_parts[2].iov_len = sizeof(xcb_out); 423 xcb_parts[3].iov_base = 0; 424 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 425 426 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); 427 return xcb_ret; 428} 429 430xcb_composite_get_overlay_window_cookie_t 431xcb_composite_get_overlay_window (xcb_connection_t *c, 432 xcb_window_t window) 433{ 434 static const xcb_protocol_request_t xcb_req = { 435 .count = 2, 436 .ext = &xcb_composite_id, 437 .opcode = XCB_COMPOSITE_GET_OVERLAY_WINDOW, 438 .isvoid = 0 439 }; 440 441 struct iovec xcb_parts[4]; 442 xcb_composite_get_overlay_window_cookie_t xcb_ret; 443 xcb_composite_get_overlay_window_request_t xcb_out; 444 445 xcb_out.window = window; 446 447 xcb_parts[2].iov_base = (char *) &xcb_out; 448 xcb_parts[2].iov_len = sizeof(xcb_out); 449 xcb_parts[3].iov_base = 0; 450 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 451 452 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); 453 return xcb_ret; 454} 455 456xcb_composite_get_overlay_window_cookie_t 457xcb_composite_get_overlay_window_unchecked (xcb_connection_t *c, 458 xcb_window_t window) 459{ 460 static const xcb_protocol_request_t xcb_req = { 461 .count = 2, 462 .ext = &xcb_composite_id, 463 .opcode = XCB_COMPOSITE_GET_OVERLAY_WINDOW, 464 .isvoid = 0 465 }; 466 467 struct iovec xcb_parts[4]; 468 xcb_composite_get_overlay_window_cookie_t xcb_ret; 469 xcb_composite_get_overlay_window_request_t xcb_out; 470 471 xcb_out.window = window; 472 473 xcb_parts[2].iov_base = (char *) &xcb_out; 474 xcb_parts[2].iov_len = sizeof(xcb_out); 475 xcb_parts[3].iov_base = 0; 476 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 477 478 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); 479 return xcb_ret; 480} 481 482xcb_composite_get_overlay_window_reply_t * 483xcb_composite_get_overlay_window_reply (xcb_connection_t *c, 484 xcb_composite_get_overlay_window_cookie_t cookie /**< */, 485 xcb_generic_error_t **e) 486{ 487 return (xcb_composite_get_overlay_window_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); 488} 489 490xcb_void_cookie_t 491xcb_composite_release_overlay_window_checked (xcb_connection_t *c, 492 xcb_window_t window) 493{ 494 static const xcb_protocol_request_t xcb_req = { 495 .count = 2, 496 .ext = &xcb_composite_id, 497 .opcode = XCB_COMPOSITE_RELEASE_OVERLAY_WINDOW, 498 .isvoid = 1 499 }; 500 501 struct iovec xcb_parts[4]; 502 xcb_void_cookie_t xcb_ret; 503 xcb_composite_release_overlay_window_request_t xcb_out; 504 505 xcb_out.window = window; 506 507 xcb_parts[2].iov_base = (char *) &xcb_out; 508 xcb_parts[2].iov_len = sizeof(xcb_out); 509 xcb_parts[3].iov_base = 0; 510 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 511 512 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); 513 return xcb_ret; 514} 515 516xcb_void_cookie_t 517xcb_composite_release_overlay_window (xcb_connection_t *c, 518 xcb_window_t window) 519{ 520 static const xcb_protocol_request_t xcb_req = { 521 .count = 2, 522 .ext = &xcb_composite_id, 523 .opcode = XCB_COMPOSITE_RELEASE_OVERLAY_WINDOW, 524 .isvoid = 1 525 }; 526 527 struct iovec xcb_parts[4]; 528 xcb_void_cookie_t xcb_ret; 529 xcb_composite_release_overlay_window_request_t xcb_out; 530 531 xcb_out.window = window; 532 533 xcb_parts[2].iov_base = (char *) &xcb_out; 534 xcb_parts[2].iov_len = sizeof(xcb_out); 535 xcb_parts[3].iov_base = 0; 536 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 537 538 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); 539 return xcb_ret; 540} 541 542