annotate CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/include/xcb/bigreq.h @ 69:33d812a61356

planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author jpayne
date Tue, 18 Mar 2025 17:55:14 -0400
parents
children
rev   line source
jpayne@69 1 /*
jpayne@69 2 * This file generated automatically from bigreq.xml by c_client.py.
jpayne@69 3 * Edit at your peril.
jpayne@69 4 */
jpayne@69 5
jpayne@69 6 /**
jpayne@69 7 * @defgroup XCB_BigRequests_API XCB BigRequests API
jpayne@69 8 * @brief BigRequests XCB Protocol Implementation.
jpayne@69 9 * @{
jpayne@69 10 **/
jpayne@69 11
jpayne@69 12 #ifndef __BIGREQ_H
jpayne@69 13 #define __BIGREQ_H
jpayne@69 14
jpayne@69 15 #include "xcb.h"
jpayne@69 16
jpayne@69 17 #ifdef __cplusplus
jpayne@69 18 extern "C" {
jpayne@69 19 #endif
jpayne@69 20
jpayne@69 21 #define XCB_BIGREQUESTS_MAJOR_VERSION 0
jpayne@69 22 #define XCB_BIGREQUESTS_MINOR_VERSION 0
jpayne@69 23
jpayne@69 24 extern xcb_extension_t xcb_big_requests_id;
jpayne@69 25
jpayne@69 26 /**
jpayne@69 27 * @brief xcb_big_requests_enable_cookie_t
jpayne@69 28 **/
jpayne@69 29 typedef struct xcb_big_requests_enable_cookie_t {
jpayne@69 30 unsigned int sequence;
jpayne@69 31 } xcb_big_requests_enable_cookie_t;
jpayne@69 32
jpayne@69 33 /** Opcode for xcb_big_requests_enable. */
jpayne@69 34 #define XCB_BIG_REQUESTS_ENABLE 0
jpayne@69 35
jpayne@69 36 /**
jpayne@69 37 * @brief xcb_big_requests_enable_request_t
jpayne@69 38 **/
jpayne@69 39 typedef struct xcb_big_requests_enable_request_t {
jpayne@69 40 uint8_t major_opcode;
jpayne@69 41 uint8_t minor_opcode;
jpayne@69 42 uint16_t length;
jpayne@69 43 } xcb_big_requests_enable_request_t;
jpayne@69 44
jpayne@69 45 /**
jpayne@69 46 * @brief xcb_big_requests_enable_reply_t
jpayne@69 47 **/
jpayne@69 48 typedef struct xcb_big_requests_enable_reply_t {
jpayne@69 49 uint8_t response_type;
jpayne@69 50 uint8_t pad0;
jpayne@69 51 uint16_t sequence;
jpayne@69 52 uint32_t length;
jpayne@69 53 uint32_t maximum_request_length;
jpayne@69 54 } xcb_big_requests_enable_reply_t;
jpayne@69 55
jpayne@69 56 /**
jpayne@69 57 * @brief Enable the BIG-REQUESTS extension
jpayne@69 58 *
jpayne@69 59 * @param c The connection
jpayne@69 60 * @return A cookie
jpayne@69 61 *
jpayne@69 62 * This enables the BIG-REQUESTS extension, which allows for requests larger than
jpayne@69 63 * 262140 bytes in length. When enabled, if the 16-bit length field is zero, it
jpayne@69 64 * is immediately followed by a 32-bit length field specifying the length of the
jpayne@69 65 * request in 4-byte units.
jpayne@69 66 *
jpayne@69 67 */
jpayne@69 68 xcb_big_requests_enable_cookie_t
jpayne@69 69 xcb_big_requests_enable (xcb_connection_t *c);
jpayne@69 70
jpayne@69 71 /**
jpayne@69 72 * @brief Enable the BIG-REQUESTS extension
jpayne@69 73 *
jpayne@69 74 * @param c The connection
jpayne@69 75 * @return A cookie
jpayne@69 76 *
jpayne@69 77 * This enables the BIG-REQUESTS extension, which allows for requests larger than
jpayne@69 78 * 262140 bytes in length. When enabled, if the 16-bit length field is zero, it
jpayne@69 79 * is immediately followed by a 32-bit length field specifying the length of the
jpayne@69 80 * request in 4-byte units.
jpayne@69 81 *
jpayne@69 82 * This form can be used only if the request will cause
jpayne@69 83 * a reply to be generated. Any returned error will be
jpayne@69 84 * placed in the event queue.
jpayne@69 85 */
jpayne@69 86 xcb_big_requests_enable_cookie_t
jpayne@69 87 xcb_big_requests_enable_unchecked (xcb_connection_t *c);
jpayne@69 88
jpayne@69 89 /**
jpayne@69 90 * Return the reply
jpayne@69 91 * @param c The connection
jpayne@69 92 * @param cookie The cookie
jpayne@69 93 * @param e The xcb_generic_error_t supplied
jpayne@69 94 *
jpayne@69 95 * Returns the reply of the request asked by
jpayne@69 96 *
jpayne@69 97 * The parameter @p e supplied to this function must be NULL if
jpayne@69 98 * xcb_big_requests_enable_unchecked(). is used.
jpayne@69 99 * Otherwise, it stores the error if any.
jpayne@69 100 *
jpayne@69 101 * The returned value must be freed by the caller using free().
jpayne@69 102 */
jpayne@69 103 xcb_big_requests_enable_reply_t *
jpayne@69 104 xcb_big_requests_enable_reply (xcb_connection_t *c,
jpayne@69 105 xcb_big_requests_enable_cookie_t cookie /**< */,
jpayne@69 106 xcb_generic_error_t **e);
jpayne@69 107
jpayne@69 108
jpayne@69 109 #ifdef __cplusplus
jpayne@69 110 }
jpayne@69 111 #endif
jpayne@69 112
jpayne@69 113 #endif
jpayne@69 114
jpayne@69 115 /**
jpayne@69 116 * @}
jpayne@69 117 */