jpayne@69: /* jpayne@69: * This file generated automatically from xevie.xml by c_client.py. jpayne@69: * Edit at your peril. jpayne@69: */ jpayne@69: jpayne@69: /** jpayne@69: * @defgroup XCB_Xevie_API XCB Xevie API jpayne@69: * @brief Xevie XCB Protocol Implementation. jpayne@69: * @{ jpayne@69: **/ jpayne@69: jpayne@69: #ifndef __XEVIE_H jpayne@69: #define __XEVIE_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_XEVIE_MAJOR_VERSION 1 jpayne@69: #define XCB_XEVIE_MINOR_VERSION 0 jpayne@69: jpayne@69: extern xcb_extension_t xcb_xevie_id; jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_xevie_query_version_cookie_t jpayne@69: **/ jpayne@69: typedef struct xcb_xevie_query_version_cookie_t { jpayne@69: unsigned int sequence; jpayne@69: } xcb_xevie_query_version_cookie_t; jpayne@69: jpayne@69: /** Opcode for xcb_xevie_query_version. */ jpayne@69: #define XCB_XEVIE_QUERY_VERSION 0 jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_xevie_query_version_request_t jpayne@69: **/ jpayne@69: typedef struct xcb_xevie_query_version_request_t { jpayne@69: uint8_t major_opcode; jpayne@69: uint8_t minor_opcode; jpayne@69: uint16_t length; jpayne@69: uint16_t client_major_version; jpayne@69: uint16_t client_minor_version; jpayne@69: } xcb_xevie_query_version_request_t; jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_xevie_query_version_reply_t jpayne@69: **/ jpayne@69: typedef struct xcb_xevie_query_version_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: uint16_t server_major_version; jpayne@69: uint16_t server_minor_version; jpayne@69: uint8_t pad1[20]; jpayne@69: } xcb_xevie_query_version_reply_t; jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_xevie_start_cookie_t jpayne@69: **/ jpayne@69: typedef struct xcb_xevie_start_cookie_t { jpayne@69: unsigned int sequence; jpayne@69: } xcb_xevie_start_cookie_t; jpayne@69: jpayne@69: /** Opcode for xcb_xevie_start. */ jpayne@69: #define XCB_XEVIE_START 1 jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_xevie_start_request_t jpayne@69: **/ jpayne@69: typedef struct xcb_xevie_start_request_t { jpayne@69: uint8_t major_opcode; jpayne@69: uint8_t minor_opcode; jpayne@69: uint16_t length; jpayne@69: uint32_t screen; jpayne@69: } xcb_xevie_start_request_t; jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_xevie_start_reply_t jpayne@69: **/ jpayne@69: typedef struct xcb_xevie_start_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: uint8_t pad1[24]; jpayne@69: } xcb_xevie_start_reply_t; jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_xevie_end_cookie_t jpayne@69: **/ jpayne@69: typedef struct xcb_xevie_end_cookie_t { jpayne@69: unsigned int sequence; jpayne@69: } xcb_xevie_end_cookie_t; jpayne@69: jpayne@69: /** Opcode for xcb_xevie_end. */ jpayne@69: #define XCB_XEVIE_END 2 jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_xevie_end_request_t jpayne@69: **/ jpayne@69: typedef struct xcb_xevie_end_request_t { jpayne@69: uint8_t major_opcode; jpayne@69: uint8_t minor_opcode; jpayne@69: uint16_t length; jpayne@69: uint32_t cmap; jpayne@69: } xcb_xevie_end_request_t; jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_xevie_end_reply_t jpayne@69: **/ jpayne@69: typedef struct xcb_xevie_end_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: uint8_t pad1[24]; jpayne@69: } xcb_xevie_end_reply_t; jpayne@69: jpayne@69: typedef enum xcb_xevie_datatype_t { jpayne@69: XCB_XEVIE_DATATYPE_UNMODIFIED = 0, jpayne@69: XCB_XEVIE_DATATYPE_MODIFIED = 1 jpayne@69: } xcb_xevie_datatype_t; jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_xevie_event_t jpayne@69: **/ jpayne@69: typedef struct xcb_xevie_event_t { jpayne@69: uint8_t pad0[32]; jpayne@69: } xcb_xevie_event_t; jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_xevie_event_iterator_t jpayne@69: **/ jpayne@69: typedef struct xcb_xevie_event_iterator_t { jpayne@69: xcb_xevie_event_t *data; jpayne@69: int rem; jpayne@69: int index; jpayne@69: } xcb_xevie_event_iterator_t; jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_xevie_send_cookie_t jpayne@69: **/ jpayne@69: typedef struct xcb_xevie_send_cookie_t { jpayne@69: unsigned int sequence; jpayne@69: } xcb_xevie_send_cookie_t; jpayne@69: jpayne@69: /** Opcode for xcb_xevie_send. */ jpayne@69: #define XCB_XEVIE_SEND 3 jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_xevie_send_request_t jpayne@69: **/ jpayne@69: typedef struct xcb_xevie_send_request_t { jpayne@69: uint8_t major_opcode; jpayne@69: uint8_t minor_opcode; jpayne@69: uint16_t length; jpayne@69: xcb_xevie_event_t event; jpayne@69: uint32_t data_type; jpayne@69: uint8_t pad0[64]; jpayne@69: } xcb_xevie_send_request_t; jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_xevie_send_reply_t jpayne@69: **/ jpayne@69: typedef struct xcb_xevie_send_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: uint8_t pad1[24]; jpayne@69: } xcb_xevie_send_reply_t; jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_xevie_select_input_cookie_t jpayne@69: **/ jpayne@69: typedef struct xcb_xevie_select_input_cookie_t { jpayne@69: unsigned int sequence; jpayne@69: } xcb_xevie_select_input_cookie_t; jpayne@69: jpayne@69: /** Opcode for xcb_xevie_select_input. */ jpayne@69: #define XCB_XEVIE_SELECT_INPUT 4 jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_xevie_select_input_request_t jpayne@69: **/ jpayne@69: typedef struct xcb_xevie_select_input_request_t { jpayne@69: uint8_t major_opcode; jpayne@69: uint8_t minor_opcode; jpayne@69: uint16_t length; jpayne@69: uint32_t event_mask; jpayne@69: } xcb_xevie_select_input_request_t; jpayne@69: jpayne@69: /** jpayne@69: * @brief xcb_xevie_select_input_reply_t jpayne@69: **/ jpayne@69: typedef struct xcb_xevie_select_input_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: uint8_t pad1[24]; jpayne@69: } xcb_xevie_select_input_reply_t; jpayne@69: jpayne@69: /** jpayne@69: * jpayne@69: * @param c The connection jpayne@69: * @return A cookie jpayne@69: * jpayne@69: * Delivers a request to the X server. jpayne@69: * jpayne@69: */ jpayne@69: xcb_xevie_query_version_cookie_t jpayne@69: xcb_xevie_query_version (xcb_connection_t *c, jpayne@69: uint16_t client_major_version, jpayne@69: uint16_t client_minor_version); jpayne@69: jpayne@69: /** jpayne@69: * jpayne@69: * @param c The connection jpayne@69: * @return A cookie jpayne@69: * jpayne@69: * Delivers a request to the X server. 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_xevie_query_version_cookie_t jpayne@69: xcb_xevie_query_version_unchecked (xcb_connection_t *c, jpayne@69: uint16_t client_major_version, jpayne@69: uint16_t client_minor_version); 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_xevie_query_version_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_xevie_query_version_reply_t * jpayne@69: xcb_xevie_query_version_reply (xcb_connection_t *c, jpayne@69: xcb_xevie_query_version_cookie_t cookie /**< */, jpayne@69: xcb_generic_error_t **e); jpayne@69: jpayne@69: /** jpayne@69: * jpayne@69: * @param c The connection jpayne@69: * @return A cookie jpayne@69: * jpayne@69: * Delivers a request to the X server. jpayne@69: * jpayne@69: */ jpayne@69: xcb_xevie_start_cookie_t jpayne@69: xcb_xevie_start (xcb_connection_t *c, jpayne@69: uint32_t screen); jpayne@69: jpayne@69: /** jpayne@69: * jpayne@69: * @param c The connection jpayne@69: * @return A cookie jpayne@69: * jpayne@69: * Delivers a request to the X server. 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_xevie_start_cookie_t jpayne@69: xcb_xevie_start_unchecked (xcb_connection_t *c, jpayne@69: uint32_t screen); 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_xevie_start_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_xevie_start_reply_t * jpayne@69: xcb_xevie_start_reply (xcb_connection_t *c, jpayne@69: xcb_xevie_start_cookie_t cookie /**< */, jpayne@69: xcb_generic_error_t **e); jpayne@69: jpayne@69: /** jpayne@69: * jpayne@69: * @param c The connection jpayne@69: * @return A cookie jpayne@69: * jpayne@69: * Delivers a request to the X server. jpayne@69: * jpayne@69: */ jpayne@69: xcb_xevie_end_cookie_t jpayne@69: xcb_xevie_end (xcb_connection_t *c, jpayne@69: uint32_t cmap); jpayne@69: jpayne@69: /** jpayne@69: * jpayne@69: * @param c The connection jpayne@69: * @return A cookie jpayne@69: * jpayne@69: * Delivers a request to the X server. 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_xevie_end_cookie_t jpayne@69: xcb_xevie_end_unchecked (xcb_connection_t *c, jpayne@69: uint32_t cmap); 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_xevie_end_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_xevie_end_reply_t * jpayne@69: xcb_xevie_end_reply (xcb_connection_t *c, jpayne@69: xcb_xevie_end_cookie_t cookie /**< */, jpayne@69: xcb_generic_error_t **e); jpayne@69: jpayne@69: /** jpayne@69: * Get the next element of the iterator jpayne@69: * @param i Pointer to a xcb_xevie_event_iterator_t jpayne@69: * jpayne@69: * Get the next element in the iterator. The member rem is jpayne@69: * decreased by one. The member data points to the next jpayne@69: * element. The member index is increased by sizeof(xcb_xevie_event_t) jpayne@69: */ jpayne@69: void jpayne@69: xcb_xevie_event_next (xcb_xevie_event_iterator_t *i); jpayne@69: jpayne@69: /** jpayne@69: * Return the iterator pointing to the last element jpayne@69: * @param i An xcb_xevie_event_iterator_t jpayne@69: * @return The iterator pointing to the last element jpayne@69: * jpayne@69: * Set the current element in the iterator to the last element. jpayne@69: * The member rem is set to 0. The member data points to the jpayne@69: * last element. jpayne@69: */ jpayne@69: xcb_generic_iterator_t jpayne@69: xcb_xevie_event_end (xcb_xevie_event_iterator_t i); jpayne@69: jpayne@69: /** jpayne@69: * jpayne@69: * @param c The connection jpayne@69: * @return A cookie jpayne@69: * jpayne@69: * Delivers a request to the X server. jpayne@69: * jpayne@69: */ jpayne@69: xcb_xevie_send_cookie_t jpayne@69: xcb_xevie_send (xcb_connection_t *c, jpayne@69: xcb_xevie_event_t event, jpayne@69: uint32_t data_type); jpayne@69: jpayne@69: /** jpayne@69: * jpayne@69: * @param c The connection jpayne@69: * @return A cookie jpayne@69: * jpayne@69: * Delivers a request to the X server. 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_xevie_send_cookie_t jpayne@69: xcb_xevie_send_unchecked (xcb_connection_t *c, jpayne@69: xcb_xevie_event_t event, jpayne@69: uint32_t data_type); 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_xevie_send_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_xevie_send_reply_t * jpayne@69: xcb_xevie_send_reply (xcb_connection_t *c, jpayne@69: xcb_xevie_send_cookie_t cookie /**< */, jpayne@69: xcb_generic_error_t **e); jpayne@69: jpayne@69: /** jpayne@69: * jpayne@69: * @param c The connection jpayne@69: * @return A cookie jpayne@69: * jpayne@69: * Delivers a request to the X server. jpayne@69: * jpayne@69: */ jpayne@69: xcb_xevie_select_input_cookie_t jpayne@69: xcb_xevie_select_input (xcb_connection_t *c, jpayne@69: uint32_t event_mask); jpayne@69: jpayne@69: /** jpayne@69: * jpayne@69: * @param c The connection jpayne@69: * @return A cookie jpayne@69: * jpayne@69: * Delivers a request to the X server. 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_xevie_select_input_cookie_t jpayne@69: xcb_xevie_select_input_unchecked (xcb_connection_t *c, jpayne@69: uint32_t event_mask); 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_xevie_select_input_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_xevie_select_input_reply_t * jpayne@69: xcb_xevie_select_input_reply (xcb_connection_t *c, jpayne@69: xcb_xevie_select_input_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: */