github.com/rajveermalviya/gamen@v0.1.2-0.20220930195403-9be15877c1aa/internal/xkbcommon/include/xcb/damage.h (about)

     1  /*
     2   * This file generated automatically from damage.xml by c_client.py.
     3   * Edit at your peril.
     4   */
     5  
     6  /**
     7   * @defgroup XCB_Damage_API XCB Damage API
     8   * @brief Damage XCB Protocol Implementation.
     9   * @{
    10   **/
    11  
    12  #ifndef __DAMAGE_H
    13  #define __DAMAGE_H
    14  
    15  #include "xcb.h"
    16  #include "xproto.h"
    17  #include "xfixes.h"
    18  
    19  #ifdef __cplusplus
    20  extern "C" {
    21  #endif
    22  
    23  #define XCB_DAMAGE_MAJOR_VERSION 1
    24  #define XCB_DAMAGE_MINOR_VERSION 1
    25  
    26  extern xcb_extension_t xcb_damage_id;
    27  
    28  typedef uint32_t xcb_damage_damage_t;
    29  
    30  /**
    31   * @brief xcb_damage_damage_iterator_t
    32   **/
    33  typedef struct xcb_damage_damage_iterator_t {
    34      xcb_damage_damage_t *data;
    35      int                  rem;
    36      int                  index;
    37  } xcb_damage_damage_iterator_t;
    38  
    39  typedef enum xcb_damage_report_level_t {
    40      XCB_DAMAGE_REPORT_LEVEL_RAW_RECTANGLES = 0,
    41      XCB_DAMAGE_REPORT_LEVEL_DELTA_RECTANGLES = 1,
    42      XCB_DAMAGE_REPORT_LEVEL_BOUNDING_BOX = 2,
    43      XCB_DAMAGE_REPORT_LEVEL_NON_EMPTY = 3
    44  } xcb_damage_report_level_t;
    45  
    46  /** Opcode for xcb_damage_bad_damage. */
    47  #define XCB_DAMAGE_BAD_DAMAGE 0
    48  
    49  /**
    50   * @brief xcb_damage_bad_damage_error_t
    51   **/
    52  typedef struct xcb_damage_bad_damage_error_t {
    53      uint8_t  response_type;
    54      uint8_t  error_code;
    55      uint16_t sequence;
    56  } xcb_damage_bad_damage_error_t;
    57  
    58  /**
    59   * @brief xcb_damage_query_version_cookie_t
    60   **/
    61  typedef struct xcb_damage_query_version_cookie_t {
    62      unsigned int sequence;
    63  } xcb_damage_query_version_cookie_t;
    64  
    65  /** Opcode for xcb_damage_query_version. */
    66  #define XCB_DAMAGE_QUERY_VERSION 0
    67  
    68  /**
    69   * @brief xcb_damage_query_version_request_t
    70   **/
    71  typedef struct xcb_damage_query_version_request_t {
    72      uint8_t  major_opcode;
    73      uint8_t  minor_opcode;
    74      uint16_t length;
    75      uint32_t client_major_version;
    76      uint32_t client_minor_version;
    77  } xcb_damage_query_version_request_t;
    78  
    79  /**
    80   * @brief xcb_damage_query_version_reply_t
    81   **/
    82  typedef struct xcb_damage_query_version_reply_t {
    83      uint8_t  response_type;
    84      uint8_t  pad0;
    85      uint16_t sequence;
    86      uint32_t length;
    87      uint32_t major_version;
    88      uint32_t minor_version;
    89      uint8_t  pad1[16];
    90  } xcb_damage_query_version_reply_t;
    91  
    92  /** Opcode for xcb_damage_create. */
    93  #define XCB_DAMAGE_CREATE 1
    94  
    95  /**
    96   * @brief xcb_damage_create_request_t
    97   **/
    98  typedef struct xcb_damage_create_request_t {
    99      uint8_t             major_opcode;
   100      uint8_t             minor_opcode;
   101      uint16_t            length;
   102      xcb_damage_damage_t damage;
   103      xcb_drawable_t      drawable;
   104      uint8_t             level;
   105      uint8_t             pad0[3];
   106  } xcb_damage_create_request_t;
   107  
   108  /** Opcode for xcb_damage_destroy. */
   109  #define XCB_DAMAGE_DESTROY 2
   110  
   111  /**
   112   * @brief xcb_damage_destroy_request_t
   113   **/
   114  typedef struct xcb_damage_destroy_request_t {
   115      uint8_t             major_opcode;
   116      uint8_t             minor_opcode;
   117      uint16_t            length;
   118      xcb_damage_damage_t damage;
   119  } xcb_damage_destroy_request_t;
   120  
   121  /** Opcode for xcb_damage_subtract. */
   122  #define XCB_DAMAGE_SUBTRACT 3
   123  
   124  /**
   125   * @brief xcb_damage_subtract_request_t
   126   **/
   127  typedef struct xcb_damage_subtract_request_t {
   128      uint8_t             major_opcode;
   129      uint8_t             minor_opcode;
   130      uint16_t            length;
   131      xcb_damage_damage_t damage;
   132      xcb_xfixes_region_t repair;
   133      xcb_xfixes_region_t parts;
   134  } xcb_damage_subtract_request_t;
   135  
   136  /** Opcode for xcb_damage_add. */
   137  #define XCB_DAMAGE_ADD 4
   138  
   139  /**
   140   * @brief xcb_damage_add_request_t
   141   **/
   142  typedef struct xcb_damage_add_request_t {
   143      uint8_t             major_opcode;
   144      uint8_t             minor_opcode;
   145      uint16_t            length;
   146      xcb_drawable_t      drawable;
   147      xcb_xfixes_region_t region;
   148  } xcb_damage_add_request_t;
   149  
   150  /** Opcode for xcb_damage_notify. */
   151  #define XCB_DAMAGE_NOTIFY 0
   152  
   153  /**
   154   * @brief xcb_damage_notify_event_t
   155   **/
   156  typedef struct xcb_damage_notify_event_t {
   157      uint8_t             response_type;
   158      uint8_t             level;
   159      uint16_t            sequence;
   160      xcb_drawable_t      drawable;
   161      xcb_damage_damage_t damage;
   162      xcb_timestamp_t     timestamp;
   163      xcb_rectangle_t     area;
   164      xcb_rectangle_t     geometry;
   165  } xcb_damage_notify_event_t;
   166  
   167  /**
   168   * Get the next element of the iterator
   169   * @param i Pointer to a xcb_damage_damage_iterator_t
   170   *
   171   * Get the next element in the iterator. The member rem is
   172   * decreased by one. The member data points to the next
   173   * element. The member index is increased by sizeof(xcb_damage_damage_t)
   174   */
   175  void
   176  xcb_damage_damage_next (xcb_damage_damage_iterator_t *i);
   177  
   178  /**
   179   * Return the iterator pointing to the last element
   180   * @param i An xcb_damage_damage_iterator_t
   181   * @return  The iterator pointing to the last element
   182   *
   183   * Set the current element in the iterator to the last element.
   184   * The member rem is set to 0. The member data points to the
   185   * last element.
   186   */
   187  xcb_generic_iterator_t
   188  xcb_damage_damage_end (xcb_damage_damage_iterator_t i);
   189  
   190  /**
   191   *
   192   * @param c The connection
   193   * @return A cookie
   194   *
   195   * Delivers a request to the X server.
   196   *
   197   */
   198  xcb_damage_query_version_cookie_t
   199  xcb_damage_query_version (xcb_connection_t *c,
   200                            uint32_t          client_major_version,
   201                            uint32_t          client_minor_version);
   202  
   203  /**
   204   *
   205   * @param c The connection
   206   * @return A cookie
   207   *
   208   * Delivers a request to the X server.
   209   *
   210   * This form can be used only if the request will cause
   211   * a reply to be generated. Any returned error will be
   212   * placed in the event queue.
   213   */
   214  xcb_damage_query_version_cookie_t
   215  xcb_damage_query_version_unchecked (xcb_connection_t *c,
   216                                      uint32_t          client_major_version,
   217                                      uint32_t          client_minor_version);
   218  
   219  /**
   220   * Return the reply
   221   * @param c      The connection
   222   * @param cookie The cookie
   223   * @param e      The xcb_generic_error_t supplied
   224   *
   225   * Returns the reply of the request asked by
   226   *
   227   * The parameter @p e supplied to this function must be NULL if
   228   * xcb_damage_query_version_unchecked(). is used.
   229   * Otherwise, it stores the error if any.
   230   *
   231   * The returned value must be freed by the caller using free().
   232   */
   233  xcb_damage_query_version_reply_t *
   234  xcb_damage_query_version_reply (xcb_connection_t                   *c,
   235                                  xcb_damage_query_version_cookie_t   cookie  /**< */,
   236                                  xcb_generic_error_t               **e);
   237  
   238  /**
   239   *
   240   * @param c The connection
   241   * @return A cookie
   242   *
   243   * Delivers a request to the X server.
   244   *
   245   * This form can be used only if the request will not cause
   246   * a reply to be generated. Any returned error will be
   247   * saved for handling by xcb_request_check().
   248   */
   249  xcb_void_cookie_t
   250  xcb_damage_create_checked (xcb_connection_t    *c,
   251                             xcb_damage_damage_t  damage,
   252                             xcb_drawable_t       drawable,
   253                             uint8_t              level);
   254  
   255  /**
   256   *
   257   * @param c The connection
   258   * @return A cookie
   259   *
   260   * Delivers a request to the X server.
   261   *
   262   */
   263  xcb_void_cookie_t
   264  xcb_damage_create (xcb_connection_t    *c,
   265                     xcb_damage_damage_t  damage,
   266                     xcb_drawable_t       drawable,
   267                     uint8_t              level);
   268  
   269  /**
   270   *
   271   * @param c The connection
   272   * @return A cookie
   273   *
   274   * Delivers a request to the X server.
   275   *
   276   * This form can be used only if the request will not cause
   277   * a reply to be generated. Any returned error will be
   278   * saved for handling by xcb_request_check().
   279   */
   280  xcb_void_cookie_t
   281  xcb_damage_destroy_checked (xcb_connection_t    *c,
   282                              xcb_damage_damage_t  damage);
   283  
   284  /**
   285   *
   286   * @param c The connection
   287   * @return A cookie
   288   *
   289   * Delivers a request to the X server.
   290   *
   291   */
   292  xcb_void_cookie_t
   293  xcb_damage_destroy (xcb_connection_t    *c,
   294                      xcb_damage_damage_t  damage);
   295  
   296  /**
   297   *
   298   * @param c The connection
   299   * @return A cookie
   300   *
   301   * Delivers a request to the X server.
   302   *
   303   * This form can be used only if the request will not cause
   304   * a reply to be generated. Any returned error will be
   305   * saved for handling by xcb_request_check().
   306   */
   307  xcb_void_cookie_t
   308  xcb_damage_subtract_checked (xcb_connection_t    *c,
   309                               xcb_damage_damage_t  damage,
   310                               xcb_xfixes_region_t  repair,
   311                               xcb_xfixes_region_t  parts);
   312  
   313  /**
   314   *
   315   * @param c The connection
   316   * @return A cookie
   317   *
   318   * Delivers a request to the X server.
   319   *
   320   */
   321  xcb_void_cookie_t
   322  xcb_damage_subtract (xcb_connection_t    *c,
   323                       xcb_damage_damage_t  damage,
   324                       xcb_xfixes_region_t  repair,
   325                       xcb_xfixes_region_t  parts);
   326  
   327  /**
   328   *
   329   * @param c The connection
   330   * @return A cookie
   331   *
   332   * Delivers a request to the X server.
   333   *
   334   * This form can be used only if the request will not cause
   335   * a reply to be generated. Any returned error will be
   336   * saved for handling by xcb_request_check().
   337   */
   338  xcb_void_cookie_t
   339  xcb_damage_add_checked (xcb_connection_t    *c,
   340                          xcb_drawable_t       drawable,
   341                          xcb_xfixes_region_t  region);
   342  
   343  /**
   344   *
   345   * @param c The connection
   346   * @return A cookie
   347   *
   348   * Delivers a request to the X server.
   349   *
   350   */
   351  xcb_void_cookie_t
   352  xcb_damage_add (xcb_connection_t    *c,
   353                  xcb_drawable_t       drawable,
   354                  xcb_xfixes_region_t  region);
   355  
   356  
   357  #ifdef __cplusplus
   358  }
   359  #endif
   360  
   361  #endif
   362  
   363  /**
   364   * @}
   365   */