XCB  1.13.1
damage.h
00001 /*
00002  * This file generated automatically from damage.xml by c_client.py.
00003  * Edit at your peril.
00004  */
00005 
00012 #ifndef __DAMAGE_H
00013 #define __DAMAGE_H
00014 
00015 #include "xcb.h"
00016 #include "xproto.h"
00017 #include "xfixes.h"
00018 
00019 #ifdef __cplusplus
00020 extern "C" {
00021 #endif
00022 
00023 #define XCB_DAMAGE_MAJOR_VERSION 1
00024 #define XCB_DAMAGE_MINOR_VERSION 1
00025 
00026 extern xcb_extension_t xcb_damage_id;
00027 
00028 typedef uint32_t xcb_damage_damage_t;
00029 
00033 typedef struct xcb_damage_damage_iterator_t {
00034     xcb_damage_damage_t *data;
00035     int                  rem;
00036     int                  index;
00037 } xcb_damage_damage_iterator_t;
00038 
00039 typedef enum xcb_damage_report_level_t {
00040     XCB_DAMAGE_REPORT_LEVEL_RAW_RECTANGLES = 0,
00041     XCB_DAMAGE_REPORT_LEVEL_DELTA_RECTANGLES = 1,
00042     XCB_DAMAGE_REPORT_LEVEL_BOUNDING_BOX = 2,
00043     XCB_DAMAGE_REPORT_LEVEL_NON_EMPTY = 3
00044 } xcb_damage_report_level_t;
00045 
00047 #define XCB_DAMAGE_BAD_DAMAGE 0
00048 
00052 typedef struct xcb_damage_bad_damage_error_t {
00053     uint8_t  response_type;
00054     uint8_t  error_code;
00055     uint16_t sequence;
00056 } xcb_damage_bad_damage_error_t;
00057 
00061 typedef struct xcb_damage_query_version_cookie_t {
00062     unsigned int sequence;
00063 } xcb_damage_query_version_cookie_t;
00064 
00066 #define XCB_DAMAGE_QUERY_VERSION 0
00067 
00071 typedef struct xcb_damage_query_version_request_t {
00072     uint8_t  major_opcode;
00073     uint8_t  minor_opcode;
00074     uint16_t length;
00075     uint32_t client_major_version;
00076     uint32_t client_minor_version;
00077 } xcb_damage_query_version_request_t;
00078 
00082 typedef struct xcb_damage_query_version_reply_t {
00083     uint8_t  response_type;
00084     uint8_t  pad0;
00085     uint16_t sequence;
00086     uint32_t length;
00087     uint32_t major_version;
00088     uint32_t minor_version;
00089     uint8_t  pad1[16];
00090 } xcb_damage_query_version_reply_t;
00091 
00093 #define XCB_DAMAGE_CREATE 1
00094 
00098 typedef struct xcb_damage_create_request_t {
00099     uint8_t             major_opcode;
00100     uint8_t             minor_opcode;
00101     uint16_t            length;
00102     xcb_damage_damage_t damage;
00103     xcb_drawable_t      drawable;
00104     uint8_t             level;
00105     uint8_t             pad0[3];
00106 } xcb_damage_create_request_t;
00107 
00109 #define XCB_DAMAGE_DESTROY 2
00110 
00114 typedef struct xcb_damage_destroy_request_t {
00115     uint8_t             major_opcode;
00116     uint8_t             minor_opcode;
00117     uint16_t            length;
00118     xcb_damage_damage_t damage;
00119 } xcb_damage_destroy_request_t;
00120 
00122 #define XCB_DAMAGE_SUBTRACT 3
00123 
00127 typedef struct xcb_damage_subtract_request_t {
00128     uint8_t             major_opcode;
00129     uint8_t             minor_opcode;
00130     uint16_t            length;
00131     xcb_damage_damage_t damage;
00132     xcb_xfixes_region_t repair;
00133     xcb_xfixes_region_t parts;
00134 } xcb_damage_subtract_request_t;
00135 
00137 #define XCB_DAMAGE_ADD 4
00138 
00142 typedef struct xcb_damage_add_request_t {
00143     uint8_t             major_opcode;
00144     uint8_t             minor_opcode;
00145     uint16_t            length;
00146     xcb_drawable_t      drawable;
00147     xcb_xfixes_region_t region;
00148 } xcb_damage_add_request_t;
00149 
00151 #define XCB_DAMAGE_NOTIFY 0
00152 
00156 typedef struct xcb_damage_notify_event_t {
00157     uint8_t             response_type;
00158     uint8_t             level;
00159     uint16_t            sequence;
00160     xcb_drawable_t      drawable;
00161     xcb_damage_damage_t damage;
00162     xcb_timestamp_t     timestamp;
00163     xcb_rectangle_t     area;
00164     xcb_rectangle_t     geometry;
00165 } xcb_damage_notify_event_t;
00166 
00175 void
00176 xcb_damage_damage_next (xcb_damage_damage_iterator_t *i);
00177 
00187 xcb_generic_iterator_t
00188 xcb_damage_damage_end (xcb_damage_damage_iterator_t i);
00189 
00198 xcb_damage_query_version_cookie_t
00199 xcb_damage_query_version (xcb_connection_t *c,
00200                           uint32_t          client_major_version,
00201                           uint32_t          client_minor_version);
00202 
00214 xcb_damage_query_version_cookie_t
00215 xcb_damage_query_version_unchecked (xcb_connection_t *c,
00216                                     uint32_t          client_major_version,
00217                                     uint32_t          client_minor_version);
00218 
00233 xcb_damage_query_version_reply_t *
00234 xcb_damage_query_version_reply (xcb_connection_t                   *c,
00235                                 xcb_damage_query_version_cookie_t   cookie  ,
00236                                 xcb_generic_error_t               **e);
00237 
00249 xcb_void_cookie_t
00250 xcb_damage_create_checked (xcb_connection_t    *c,
00251                            xcb_damage_damage_t  damage,
00252                            xcb_drawable_t       drawable,
00253                            uint8_t              level);
00254 
00263 xcb_void_cookie_t
00264 xcb_damage_create (xcb_connection_t    *c,
00265                    xcb_damage_damage_t  damage,
00266                    xcb_drawable_t       drawable,
00267                    uint8_t              level);
00268 
00280 xcb_void_cookie_t
00281 xcb_damage_destroy_checked (xcb_connection_t    *c,
00282                             xcb_damage_damage_t  damage);
00283 
00292 xcb_void_cookie_t
00293 xcb_damage_destroy (xcb_connection_t    *c,
00294                     xcb_damage_damage_t  damage);
00295 
00307 xcb_void_cookie_t
00308 xcb_damage_subtract_checked (xcb_connection_t    *c,
00309                              xcb_damage_damage_t  damage,
00310                              xcb_xfixes_region_t  repair,
00311                              xcb_xfixes_region_t  parts);
00312 
00321 xcb_void_cookie_t
00322 xcb_damage_subtract (xcb_connection_t    *c,
00323                      xcb_damage_damage_t  damage,
00324                      xcb_xfixes_region_t  repair,
00325                      xcb_xfixes_region_t  parts);
00326 
00338 xcb_void_cookie_t
00339 xcb_damage_add_checked (xcb_connection_t    *c,
00340                         xcb_drawable_t       drawable,
00341                         xcb_xfixes_region_t  region);
00342 
00351 xcb_void_cookie_t
00352 xcb_damage_add (xcb_connection_t    *c,
00353                 xcb_drawable_t       drawable,
00354                 xcb_xfixes_region_t  region);
00355 
00356 
00357 #ifdef __cplusplus
00358 }
00359 #endif
00360 
00361 #endif
00362