1 /* 2 * This file generated automatically from xtest.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 "xtest.h" 15 16 #define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) 17 #include "xproto.h" 18 19 xcb_extension_t xcb_test_id = { "XTEST", 0 }; 20 21 xcb_test_get_version_cookie_t 22 xcb_test_get_version (xcb_connection_t *c /**< */, 23 uint8_t major_version /**< */, 24 uint16_t minor_version /**< */) 25 { 26 static const xcb_protocol_request_t xcb_req = { 27 /* count */ 2, 28 /* ext */ &xcb_test_id, 29 /* opcode */ XCB_TEST_GET_VERSION, 30 /* isvoid */ 0 31 }; 32 33 struct iovec xcb_parts[4]; 34 xcb_test_get_version_cookie_t xcb_ret; 35 xcb_test_get_version_request_t xcb_out; 36 37 xcb_out.major_version = major_version; 38 xcb_out.pad0 = 0; 39 xcb_out.minor_version = 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 50 xcb_test_get_version_cookie_t 51 xcb_test_get_version_unchecked (xcb_connection_t *c /**< */, 52 uint8_t major_version /**< */, 53 uint16_t minor_version /**< */) 54 { 55 static const xcb_protocol_request_t xcb_req = { 56 /* count */ 2, 57 /* ext */ &xcb_test_id, 58 /* opcode */ XCB_TEST_GET_VERSION, 59 /* isvoid */ 0 60 }; 61 62 struct iovec xcb_parts[4]; 63 xcb_test_get_version_cookie_t xcb_ret; 64 xcb_test_get_version_request_t xcb_out; 65 66 xcb_out.major_version = major_version; 67 xcb_out.pad0 = 0; 68 xcb_out.minor_version = minor_version; 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_test_get_version_reply_t * 80 xcb_test_get_version_reply (xcb_connection_t *c /**< */, 81 xcb_test_get_version_cookie_t cookie /**< */, 82 xcb_generic_error_t **e /**< */) 83 { 84 return (xcb_test_get_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); 85 } 86 87 xcb_test_compare_cursor_cookie_t 88 xcb_test_compare_cursor (xcb_connection_t *c /**< */, 89 xcb_window_t window /**< */, 90 xcb_cursor_t cursor /**< */) 91 { 92 static const xcb_protocol_request_t xcb_req = { 93 /* count */ 2, 94 /* ext */ &xcb_test_id, 95 /* opcode */ XCB_TEST_COMPARE_CURSOR, 96 /* isvoid */ 0 97 }; 98 99 struct iovec xcb_parts[4]; 100 xcb_test_compare_cursor_cookie_t xcb_ret; 101 xcb_test_compare_cursor_request_t xcb_out; 102 103 xcb_out.window = window; 104 xcb_out.cursor = cursor; 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 115 xcb_test_compare_cursor_cookie_t 116 xcb_test_compare_cursor_unchecked (xcb_connection_t *c /**< */, 117 xcb_window_t window /**< */, 118 xcb_cursor_t cursor /**< */) 119 { 120 static const xcb_protocol_request_t xcb_req = { 121 /* count */ 2, 122 /* ext */ &xcb_test_id, 123 /* opcode */ XCB_TEST_COMPARE_CURSOR, 124 /* isvoid */ 0 125 }; 126 127 struct iovec xcb_parts[4]; 128 xcb_test_compare_cursor_cookie_t xcb_ret; 129 xcb_test_compare_cursor_request_t xcb_out; 130 131 xcb_out.window = window; 132 xcb_out.cursor = cursor; 133 134 xcb_parts[2].iov_base = (char *) &xcb_out; 135 xcb_parts[2].iov_len = sizeof(xcb_out); 136 xcb_parts[3].iov_base = 0; 137 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 138 139 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); 140 return xcb_ret; 141 } 142 143 xcb_test_compare_cursor_reply_t * 144 xcb_test_compare_cursor_reply (xcb_connection_t *c /**< */, 145 xcb_test_compare_cursor_cookie_t cookie /**< */, 146 xcb_generic_error_t **e /**< */) 147 { 148 return (xcb_test_compare_cursor_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); 149 } 150 151 xcb_void_cookie_t 152 xcb_test_fake_input_checked (xcb_connection_t *c /**< */, 153 uint8_t type /**< */, 154 uint8_t detail /**< */, 155 uint32_t time /**< */, 156 xcb_window_t root /**< */, 157 int16_t rootX /**< */, 158 int16_t rootY /**< */, 159 uint8_t deviceid /**< */) 160 { 161 static const xcb_protocol_request_t xcb_req = { 162 /* count */ 2, 163 /* ext */ &xcb_test_id, 164 /* opcode */ XCB_TEST_FAKE_INPUT, 165 /* isvoid */ 1 166 }; 167 168 struct iovec xcb_parts[4]; 169 xcb_void_cookie_t xcb_ret; 170 xcb_test_fake_input_request_t xcb_out; 171 172 xcb_out.type = type; 173 xcb_out.detail = detail; 174 memset(xcb_out.pad0, 0, 2); 175 xcb_out.time = time; 176 xcb_out.root = root; 177 memset(xcb_out.pad1, 0, 8); 178 xcb_out.rootX = rootX; 179 xcb_out.rootY = rootY; 180 memset(xcb_out.pad2, 0, 7); 181 xcb_out.deviceid = deviceid; 182 183 xcb_parts[2].iov_base = (char *) &xcb_out; 184 xcb_parts[2].iov_len = sizeof(xcb_out); 185 xcb_parts[3].iov_base = 0; 186 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 187 188 xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); 189 return xcb_ret; 190 } 191 192 xcb_void_cookie_t 193 xcb_test_fake_input (xcb_connection_t *c /**< */, 194 uint8_t type /**< */, 195 uint8_t detail /**< */, 196 uint32_t time /**< */, 197 xcb_window_t root /**< */, 198 int16_t rootX /**< */, 199 int16_t rootY /**< */, 200 uint8_t deviceid /**< */) 201 { 202 static const xcb_protocol_request_t xcb_req = { 203 /* count */ 2, 204 /* ext */ &xcb_test_id, 205 /* opcode */ XCB_TEST_FAKE_INPUT, 206 /* isvoid */ 1 207 }; 208 209 struct iovec xcb_parts[4]; 210 xcb_void_cookie_t xcb_ret; 211 xcb_test_fake_input_request_t xcb_out; 212 213 xcb_out.type = type; 214 xcb_out.detail = detail; 215 memset(xcb_out.pad0, 0, 2); 216 xcb_out.time = time; 217 xcb_out.root = root; 218 memset(xcb_out.pad1, 0, 8); 219 xcb_out.rootX = rootX; 220 xcb_out.rootY = rootY; 221 memset(xcb_out.pad2, 0, 7); 222 xcb_out.deviceid = deviceid; 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 xcb_void_cookie_t 234 xcb_test_grab_control_checked (xcb_connection_t *c /**< */, 235 uint8_t impervious /**< */) 236 { 237 static const xcb_protocol_request_t xcb_req = { 238 /* count */ 2, 239 /* ext */ &xcb_test_id, 240 /* opcode */ XCB_TEST_GRAB_CONTROL, 241 /* isvoid */ 1 242 }; 243 244 struct iovec xcb_parts[4]; 245 xcb_void_cookie_t xcb_ret; 246 xcb_test_grab_control_request_t xcb_out; 247 248 xcb_out.impervious = impervious; 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, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); 257 return xcb_ret; 258 } 259 260 xcb_void_cookie_t 261 xcb_test_grab_control (xcb_connection_t *c /**< */, 262 uint8_t impervious /**< */) 263 { 264 static const xcb_protocol_request_t xcb_req = { 265 /* count */ 2, 266 /* ext */ &xcb_test_id, 267 /* opcode */ XCB_TEST_GRAB_CONTROL, 268 /* isvoid */ 1 269 }; 270 271 struct iovec xcb_parts[4]; 272 xcb_void_cookie_t xcb_ret; 273 xcb_test_grab_control_request_t xcb_out; 274 275 xcb_out.impervious = impervious; 276 memset(xcb_out.pad0, 0, 3); 277 278 xcb_parts[2].iov_base = (char *) &xcb_out; 279 xcb_parts[2].iov_len = sizeof(xcb_out); 280 xcb_parts[3].iov_base = 0; 281 xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; 282 283 xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); 284 return xcb_ret; 285 } 286 287