1971bb1a5SLionel Sambuc /* 2971bb1a5SLionel Sambuc * This file generated automatically from damage.xml by c_client.py. 3971bb1a5SLionel Sambuc * Edit at your peril. 4971bb1a5SLionel Sambuc */ 5971bb1a5SLionel Sambuc 6971bb1a5SLionel Sambuc /** 7971bb1a5SLionel Sambuc * @defgroup XCB_Damage_API XCB Damage API 8971bb1a5SLionel Sambuc * @brief Damage XCB Protocol Implementation. 9971bb1a5SLionel Sambuc * @{ 10971bb1a5SLionel Sambuc **/ 11971bb1a5SLionel Sambuc 12971bb1a5SLionel Sambuc #ifndef __DAMAGE_H 13971bb1a5SLionel Sambuc #define __DAMAGE_H 14971bb1a5SLionel Sambuc 15971bb1a5SLionel Sambuc #include "xcb.h" 16971bb1a5SLionel Sambuc #include "xproto.h" 17971bb1a5SLionel Sambuc #include "xfixes.h" 18971bb1a5SLionel Sambuc 19971bb1a5SLionel Sambuc #ifdef __cplusplus 20971bb1a5SLionel Sambuc extern "C" { 21971bb1a5SLionel Sambuc #endif 22971bb1a5SLionel Sambuc 23971bb1a5SLionel Sambuc #define XCB_DAMAGE_MAJOR_VERSION 1 24971bb1a5SLionel Sambuc #define XCB_DAMAGE_MINOR_VERSION 1 25971bb1a5SLionel Sambuc 26971bb1a5SLionel Sambuc extern xcb_extension_t xcb_damage_id; 27971bb1a5SLionel Sambuc 28971bb1a5SLionel Sambuc typedef uint32_t xcb_damage_damage_t; 29971bb1a5SLionel Sambuc 30971bb1a5SLionel Sambuc /** 31971bb1a5SLionel Sambuc * @brief xcb_damage_damage_iterator_t 32971bb1a5SLionel Sambuc **/ 33971bb1a5SLionel Sambuc typedef struct xcb_damage_damage_iterator_t { 34971bb1a5SLionel Sambuc xcb_damage_damage_t *data; /**< */ 35971bb1a5SLionel Sambuc int rem; /**< */ 36971bb1a5SLionel Sambuc int index; /**< */ 37971bb1a5SLionel Sambuc } xcb_damage_damage_iterator_t; 38971bb1a5SLionel Sambuc 39971bb1a5SLionel Sambuc typedef enum xcb_damage_report_level_t { 40*0a6a1f1dSLionel Sambuc XCB_DAMAGE_REPORT_LEVEL_RAW_RECTANGLES = 0, 41*0a6a1f1dSLionel Sambuc XCB_DAMAGE_REPORT_LEVEL_DELTA_RECTANGLES = 1, 42*0a6a1f1dSLionel Sambuc XCB_DAMAGE_REPORT_LEVEL_BOUNDING_BOX = 2, 43*0a6a1f1dSLionel Sambuc XCB_DAMAGE_REPORT_LEVEL_NON_EMPTY = 3 44971bb1a5SLionel Sambuc } xcb_damage_report_level_t; 45971bb1a5SLionel Sambuc 46971bb1a5SLionel Sambuc /** Opcode for xcb_damage_bad_damage. */ 47971bb1a5SLionel Sambuc #define XCB_DAMAGE_BAD_DAMAGE 0 48971bb1a5SLionel Sambuc 49971bb1a5SLionel Sambuc /** 50971bb1a5SLionel Sambuc * @brief xcb_damage_bad_damage_error_t 51971bb1a5SLionel Sambuc **/ 52971bb1a5SLionel Sambuc typedef struct xcb_damage_bad_damage_error_t { 53971bb1a5SLionel Sambuc uint8_t response_type; /**< */ 54971bb1a5SLionel Sambuc uint8_t error_code; /**< */ 55971bb1a5SLionel Sambuc uint16_t sequence; /**< */ 56971bb1a5SLionel Sambuc } xcb_damage_bad_damage_error_t; 57971bb1a5SLionel Sambuc 58971bb1a5SLionel Sambuc /** 59971bb1a5SLionel Sambuc * @brief xcb_damage_query_version_cookie_t 60971bb1a5SLionel Sambuc **/ 61971bb1a5SLionel Sambuc typedef struct xcb_damage_query_version_cookie_t { 62971bb1a5SLionel Sambuc unsigned int sequence; /**< */ 63971bb1a5SLionel Sambuc } xcb_damage_query_version_cookie_t; 64971bb1a5SLionel Sambuc 65971bb1a5SLionel Sambuc /** Opcode for xcb_damage_query_version. */ 66971bb1a5SLionel Sambuc #define XCB_DAMAGE_QUERY_VERSION 0 67971bb1a5SLionel Sambuc 68971bb1a5SLionel Sambuc /** 69971bb1a5SLionel Sambuc * @brief xcb_damage_query_version_request_t 70971bb1a5SLionel Sambuc **/ 71971bb1a5SLionel Sambuc typedef struct xcb_damage_query_version_request_t { 72971bb1a5SLionel Sambuc uint8_t major_opcode; /**< */ 73971bb1a5SLionel Sambuc uint8_t minor_opcode; /**< */ 74971bb1a5SLionel Sambuc uint16_t length; /**< */ 75971bb1a5SLionel Sambuc uint32_t client_major_version; /**< */ 76971bb1a5SLionel Sambuc uint32_t client_minor_version; /**< */ 77971bb1a5SLionel Sambuc } xcb_damage_query_version_request_t; 78971bb1a5SLionel Sambuc 79971bb1a5SLionel Sambuc /** 80971bb1a5SLionel Sambuc * @brief xcb_damage_query_version_reply_t 81971bb1a5SLionel Sambuc **/ 82971bb1a5SLionel Sambuc typedef struct xcb_damage_query_version_reply_t { 83971bb1a5SLionel Sambuc uint8_t response_type; /**< */ 84971bb1a5SLionel Sambuc uint8_t pad0; /**< */ 85971bb1a5SLionel Sambuc uint16_t sequence; /**< */ 86971bb1a5SLionel Sambuc uint32_t length; /**< */ 87971bb1a5SLionel Sambuc uint32_t major_version; /**< */ 88971bb1a5SLionel Sambuc uint32_t minor_version; /**< */ 89971bb1a5SLionel Sambuc uint8_t pad1[16]; /**< */ 90971bb1a5SLionel Sambuc } xcb_damage_query_version_reply_t; 91971bb1a5SLionel Sambuc 92971bb1a5SLionel Sambuc /** Opcode for xcb_damage_create. */ 93971bb1a5SLionel Sambuc #define XCB_DAMAGE_CREATE 1 94971bb1a5SLionel Sambuc 95971bb1a5SLionel Sambuc /** 96971bb1a5SLionel Sambuc * @brief xcb_damage_create_request_t 97971bb1a5SLionel Sambuc **/ 98971bb1a5SLionel Sambuc typedef struct xcb_damage_create_request_t { 99971bb1a5SLionel Sambuc uint8_t major_opcode; /**< */ 100971bb1a5SLionel Sambuc uint8_t minor_opcode; /**< */ 101971bb1a5SLionel Sambuc uint16_t length; /**< */ 102971bb1a5SLionel Sambuc xcb_damage_damage_t damage; /**< */ 103971bb1a5SLionel Sambuc xcb_drawable_t drawable; /**< */ 104971bb1a5SLionel Sambuc uint8_t level; /**< */ 105971bb1a5SLionel Sambuc uint8_t pad0[3]; /**< */ 106971bb1a5SLionel Sambuc } xcb_damage_create_request_t; 107971bb1a5SLionel Sambuc 108971bb1a5SLionel Sambuc /** Opcode for xcb_damage_destroy. */ 109971bb1a5SLionel Sambuc #define XCB_DAMAGE_DESTROY 2 110971bb1a5SLionel Sambuc 111971bb1a5SLionel Sambuc /** 112971bb1a5SLionel Sambuc * @brief xcb_damage_destroy_request_t 113971bb1a5SLionel Sambuc **/ 114971bb1a5SLionel Sambuc typedef struct xcb_damage_destroy_request_t { 115971bb1a5SLionel Sambuc uint8_t major_opcode; /**< */ 116971bb1a5SLionel Sambuc uint8_t minor_opcode; /**< */ 117971bb1a5SLionel Sambuc uint16_t length; /**< */ 118971bb1a5SLionel Sambuc xcb_damage_damage_t damage; /**< */ 119971bb1a5SLionel Sambuc } xcb_damage_destroy_request_t; 120971bb1a5SLionel Sambuc 121971bb1a5SLionel Sambuc /** Opcode for xcb_damage_subtract. */ 122971bb1a5SLionel Sambuc #define XCB_DAMAGE_SUBTRACT 3 123971bb1a5SLionel Sambuc 124971bb1a5SLionel Sambuc /** 125971bb1a5SLionel Sambuc * @brief xcb_damage_subtract_request_t 126971bb1a5SLionel Sambuc **/ 127971bb1a5SLionel Sambuc typedef struct xcb_damage_subtract_request_t { 128971bb1a5SLionel Sambuc uint8_t major_opcode; /**< */ 129971bb1a5SLionel Sambuc uint8_t minor_opcode; /**< */ 130971bb1a5SLionel Sambuc uint16_t length; /**< */ 131971bb1a5SLionel Sambuc xcb_damage_damage_t damage; /**< */ 132971bb1a5SLionel Sambuc xcb_xfixes_region_t repair; /**< */ 133971bb1a5SLionel Sambuc xcb_xfixes_region_t parts; /**< */ 134971bb1a5SLionel Sambuc } xcb_damage_subtract_request_t; 135971bb1a5SLionel Sambuc 136971bb1a5SLionel Sambuc /** Opcode for xcb_damage_add. */ 137971bb1a5SLionel Sambuc #define XCB_DAMAGE_ADD 4 138971bb1a5SLionel Sambuc 139971bb1a5SLionel Sambuc /** 140971bb1a5SLionel Sambuc * @brief xcb_damage_add_request_t 141971bb1a5SLionel Sambuc **/ 142971bb1a5SLionel Sambuc typedef struct xcb_damage_add_request_t { 143971bb1a5SLionel Sambuc uint8_t major_opcode; /**< */ 144971bb1a5SLionel Sambuc uint8_t minor_opcode; /**< */ 145971bb1a5SLionel Sambuc uint16_t length; /**< */ 146971bb1a5SLionel Sambuc xcb_drawable_t drawable; /**< */ 147971bb1a5SLionel Sambuc xcb_xfixes_region_t region; /**< */ 148971bb1a5SLionel Sambuc } xcb_damage_add_request_t; 149971bb1a5SLionel Sambuc 150971bb1a5SLionel Sambuc /** Opcode for xcb_damage_notify. */ 151971bb1a5SLionel Sambuc #define XCB_DAMAGE_NOTIFY 0 152971bb1a5SLionel Sambuc 153971bb1a5SLionel Sambuc /** 154971bb1a5SLionel Sambuc * @brief xcb_damage_notify_event_t 155971bb1a5SLionel Sambuc **/ 156971bb1a5SLionel Sambuc typedef struct xcb_damage_notify_event_t { 157971bb1a5SLionel Sambuc uint8_t response_type; /**< */ 158971bb1a5SLionel Sambuc uint8_t level; /**< */ 159971bb1a5SLionel Sambuc uint16_t sequence; /**< */ 160971bb1a5SLionel Sambuc xcb_drawable_t drawable; /**< */ 161971bb1a5SLionel Sambuc xcb_damage_damage_t damage; /**< */ 162971bb1a5SLionel Sambuc xcb_timestamp_t timestamp; /**< */ 163971bb1a5SLionel Sambuc xcb_rectangle_t area; /**< */ 164971bb1a5SLionel Sambuc xcb_rectangle_t geometry; /**< */ 165971bb1a5SLionel Sambuc } xcb_damage_notify_event_t; 166971bb1a5SLionel Sambuc 167971bb1a5SLionel Sambuc /** 168971bb1a5SLionel Sambuc * Get the next element of the iterator 169971bb1a5SLionel Sambuc * @param i Pointer to a xcb_damage_damage_iterator_t 170971bb1a5SLionel Sambuc * 171971bb1a5SLionel Sambuc * Get the next element in the iterator. The member rem is 172971bb1a5SLionel Sambuc * decreased by one. The member data points to the next 173971bb1a5SLionel Sambuc * element. The member index is increased by sizeof(xcb_damage_damage_t) 174971bb1a5SLionel Sambuc */ 175971bb1a5SLionel Sambuc void 176971bb1a5SLionel Sambuc xcb_damage_damage_next (xcb_damage_damage_iterator_t *i /**< */); 177971bb1a5SLionel Sambuc 178971bb1a5SLionel Sambuc /** 179971bb1a5SLionel Sambuc * Return the iterator pointing to the last element 180971bb1a5SLionel Sambuc * @param i An xcb_damage_damage_iterator_t 181971bb1a5SLionel Sambuc * @return The iterator pointing to the last element 182971bb1a5SLionel Sambuc * 183971bb1a5SLionel Sambuc * Set the current element in the iterator to the last element. 184971bb1a5SLionel Sambuc * The member rem is set to 0. The member data points to the 185971bb1a5SLionel Sambuc * last element. 186971bb1a5SLionel Sambuc */ 187971bb1a5SLionel Sambuc xcb_generic_iterator_t 188971bb1a5SLionel Sambuc xcb_damage_damage_end (xcb_damage_damage_iterator_t i /**< */); 189971bb1a5SLionel Sambuc 190971bb1a5SLionel Sambuc /** 191971bb1a5SLionel Sambuc * 192971bb1a5SLionel Sambuc * @param c The connection 193971bb1a5SLionel Sambuc * @return A cookie 194971bb1a5SLionel Sambuc * 195971bb1a5SLionel Sambuc * Delivers a request to the X server. 196971bb1a5SLionel Sambuc * 197971bb1a5SLionel Sambuc */ 198971bb1a5SLionel Sambuc xcb_damage_query_version_cookie_t 199971bb1a5SLionel Sambuc xcb_damage_query_version (xcb_connection_t *c /**< */, 200971bb1a5SLionel Sambuc uint32_t client_major_version /**< */, 201971bb1a5SLionel Sambuc uint32_t client_minor_version /**< */); 202971bb1a5SLionel Sambuc 203971bb1a5SLionel Sambuc /** 204971bb1a5SLionel Sambuc * 205971bb1a5SLionel Sambuc * @param c The connection 206971bb1a5SLionel Sambuc * @return A cookie 207971bb1a5SLionel Sambuc * 208971bb1a5SLionel Sambuc * Delivers a request to the X server. 209971bb1a5SLionel Sambuc * 210971bb1a5SLionel Sambuc * This form can be used only if the request will cause 211971bb1a5SLionel Sambuc * a reply to be generated. Any returned error will be 212971bb1a5SLionel Sambuc * placed in the event queue. 213971bb1a5SLionel Sambuc */ 214971bb1a5SLionel Sambuc xcb_damage_query_version_cookie_t 215971bb1a5SLionel Sambuc xcb_damage_query_version_unchecked (xcb_connection_t *c /**< */, 216971bb1a5SLionel Sambuc uint32_t client_major_version /**< */, 217971bb1a5SLionel Sambuc uint32_t client_minor_version /**< */); 218971bb1a5SLionel Sambuc 219971bb1a5SLionel Sambuc /** 220971bb1a5SLionel Sambuc * Return the reply 221971bb1a5SLionel Sambuc * @param c The connection 222971bb1a5SLionel Sambuc * @param cookie The cookie 223971bb1a5SLionel Sambuc * @param e The xcb_generic_error_t supplied 224971bb1a5SLionel Sambuc * 225971bb1a5SLionel Sambuc * Returns the reply of the request asked by 226971bb1a5SLionel Sambuc * 227971bb1a5SLionel Sambuc * The parameter @p e supplied to this function must be NULL if 228971bb1a5SLionel Sambuc * xcb_damage_query_version_unchecked(). is used. 229971bb1a5SLionel Sambuc * Otherwise, it stores the error if any. 230971bb1a5SLionel Sambuc * 231971bb1a5SLionel Sambuc * The returned value must be freed by the caller using free(). 232971bb1a5SLionel Sambuc */ 233971bb1a5SLionel Sambuc xcb_damage_query_version_reply_t * 234971bb1a5SLionel Sambuc xcb_damage_query_version_reply (xcb_connection_t *c /**< */, 235971bb1a5SLionel Sambuc xcb_damage_query_version_cookie_t cookie /**< */, 236971bb1a5SLionel Sambuc xcb_generic_error_t **e /**< */); 237971bb1a5SLionel Sambuc 238971bb1a5SLionel Sambuc /** 239971bb1a5SLionel Sambuc * 240971bb1a5SLionel Sambuc * @param c The connection 241971bb1a5SLionel Sambuc * @return A cookie 242971bb1a5SLionel Sambuc * 243971bb1a5SLionel Sambuc * Delivers a request to the X server. 244971bb1a5SLionel Sambuc * 245971bb1a5SLionel Sambuc * This form can be used only if the request will not cause 246971bb1a5SLionel Sambuc * a reply to be generated. Any returned error will be 247971bb1a5SLionel Sambuc * saved for handling by xcb_request_check(). 248971bb1a5SLionel Sambuc */ 249971bb1a5SLionel Sambuc xcb_void_cookie_t 250971bb1a5SLionel Sambuc xcb_damage_create_checked (xcb_connection_t *c /**< */, 251971bb1a5SLionel Sambuc xcb_damage_damage_t damage /**< */, 252971bb1a5SLionel Sambuc xcb_drawable_t drawable /**< */, 253971bb1a5SLionel Sambuc uint8_t level /**< */); 254971bb1a5SLionel Sambuc 255971bb1a5SLionel Sambuc /** 256971bb1a5SLionel Sambuc * 257971bb1a5SLionel Sambuc * @param c The connection 258971bb1a5SLionel Sambuc * @return A cookie 259971bb1a5SLionel Sambuc * 260971bb1a5SLionel Sambuc * Delivers a request to the X server. 261971bb1a5SLionel Sambuc * 262971bb1a5SLionel Sambuc */ 263971bb1a5SLionel Sambuc xcb_void_cookie_t 264971bb1a5SLionel Sambuc xcb_damage_create (xcb_connection_t *c /**< */, 265971bb1a5SLionel Sambuc xcb_damage_damage_t damage /**< */, 266971bb1a5SLionel Sambuc xcb_drawable_t drawable /**< */, 267971bb1a5SLionel Sambuc uint8_t level /**< */); 268971bb1a5SLionel Sambuc 269971bb1a5SLionel Sambuc /** 270971bb1a5SLionel Sambuc * 271971bb1a5SLionel Sambuc * @param c The connection 272971bb1a5SLionel Sambuc * @return A cookie 273971bb1a5SLionel Sambuc * 274971bb1a5SLionel Sambuc * Delivers a request to the X server. 275971bb1a5SLionel Sambuc * 276971bb1a5SLionel Sambuc * This form can be used only if the request will not cause 277971bb1a5SLionel Sambuc * a reply to be generated. Any returned error will be 278971bb1a5SLionel Sambuc * saved for handling by xcb_request_check(). 279971bb1a5SLionel Sambuc */ 280971bb1a5SLionel Sambuc xcb_void_cookie_t 281971bb1a5SLionel Sambuc xcb_damage_destroy_checked (xcb_connection_t *c /**< */, 282971bb1a5SLionel Sambuc xcb_damage_damage_t damage /**< */); 283971bb1a5SLionel Sambuc 284971bb1a5SLionel Sambuc /** 285971bb1a5SLionel Sambuc * 286971bb1a5SLionel Sambuc * @param c The connection 287971bb1a5SLionel Sambuc * @return A cookie 288971bb1a5SLionel Sambuc * 289971bb1a5SLionel Sambuc * Delivers a request to the X server. 290971bb1a5SLionel Sambuc * 291971bb1a5SLionel Sambuc */ 292971bb1a5SLionel Sambuc xcb_void_cookie_t 293971bb1a5SLionel Sambuc xcb_damage_destroy (xcb_connection_t *c /**< */, 294971bb1a5SLionel Sambuc xcb_damage_damage_t damage /**< */); 295971bb1a5SLionel Sambuc 296971bb1a5SLionel Sambuc /** 297971bb1a5SLionel Sambuc * 298971bb1a5SLionel Sambuc * @param c The connection 299971bb1a5SLionel Sambuc * @return A cookie 300971bb1a5SLionel Sambuc * 301971bb1a5SLionel Sambuc * Delivers a request to the X server. 302971bb1a5SLionel Sambuc * 303971bb1a5SLionel Sambuc * This form can be used only if the request will not cause 304971bb1a5SLionel Sambuc * a reply to be generated. Any returned error will be 305971bb1a5SLionel Sambuc * saved for handling by xcb_request_check(). 306971bb1a5SLionel Sambuc */ 307971bb1a5SLionel Sambuc xcb_void_cookie_t 308971bb1a5SLionel Sambuc xcb_damage_subtract_checked (xcb_connection_t *c /**< */, 309971bb1a5SLionel Sambuc xcb_damage_damage_t damage /**< */, 310971bb1a5SLionel Sambuc xcb_xfixes_region_t repair /**< */, 311971bb1a5SLionel Sambuc xcb_xfixes_region_t parts /**< */); 312971bb1a5SLionel Sambuc 313971bb1a5SLionel Sambuc /** 314971bb1a5SLionel Sambuc * 315971bb1a5SLionel Sambuc * @param c The connection 316971bb1a5SLionel Sambuc * @return A cookie 317971bb1a5SLionel Sambuc * 318971bb1a5SLionel Sambuc * Delivers a request to the X server. 319971bb1a5SLionel Sambuc * 320971bb1a5SLionel Sambuc */ 321971bb1a5SLionel Sambuc xcb_void_cookie_t 322971bb1a5SLionel Sambuc xcb_damage_subtract (xcb_connection_t *c /**< */, 323971bb1a5SLionel Sambuc xcb_damage_damage_t damage /**< */, 324971bb1a5SLionel Sambuc xcb_xfixes_region_t repair /**< */, 325971bb1a5SLionel Sambuc xcb_xfixes_region_t parts /**< */); 326971bb1a5SLionel Sambuc 327971bb1a5SLionel Sambuc /** 328971bb1a5SLionel Sambuc * 329971bb1a5SLionel Sambuc * @param c The connection 330971bb1a5SLionel Sambuc * @return A cookie 331971bb1a5SLionel Sambuc * 332971bb1a5SLionel Sambuc * Delivers a request to the X server. 333971bb1a5SLionel Sambuc * 334971bb1a5SLionel Sambuc * This form can be used only if the request will not cause 335971bb1a5SLionel Sambuc * a reply to be generated. Any returned error will be 336971bb1a5SLionel Sambuc * saved for handling by xcb_request_check(). 337971bb1a5SLionel Sambuc */ 338971bb1a5SLionel Sambuc xcb_void_cookie_t 339971bb1a5SLionel Sambuc xcb_damage_add_checked (xcb_connection_t *c /**< */, 340971bb1a5SLionel Sambuc xcb_drawable_t drawable /**< */, 341971bb1a5SLionel Sambuc xcb_xfixes_region_t region /**< */); 342971bb1a5SLionel Sambuc 343971bb1a5SLionel Sambuc /** 344971bb1a5SLionel Sambuc * 345971bb1a5SLionel Sambuc * @param c The connection 346971bb1a5SLionel Sambuc * @return A cookie 347971bb1a5SLionel Sambuc * 348971bb1a5SLionel Sambuc * Delivers a request to the X server. 349971bb1a5SLionel Sambuc * 350971bb1a5SLionel Sambuc */ 351971bb1a5SLionel Sambuc xcb_void_cookie_t 352971bb1a5SLionel Sambuc xcb_damage_add (xcb_connection_t *c /**< */, 353971bb1a5SLionel Sambuc xcb_drawable_t drawable /**< */, 354971bb1a5SLionel Sambuc xcb_xfixes_region_t region /**< */); 355971bb1a5SLionel Sambuc 356971bb1a5SLionel Sambuc 357971bb1a5SLionel Sambuc #ifdef __cplusplus 358971bb1a5SLionel Sambuc } 359971bb1a5SLionel Sambuc #endif 360971bb1a5SLionel Sambuc 361971bb1a5SLionel Sambuc #endif 362971bb1a5SLionel Sambuc 363971bb1a5SLionel Sambuc /** 364971bb1a5SLionel Sambuc * @} 365971bb1a5SLionel Sambuc */ 366