1 /* 2 * This file generated automatically from xevie.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 "xevie.h" 15 16 #define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) 17 18 xcb_extension_t xcb_xevie_id = { "XEVIE", 0 }; 19 20 21 /***************************************************************************** 22 ** 23 ** xcb_xevie_query_version_cookie_t xcb_xevie_query_version 24 ** 25 ** @param xcb_connection_t *c 26 ** @param uint16_t client_major_version 27 ** @param uint16_t client_minor_version 28 ** @returns xcb_xevie_query_version_cookie_t 29 ** 30 *****************************************************************************/ 31 32 xcb_xevie_query_version_cookie_t 33 xcb_xevie_query_version (xcb_connection_t *c /**< */, 34 uint16_t client_major_version /**< */, 35 uint16_t client_minor_version /**< */) 36 { 37 static const xcb_protocol_request_t xcb_req = { 38 /* count */ 2, 39 /* ext */ &xcb_xevie_id, 40 /* opcode */ XCB_XEVIE_QUERY_VERSION, 41 /* isvoid */ 0 42 }; 43 44 struct iovec xcb_parts[4]; 45 xcb_xevie_query_version_cookie_t xcb_ret; 46 xcb_xevie_query_version_request_t xcb_out; 47 48 xcb_out.client_major_version = client_major_version; 49 xcb_out.client_minor_version = client_minor_version; 50 51 xcb_parts[2].iov_base = (char *) &xcb_out; 52 xcb_parts[2].iov_len = sizeof(xcb_out); 53 xcb_parts[3].iov_base = 0; 54 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 55 56 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); 57 return xcb_ret; 58 } 59 60 61 /***************************************************************************** 62 ** 63 ** xcb_xevie_query_version_cookie_t xcb_xevie_query_version_unchecked 64 ** 65 ** @param xcb_connection_t *c 66 ** @param uint16_t client_major_version 67 ** @param uint16_t client_minor_version 68 ** @returns xcb_xevie_query_version_cookie_t 69 ** 70 *****************************************************************************/ 71 72 xcb_xevie_query_version_cookie_t 73 xcb_xevie_query_version_unchecked (xcb_connection_t *c /**< */, 74 uint16_t client_major_version /**< */, 75 uint16_t client_minor_version /**< */) 76 { 77 static const xcb_protocol_request_t xcb_req = { 78 /* count */ 2, 79 /* ext */ &xcb_xevie_id, 80 /* opcode */ XCB_XEVIE_QUERY_VERSION, 81 /* isvoid */ 0 82 }; 83 84 struct iovec xcb_parts[4]; 85 xcb_xevie_query_version_cookie_t xcb_ret; 86 xcb_xevie_query_version_request_t xcb_out; 87 88 xcb_out.client_major_version = client_major_version; 89 xcb_out.client_minor_version = client_minor_version; 90 91 xcb_parts[2].iov_base = (char *) &xcb_out; 92 xcb_parts[2].iov_len = sizeof(xcb_out); 93 xcb_parts[3].iov_base = 0; 94 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 95 96 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); 97 return xcb_ret; 98 } 99 100 101 /***************************************************************************** 102 ** 103 ** xcb_xevie_query_version_reply_t * xcb_xevie_query_version_reply 104 ** 105 ** @param xcb_connection_t *c 106 ** @param xcb_xevie_query_version_cookie_t cookie 107 ** @param xcb_generic_error_t **e 108 ** @returns xcb_xevie_query_version_reply_t * 109 ** 110 *****************************************************************************/ 111 112 xcb_xevie_query_version_reply_t * 113 xcb_xevie_query_version_reply (xcb_connection_t *c /**< */, 114 xcb_xevie_query_version_cookie_t cookie /**< */, 115 xcb_generic_error_t **e /**< */) 116 { 117 return (xcb_xevie_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); 118 } 119 120 121 /***************************************************************************** 122 ** 123 ** xcb_xevie_start_cookie_t xcb_xevie_start 124 ** 125 ** @param xcb_connection_t *c 126 ** @param uint32_t screen 127 ** @returns xcb_xevie_start_cookie_t 128 ** 129 *****************************************************************************/ 130 131 xcb_xevie_start_cookie_t 132 xcb_xevie_start (xcb_connection_t *c /**< */, 133 uint32_t screen /**< */) 134 { 135 static const xcb_protocol_request_t xcb_req = { 136 /* count */ 2, 137 /* ext */ &xcb_xevie_id, 138 /* opcode */ XCB_XEVIE_START, 139 /* isvoid */ 0 140 }; 141 142 struct iovec xcb_parts[4]; 143 xcb_xevie_start_cookie_t xcb_ret; 144 xcb_xevie_start_request_t xcb_out; 145 146 xcb_out.screen = screen; 147 148 xcb_parts[2].iov_base = (char *) &xcb_out; 149 xcb_parts[2].iov_len = sizeof(xcb_out); 150 xcb_parts[3].iov_base = 0; 151 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 152 153 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); 154 return xcb_ret; 155 } 156 157 158 /***************************************************************************** 159 ** 160 ** xcb_xevie_start_cookie_t xcb_xevie_start_unchecked 161 ** 162 ** @param xcb_connection_t *c 163 ** @param uint32_t screen 164 ** @returns xcb_xevie_start_cookie_t 165 ** 166 *****************************************************************************/ 167 168 xcb_xevie_start_cookie_t 169 xcb_xevie_start_unchecked (xcb_connection_t *c /**< */, 170 uint32_t screen /**< */) 171 { 172 static const xcb_protocol_request_t xcb_req = { 173 /* count */ 2, 174 /* ext */ &xcb_xevie_id, 175 /* opcode */ XCB_XEVIE_START, 176 /* isvoid */ 0 177 }; 178 179 struct iovec xcb_parts[4]; 180 xcb_xevie_start_cookie_t xcb_ret; 181 xcb_xevie_start_request_t xcb_out; 182 183 xcb_out.screen = screen; 184 185 xcb_parts[2].iov_base = (char *) &xcb_out; 186 xcb_parts[2].iov_len = sizeof(xcb_out); 187 xcb_parts[3].iov_base = 0; 188 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 189 190 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); 191 return xcb_ret; 192 } 193 194 195 /***************************************************************************** 196 ** 197 ** xcb_xevie_start_reply_t * xcb_xevie_start_reply 198 ** 199 ** @param xcb_connection_t *c 200 ** @param xcb_xevie_start_cookie_t cookie 201 ** @param xcb_generic_error_t **e 202 ** @returns xcb_xevie_start_reply_t * 203 ** 204 *****************************************************************************/ 205 206 xcb_xevie_start_reply_t * 207 xcb_xevie_start_reply (xcb_connection_t *c /**< */, 208 xcb_xevie_start_cookie_t cookie /**< */, 209 xcb_generic_error_t **e /**< */) 210 { 211 return (xcb_xevie_start_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); 212 } 213 214 215 /***************************************************************************** 216 ** 217 ** xcb_xevie_end_cookie_t xcb_xevie_end 218 ** 219 ** @param xcb_connection_t *c 220 ** @param uint32_t cmap 221 ** @returns xcb_xevie_end_cookie_t 222 ** 223 *****************************************************************************/ 224 225 xcb_xevie_end_cookie_t 226 xcb_xevie_end (xcb_connection_t *c /**< */, 227 uint32_t cmap /**< */) 228 { 229 static const xcb_protocol_request_t xcb_req = { 230 /* count */ 2, 231 /* ext */ &xcb_xevie_id, 232 /* opcode */ XCB_XEVIE_END, 233 /* isvoid */ 0 234 }; 235 236 struct iovec xcb_parts[4]; 237 xcb_xevie_end_cookie_t xcb_ret; 238 xcb_xevie_end_request_t xcb_out; 239 240 xcb_out.cmap = cmap; 241 242 xcb_parts[2].iov_base = (char *) &xcb_out; 243 xcb_parts[2].iov_len = sizeof(xcb_out); 244 xcb_parts[3].iov_base = 0; 245 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 246 247 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); 248 return xcb_ret; 249 } 250 251 252 /***************************************************************************** 253 ** 254 ** xcb_xevie_end_cookie_t xcb_xevie_end_unchecked 255 ** 256 ** @param xcb_connection_t *c 257 ** @param uint32_t cmap 258 ** @returns xcb_xevie_end_cookie_t 259 ** 260 *****************************************************************************/ 261 262 xcb_xevie_end_cookie_t 263 xcb_xevie_end_unchecked (xcb_connection_t *c /**< */, 264 uint32_t cmap /**< */) 265 { 266 static const xcb_protocol_request_t xcb_req = { 267 /* count */ 2, 268 /* ext */ &xcb_xevie_id, 269 /* opcode */ XCB_XEVIE_END, 270 /* isvoid */ 0 271 }; 272 273 struct iovec xcb_parts[4]; 274 xcb_xevie_end_cookie_t xcb_ret; 275 xcb_xevie_end_request_t xcb_out; 276 277 xcb_out.cmap = cmap; 278 279 xcb_parts[2].iov_base = (char *) &xcb_out; 280 xcb_parts[2].iov_len = sizeof(xcb_out); 281 xcb_parts[3].iov_base = 0; 282 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 283 284 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); 285 return xcb_ret; 286 } 287 288 289 /***************************************************************************** 290 ** 291 ** xcb_xevie_end_reply_t * xcb_xevie_end_reply 292 ** 293 ** @param xcb_connection_t *c 294 ** @param xcb_xevie_end_cookie_t cookie 295 ** @param xcb_generic_error_t **e 296 ** @returns xcb_xevie_end_reply_t * 297 ** 298 *****************************************************************************/ 299 300 xcb_xevie_end_reply_t * 301 xcb_xevie_end_reply (xcb_connection_t *c /**< */, 302 xcb_xevie_end_cookie_t cookie /**< */, 303 xcb_generic_error_t **e /**< */) 304 { 305 return (xcb_xevie_end_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); 306 } 307 308 309 /***************************************************************************** 310 ** 311 ** void xcb_xevie_event_next 312 ** 313 ** @param xcb_xevie_event_iterator_t *i 314 ** @returns void 315 ** 316 *****************************************************************************/ 317 318 void 319 xcb_xevie_event_next (xcb_xevie_event_iterator_t *i /**< */) 320 { 321 --i->rem; 322 ++i->data; 323 i->index += sizeof(xcb_xevie_event_t); 324 } 325 326 327 /***************************************************************************** 328 ** 329 ** xcb_generic_iterator_t xcb_xevie_event_end 330 ** 331 ** @param xcb_xevie_event_iterator_t i 332 ** @returns xcb_generic_iterator_t 333 ** 334 *****************************************************************************/ 335 336 xcb_generic_iterator_t 337 xcb_xevie_event_end (xcb_xevie_event_iterator_t i /**< */) 338 { 339 xcb_generic_iterator_t ret; 340 ret.data = i.data + i.rem; 341 ret.index = i.index + ((char *) ret.data - (char *) i.data); 342 ret.rem = 0; 343 return ret; 344 } 345 346 347 /***************************************************************************** 348 ** 349 ** xcb_xevie_send_cookie_t xcb_xevie_send 350 ** 351 ** @param xcb_connection_t *c 352 ** @param xcb_xevie_event_t event 353 ** @param uint32_t data_type 354 ** @returns xcb_xevie_send_cookie_t 355 ** 356 *****************************************************************************/ 357 358 xcb_xevie_send_cookie_t 359 xcb_xevie_send (xcb_connection_t *c /**< */, 360 xcb_xevie_event_t event /**< */, 361 uint32_t data_type /**< */) 362 { 363 static const xcb_protocol_request_t xcb_req = { 364 /* count */ 2, 365 /* ext */ &xcb_xevie_id, 366 /* opcode */ XCB_XEVIE_SEND, 367 /* isvoid */ 0 368 }; 369 370 struct iovec xcb_parts[4]; 371 xcb_xevie_send_cookie_t xcb_ret; 372 xcb_xevie_send_request_t xcb_out; 373 374 xcb_out.event = event; 375 xcb_out.data_type = data_type; 376 memset(xcb_out.pad0, 0, 64); 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_xevie_send_cookie_t xcb_xevie_send_unchecked 391 ** 392 ** @param xcb_connection_t *c 393 ** @param xcb_xevie_event_t event 394 ** @param uint32_t data_type 395 ** @returns xcb_xevie_send_cookie_t 396 ** 397 *****************************************************************************/ 398 399 xcb_xevie_send_cookie_t 400 xcb_xevie_send_unchecked (xcb_connection_t *c /**< */, 401 xcb_xevie_event_t event /**< */, 402 uint32_t data_type /**< */) 403 { 404 static const xcb_protocol_request_t xcb_req = { 405 /* count */ 2, 406 /* ext */ &xcb_xevie_id, 407 /* opcode */ XCB_XEVIE_SEND, 408 /* isvoid */ 0 409 }; 410 411 struct iovec xcb_parts[4]; 412 xcb_xevie_send_cookie_t xcb_ret; 413 xcb_xevie_send_request_t xcb_out; 414 415 xcb_out.event = event; 416 xcb_out.data_type = data_type; 417 memset(xcb_out.pad0, 0, 64); 418 419 xcb_parts[2].iov_base = (char *) &xcb_out; 420 xcb_parts[2].iov_len = sizeof(xcb_out); 421 xcb_parts[3].iov_base = 0; 422 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 423 424 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); 425 return xcb_ret; 426 } 427 428 429 /***************************************************************************** 430 ** 431 ** xcb_xevie_send_reply_t * xcb_xevie_send_reply 432 ** 433 ** @param xcb_connection_t *c 434 ** @param xcb_xevie_send_cookie_t cookie 435 ** @param xcb_generic_error_t **e 436 ** @returns xcb_xevie_send_reply_t * 437 ** 438 *****************************************************************************/ 439 440 xcb_xevie_send_reply_t * 441 xcb_xevie_send_reply (xcb_connection_t *c /**< */, 442 xcb_xevie_send_cookie_t cookie /**< */, 443 xcb_generic_error_t **e /**< */) 444 { 445 return (xcb_xevie_send_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); 446 } 447 448 449 /***************************************************************************** 450 ** 451 ** xcb_xevie_select_input_cookie_t xcb_xevie_select_input 452 ** 453 ** @param xcb_connection_t *c 454 ** @param uint32_t event_mask 455 ** @returns xcb_xevie_select_input_cookie_t 456 ** 457 *****************************************************************************/ 458 459 xcb_xevie_select_input_cookie_t 460 xcb_xevie_select_input (xcb_connection_t *c /**< */, 461 uint32_t event_mask /**< */) 462 { 463 static const xcb_protocol_request_t xcb_req = { 464 /* count */ 2, 465 /* ext */ &xcb_xevie_id, 466 /* opcode */ XCB_XEVIE_SELECT_INPUT, 467 /* isvoid */ 0 468 }; 469 470 struct iovec xcb_parts[4]; 471 xcb_xevie_select_input_cookie_t xcb_ret; 472 xcb_xevie_select_input_request_t xcb_out; 473 474 xcb_out.event_mask = event_mask; 475 476 xcb_parts[2].iov_base = (char *) &xcb_out; 477 xcb_parts[2].iov_len = sizeof(xcb_out); 478 xcb_parts[3].iov_base = 0; 479 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 480 481 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); 482 return xcb_ret; 483 } 484 485 486 /***************************************************************************** 487 ** 488 ** xcb_xevie_select_input_cookie_t xcb_xevie_select_input_unchecked 489 ** 490 ** @param xcb_connection_t *c 491 ** @param uint32_t event_mask 492 ** @returns xcb_xevie_select_input_cookie_t 493 ** 494 *****************************************************************************/ 495 496 xcb_xevie_select_input_cookie_t 497 xcb_xevie_select_input_unchecked (xcb_connection_t *c /**< */, 498 uint32_t event_mask /**< */) 499 { 500 static const xcb_protocol_request_t xcb_req = { 501 /* count */ 2, 502 /* ext */ &xcb_xevie_id, 503 /* opcode */ XCB_XEVIE_SELECT_INPUT, 504 /* isvoid */ 0 505 }; 506 507 struct iovec xcb_parts[4]; 508 xcb_xevie_select_input_cookie_t xcb_ret; 509 xcb_xevie_select_input_request_t xcb_out; 510 511 xcb_out.event_mask = event_mask; 512 513 xcb_parts[2].iov_base = (char *) &xcb_out; 514 xcb_parts[2].iov_len = sizeof(xcb_out); 515 xcb_parts[3].iov_base = 0; 516 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 517 518 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); 519 return xcb_ret; 520 } 521 522 523 /***************************************************************************** 524 ** 525 ** xcb_xevie_select_input_reply_t * xcb_xevie_select_input_reply 526 ** 527 ** @param xcb_connection_t *c 528 ** @param xcb_xevie_select_input_cookie_t cookie 529 ** @param xcb_generic_error_t **e 530 ** @returns xcb_xevie_select_input_reply_t * 531 ** 532 *****************************************************************************/ 533 534 xcb_xevie_select_input_reply_t * 535 xcb_xevie_select_input_reply (xcb_connection_t *c /**< */, 536 xcb_xevie_select_input_cookie_t cookie /**< */, 537 xcb_generic_error_t **e /**< */) 538 { 539 return (xcb_xevie_select_input_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); 540 } 541 542