jpayne@69: /* jpayne@69: * This file generated automatically from bigreq.xml by c_client.py. jpayne@69: * Edit at your peril. jpayne@69: */ jpayne@69: jpayne@69: /** jpayne@69: * @defgroup XCB_BigRequests_API XCB BigRequests API jpayne@69: * @brief BigRequests XCB Protocol Implementation. jpayne@69: * @{ jpayne@69: **/ jpayne@69: jpayne@69: #ifndef __BIGREQ_H jpayne@69: #define __BIGREQ_H jpayne@69: jpayne@69: #include "xcb.h" jpayne@69: jpayne@69: #ifdef __cplusplus jpayne@69: extern "C" { jpayne@69: #endif jpayne@69: jpayne@69: #define XCB_BIGREQUESTS_MAJOR_VERSION 0 jpayne@69: #define XCB_BIGREQUESTS_MINOR_VERSION 0 jpayne@69: jpayne@69: extern xcb_extension_t xcb_big_requests_id; jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_big_requests_enable_cookie_t jpayne@69: **/ jpayne@69: typedef struct xcb_big_requests_enable_cookie_t { jpayne@69: unsigned int sequence; jpayne@69: } xcb_big_requests_enable_cookie_t; jpayne@69: jpayne@69: /** Opcode for xcb_big_requests_enable. */ jpayne@69: #define XCB_BIG_REQUESTS_ENABLE 0 jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_big_requests_enable_request_t jpayne@69: **/ jpayne@69: typedef struct xcb_big_requests_enable_request_t { jpayne@69: uint8_t major_opcode; jpayne@69: uint8_t minor_opcode; jpayne@69: uint16_t length; jpayne@69: } xcb_big_requests_enable_request_t; jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_big_requests_enable_reply_t jpayne@69: **/ jpayne@69: typedef struct xcb_big_requests_enable_reply_t { jpayne@69: uint8_t response_type; jpayne@69: uint8_t pad0; jpayne@69: uint16_t sequence; jpayne@69: uint32_t length; jpayne@69: uint32_t maximum_request_length; jpayne@69: } xcb_big_requests_enable_reply_t; jpayne@69: jpayne@69: /** jpayne@69: * @brief Enable the BIG-REQUESTS extension jpayne@69: * jpayne@69: * @param c The connection jpayne@69: * @return A cookie jpayne@69: * jpayne@69: * This enables the BIG-REQUESTS extension, which allows for requests larger than jpayne@69: * 262140 bytes in length. When enabled, if the 16-bit length field is zero, it jpayne@69: * is immediately followed by a 32-bit length field specifying the length of the jpayne@69: * request in 4-byte units. jpayne@69: * jpayne@69: */ jpayne@69: xcb_big_requests_enable_cookie_t jpayne@69: xcb_big_requests_enable (xcb_connection_t *c); jpayne@69: jpayne@69: /** jpayne@69: * @brief Enable the BIG-REQUESTS extension jpayne@69: * jpayne@69: * @param c The connection jpayne@69: * @return A cookie jpayne@69: * jpayne@69: * This enables the BIG-REQUESTS extension, which allows for requests larger than jpayne@69: * 262140 bytes in length. When enabled, if the 16-bit length field is zero, it jpayne@69: * is immediately followed by a 32-bit length field specifying the length of the jpayne@69: * request in 4-byte units. jpayne@69: * jpayne@69: * This form can be used only if the request will cause jpayne@69: * a reply to be generated. Any returned error will be jpayne@69: * placed in the event queue. jpayne@69: */ jpayne@69: xcb_big_requests_enable_cookie_t jpayne@69: xcb_big_requests_enable_unchecked (xcb_connection_t *c); jpayne@69: jpayne@69: /** jpayne@69: * Return the reply jpayne@69: * @param c The connection jpayne@69: * @param cookie The cookie jpayne@69: * @param e The xcb_generic_error_t supplied jpayne@69: * jpayne@69: * Returns the reply of the request asked by jpayne@69: * jpayne@69: * The parameter @p e supplied to this function must be NULL if jpayne@69: * xcb_big_requests_enable_unchecked(). is used. jpayne@69: * Otherwise, it stores the error if any. jpayne@69: * jpayne@69: * The returned value must be freed by the caller using free(). jpayne@69: */ jpayne@69: xcb_big_requests_enable_reply_t * jpayne@69: xcb_big_requests_enable_reply (xcb_connection_t *c, jpayne@69: xcb_big_requests_enable_cookie_t cookie /**< */, jpayne@69: xcb_generic_error_t **e); jpayne@69: jpayne@69: jpayne@69: #ifdef __cplusplus jpayne@69: } jpayne@69: #endif jpayne@69: jpayne@69: #endif jpayne@69: jpayne@69: /** jpayne@69: * @} jpayne@69: */