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

     1  /*
     2   * This file generated automatically from xvmc.xml by c_client.py.
     3   * Edit at your peril.
     4   */
     5  
     6  /**
     7   * @defgroup XCB_XvMC_API XCB XvMC API
     8   * @brief XvMC XCB Protocol Implementation.
     9   * @{
    10   **/
    11  
    12  #ifndef __XVMC_H
    13  #define __XVMC_H
    14  
    15  #include "xcb.h"
    16  #include "xv.h"
    17  
    18  #ifdef __cplusplus
    19  extern "C" {
    20  #endif
    21  
    22  #define XCB_XVMC_MAJOR_VERSION 1
    23  #define XCB_XVMC_MINOR_VERSION 1
    24  
    25  extern xcb_extension_t xcb_xvmc_id;
    26  
    27  typedef uint32_t xcb_xvmc_context_t;
    28  
    29  /**
    30   * @brief xcb_xvmc_context_iterator_t
    31   **/
    32  typedef struct xcb_xvmc_context_iterator_t {
    33      xcb_xvmc_context_t *data;
    34      int                 rem;
    35      int                 index;
    36  } xcb_xvmc_context_iterator_t;
    37  
    38  typedef uint32_t xcb_xvmc_surface_t;
    39  
    40  /**
    41   * @brief xcb_xvmc_surface_iterator_t
    42   **/
    43  typedef struct xcb_xvmc_surface_iterator_t {
    44      xcb_xvmc_surface_t *data;
    45      int                 rem;
    46      int                 index;
    47  } xcb_xvmc_surface_iterator_t;
    48  
    49  typedef uint32_t xcb_xvmc_subpicture_t;
    50  
    51  /**
    52   * @brief xcb_xvmc_subpicture_iterator_t
    53   **/
    54  typedef struct xcb_xvmc_subpicture_iterator_t {
    55      xcb_xvmc_subpicture_t *data;
    56      int                    rem;
    57      int                    index;
    58  } xcb_xvmc_subpicture_iterator_t;
    59  
    60  /**
    61   * @brief xcb_xvmc_surface_info_t
    62   **/
    63  typedef struct xcb_xvmc_surface_info_t {
    64      xcb_xvmc_surface_t id;
    65      uint16_t           chroma_format;
    66      uint16_t           pad0;
    67      uint16_t           max_width;
    68      uint16_t           max_height;
    69      uint16_t           subpicture_max_width;
    70      uint16_t           subpicture_max_height;
    71      uint32_t           mc_type;
    72      uint32_t           flags;
    73  } xcb_xvmc_surface_info_t;
    74  
    75  /**
    76   * @brief xcb_xvmc_surface_info_iterator_t
    77   **/
    78  typedef struct xcb_xvmc_surface_info_iterator_t {
    79      xcb_xvmc_surface_info_t *data;
    80      int                      rem;
    81      int                      index;
    82  } xcb_xvmc_surface_info_iterator_t;
    83  
    84  /**
    85   * @brief xcb_xvmc_query_version_cookie_t
    86   **/
    87  typedef struct xcb_xvmc_query_version_cookie_t {
    88      unsigned int sequence;
    89  } xcb_xvmc_query_version_cookie_t;
    90  
    91  /** Opcode for xcb_xvmc_query_version. */
    92  #define XCB_XVMC_QUERY_VERSION 0
    93  
    94  /**
    95   * @brief xcb_xvmc_query_version_request_t
    96   **/
    97  typedef struct xcb_xvmc_query_version_request_t {
    98      uint8_t  major_opcode;
    99      uint8_t  minor_opcode;
   100      uint16_t length;
   101  } xcb_xvmc_query_version_request_t;
   102  
   103  /**
   104   * @brief xcb_xvmc_query_version_reply_t
   105   **/
   106  typedef struct xcb_xvmc_query_version_reply_t {
   107      uint8_t  response_type;
   108      uint8_t  pad0;
   109      uint16_t sequence;
   110      uint32_t length;
   111      uint32_t major;
   112      uint32_t minor;
   113  } xcb_xvmc_query_version_reply_t;
   114  
   115  /**
   116   * @brief xcb_xvmc_list_surface_types_cookie_t
   117   **/
   118  typedef struct xcb_xvmc_list_surface_types_cookie_t {
   119      unsigned int sequence;
   120  } xcb_xvmc_list_surface_types_cookie_t;
   121  
   122  /** Opcode for xcb_xvmc_list_surface_types. */
   123  #define XCB_XVMC_LIST_SURFACE_TYPES 1
   124  
   125  /**
   126   * @brief xcb_xvmc_list_surface_types_request_t
   127   **/
   128  typedef struct xcb_xvmc_list_surface_types_request_t {
   129      uint8_t       major_opcode;
   130      uint8_t       minor_opcode;
   131      uint16_t      length;
   132      xcb_xv_port_t port_id;
   133  } xcb_xvmc_list_surface_types_request_t;
   134  
   135  /**
   136   * @brief xcb_xvmc_list_surface_types_reply_t
   137   **/
   138  typedef struct xcb_xvmc_list_surface_types_reply_t {
   139      uint8_t  response_type;
   140      uint8_t  pad0;
   141      uint16_t sequence;
   142      uint32_t length;
   143      uint32_t num;
   144      uint8_t  pad1[20];
   145  } xcb_xvmc_list_surface_types_reply_t;
   146  
   147  /**
   148   * @brief xcb_xvmc_create_context_cookie_t
   149   **/
   150  typedef struct xcb_xvmc_create_context_cookie_t {
   151      unsigned int sequence;
   152  } xcb_xvmc_create_context_cookie_t;
   153  
   154  /** Opcode for xcb_xvmc_create_context. */
   155  #define XCB_XVMC_CREATE_CONTEXT 2
   156  
   157  /**
   158   * @brief xcb_xvmc_create_context_request_t
   159   **/
   160  typedef struct xcb_xvmc_create_context_request_t {
   161      uint8_t            major_opcode;
   162      uint8_t            minor_opcode;
   163      uint16_t           length;
   164      xcb_xvmc_context_t context_id;
   165      xcb_xv_port_t      port_id;
   166      xcb_xvmc_surface_t surface_id;
   167      uint16_t           width;
   168      uint16_t           height;
   169      uint32_t           flags;
   170  } xcb_xvmc_create_context_request_t;
   171  
   172  /**
   173   * @brief xcb_xvmc_create_context_reply_t
   174   **/
   175  typedef struct xcb_xvmc_create_context_reply_t {
   176      uint8_t  response_type;
   177      uint8_t  pad0;
   178      uint16_t sequence;
   179      uint32_t length;
   180      uint16_t width_actual;
   181      uint16_t height_actual;
   182      uint32_t flags_return;
   183      uint8_t  pad1[20];
   184  } xcb_xvmc_create_context_reply_t;
   185  
   186  /** Opcode for xcb_xvmc_destroy_context. */
   187  #define XCB_XVMC_DESTROY_CONTEXT 3
   188  
   189  /**
   190   * @brief xcb_xvmc_destroy_context_request_t
   191   **/
   192  typedef struct xcb_xvmc_destroy_context_request_t {
   193      uint8_t            major_opcode;
   194      uint8_t            minor_opcode;
   195      uint16_t           length;
   196      xcb_xvmc_context_t context_id;
   197  } xcb_xvmc_destroy_context_request_t;
   198  
   199  /**
   200   * @brief xcb_xvmc_create_surface_cookie_t
   201   **/
   202  typedef struct xcb_xvmc_create_surface_cookie_t {
   203      unsigned int sequence;
   204  } xcb_xvmc_create_surface_cookie_t;
   205  
   206  /** Opcode for xcb_xvmc_create_surface. */
   207  #define XCB_XVMC_CREATE_SURFACE 4
   208  
   209  /**
   210   * @brief xcb_xvmc_create_surface_request_t
   211   **/
   212  typedef struct xcb_xvmc_create_surface_request_t {
   213      uint8_t            major_opcode;
   214      uint8_t            minor_opcode;
   215      uint16_t           length;
   216      xcb_xvmc_surface_t surface_id;
   217      xcb_xvmc_context_t context_id;
   218  } xcb_xvmc_create_surface_request_t;
   219  
   220  /**
   221   * @brief xcb_xvmc_create_surface_reply_t
   222   **/
   223  typedef struct xcb_xvmc_create_surface_reply_t {
   224      uint8_t  response_type;
   225      uint8_t  pad0;
   226      uint16_t sequence;
   227      uint32_t length;
   228      uint8_t  pad1[24];
   229  } xcb_xvmc_create_surface_reply_t;
   230  
   231  /** Opcode for xcb_xvmc_destroy_surface. */
   232  #define XCB_XVMC_DESTROY_SURFACE 5
   233  
   234  /**
   235   * @brief xcb_xvmc_destroy_surface_request_t
   236   **/
   237  typedef struct xcb_xvmc_destroy_surface_request_t {
   238      uint8_t            major_opcode;
   239      uint8_t            minor_opcode;
   240      uint16_t           length;
   241      xcb_xvmc_surface_t surface_id;
   242  } xcb_xvmc_destroy_surface_request_t;
   243  
   244  /**
   245   * @brief xcb_xvmc_create_subpicture_cookie_t
   246   **/
   247  typedef struct xcb_xvmc_create_subpicture_cookie_t {
   248      unsigned int sequence;
   249  } xcb_xvmc_create_subpicture_cookie_t;
   250  
   251  /** Opcode for xcb_xvmc_create_subpicture. */
   252  #define XCB_XVMC_CREATE_SUBPICTURE 6
   253  
   254  /**
   255   * @brief xcb_xvmc_create_subpicture_request_t
   256   **/
   257  typedef struct xcb_xvmc_create_subpicture_request_t {
   258      uint8_t               major_opcode;
   259      uint8_t               minor_opcode;
   260      uint16_t              length;
   261      xcb_xvmc_subpicture_t subpicture_id;
   262      xcb_xvmc_context_t    context;
   263      uint32_t              xvimage_id;
   264      uint16_t              width;
   265      uint16_t              height;
   266  } xcb_xvmc_create_subpicture_request_t;
   267  
   268  /**
   269   * @brief xcb_xvmc_create_subpicture_reply_t
   270   **/
   271  typedef struct xcb_xvmc_create_subpicture_reply_t {
   272      uint8_t  response_type;
   273      uint8_t  pad0;
   274      uint16_t sequence;
   275      uint32_t length;
   276      uint16_t width_actual;
   277      uint16_t height_actual;
   278      uint16_t num_palette_entries;
   279      uint16_t entry_bytes;
   280      uint8_t  component_order[4];
   281      uint8_t  pad1[12];
   282  } xcb_xvmc_create_subpicture_reply_t;
   283  
   284  /** Opcode for xcb_xvmc_destroy_subpicture. */
   285  #define XCB_XVMC_DESTROY_SUBPICTURE 7
   286  
   287  /**
   288   * @brief xcb_xvmc_destroy_subpicture_request_t
   289   **/
   290  typedef struct xcb_xvmc_destroy_subpicture_request_t {
   291      uint8_t               major_opcode;
   292      uint8_t               minor_opcode;
   293      uint16_t              length;
   294      xcb_xvmc_subpicture_t subpicture_id;
   295  } xcb_xvmc_destroy_subpicture_request_t;
   296  
   297  /**
   298   * @brief xcb_xvmc_list_subpicture_types_cookie_t
   299   **/
   300  typedef struct xcb_xvmc_list_subpicture_types_cookie_t {
   301      unsigned int sequence;
   302  } xcb_xvmc_list_subpicture_types_cookie_t;
   303  
   304  /** Opcode for xcb_xvmc_list_subpicture_types. */
   305  #define XCB_XVMC_LIST_SUBPICTURE_TYPES 8
   306  
   307  /**
   308   * @brief xcb_xvmc_list_subpicture_types_request_t
   309   **/
   310  typedef struct xcb_xvmc_list_subpicture_types_request_t {
   311      uint8_t            major_opcode;
   312      uint8_t            minor_opcode;
   313      uint16_t           length;
   314      xcb_xv_port_t      port_id;
   315      xcb_xvmc_surface_t surface_id;
   316  } xcb_xvmc_list_subpicture_types_request_t;
   317  
   318  /**
   319   * @brief xcb_xvmc_list_subpicture_types_reply_t
   320   **/
   321  typedef struct xcb_xvmc_list_subpicture_types_reply_t {
   322      uint8_t  response_type;
   323      uint8_t  pad0;
   324      uint16_t sequence;
   325      uint32_t length;
   326      uint32_t num;
   327      uint8_t  pad1[20];
   328  } xcb_xvmc_list_subpicture_types_reply_t;
   329  
   330  /**
   331   * Get the next element of the iterator
   332   * @param i Pointer to a xcb_xvmc_context_iterator_t
   333   *
   334   * Get the next element in the iterator. The member rem is
   335   * decreased by one. The member data points to the next
   336   * element. The member index is increased by sizeof(xcb_xvmc_context_t)
   337   */
   338  void
   339  xcb_xvmc_context_next (xcb_xvmc_context_iterator_t *i);
   340  
   341  /**
   342   * Return the iterator pointing to the last element
   343   * @param i An xcb_xvmc_context_iterator_t
   344   * @return  The iterator pointing to the last element
   345   *
   346   * Set the current element in the iterator to the last element.
   347   * The member rem is set to 0. The member data points to the
   348   * last element.
   349   */
   350  xcb_generic_iterator_t
   351  xcb_xvmc_context_end (xcb_xvmc_context_iterator_t i);
   352  
   353  /**
   354   * Get the next element of the iterator
   355   * @param i Pointer to a xcb_xvmc_surface_iterator_t
   356   *
   357   * Get the next element in the iterator. The member rem is
   358   * decreased by one. The member data points to the next
   359   * element. The member index is increased by sizeof(xcb_xvmc_surface_t)
   360   */
   361  void
   362  xcb_xvmc_surface_next (xcb_xvmc_surface_iterator_t *i);
   363  
   364  /**
   365   * Return the iterator pointing to the last element
   366   * @param i An xcb_xvmc_surface_iterator_t
   367   * @return  The iterator pointing to the last element
   368   *
   369   * Set the current element in the iterator to the last element.
   370   * The member rem is set to 0. The member data points to the
   371   * last element.
   372   */
   373  xcb_generic_iterator_t
   374  xcb_xvmc_surface_end (xcb_xvmc_surface_iterator_t i);
   375  
   376  /**
   377   * Get the next element of the iterator
   378   * @param i Pointer to a xcb_xvmc_subpicture_iterator_t
   379   *
   380   * Get the next element in the iterator. The member rem is
   381   * decreased by one. The member data points to the next
   382   * element. The member index is increased by sizeof(xcb_xvmc_subpicture_t)
   383   */
   384  void
   385  xcb_xvmc_subpicture_next (xcb_xvmc_subpicture_iterator_t *i);
   386  
   387  /**
   388   * Return the iterator pointing to the last element
   389   * @param i An xcb_xvmc_subpicture_iterator_t
   390   * @return  The iterator pointing to the last element
   391   *
   392   * Set the current element in the iterator to the last element.
   393   * The member rem is set to 0. The member data points to the
   394   * last element.
   395   */
   396  xcb_generic_iterator_t
   397  xcb_xvmc_subpicture_end (xcb_xvmc_subpicture_iterator_t i);
   398  
   399  /**
   400   * Get the next element of the iterator
   401   * @param i Pointer to a xcb_xvmc_surface_info_iterator_t
   402   *
   403   * Get the next element in the iterator. The member rem is
   404   * decreased by one. The member data points to the next
   405   * element. The member index is increased by sizeof(xcb_xvmc_surface_info_t)
   406   */
   407  void
   408  xcb_xvmc_surface_info_next (xcb_xvmc_surface_info_iterator_t *i);
   409  
   410  /**
   411   * Return the iterator pointing to the last element
   412   * @param i An xcb_xvmc_surface_info_iterator_t
   413   * @return  The iterator pointing to the last element
   414   *
   415   * Set the current element in the iterator to the last element.
   416   * The member rem is set to 0. The member data points to the
   417   * last element.
   418   */
   419  xcb_generic_iterator_t
   420  xcb_xvmc_surface_info_end (xcb_xvmc_surface_info_iterator_t i);
   421  
   422  /**
   423   *
   424   * @param c The connection
   425   * @return A cookie
   426   *
   427   * Delivers a request to the X server.
   428   *
   429   */
   430  xcb_xvmc_query_version_cookie_t
   431  xcb_xvmc_query_version (xcb_connection_t *c);
   432  
   433  /**
   434   *
   435   * @param c The connection
   436   * @return A cookie
   437   *
   438   * Delivers a request to the X server.
   439   *
   440   * This form can be used only if the request will cause
   441   * a reply to be generated. Any returned error will be
   442   * placed in the event queue.
   443   */
   444  xcb_xvmc_query_version_cookie_t
   445  xcb_xvmc_query_version_unchecked (xcb_connection_t *c);
   446  
   447  /**
   448   * Return the reply
   449   * @param c      The connection
   450   * @param cookie The cookie
   451   * @param e      The xcb_generic_error_t supplied
   452   *
   453   * Returns the reply of the request asked by
   454   *
   455   * The parameter @p e supplied to this function must be NULL if
   456   * xcb_xvmc_query_version_unchecked(). is used.
   457   * Otherwise, it stores the error if any.
   458   *
   459   * The returned value must be freed by the caller using free().
   460   */
   461  xcb_xvmc_query_version_reply_t *
   462  xcb_xvmc_query_version_reply (xcb_connection_t                 *c,
   463                                xcb_xvmc_query_version_cookie_t   cookie  /**< */,
   464                                xcb_generic_error_t             **e);
   465  
   466  int
   467  xcb_xvmc_list_surface_types_sizeof (const void  *_buffer);
   468  
   469  /**
   470   *
   471   * @param c The connection
   472   * @return A cookie
   473   *
   474   * Delivers a request to the X server.
   475   *
   476   */
   477  xcb_xvmc_list_surface_types_cookie_t
   478  xcb_xvmc_list_surface_types (xcb_connection_t *c,
   479                               xcb_xv_port_t     port_id);
   480  
   481  /**
   482   *
   483   * @param c The connection
   484   * @return A cookie
   485   *
   486   * Delivers a request to the X server.
   487   *
   488   * This form can be used only if the request will cause
   489   * a reply to be generated. Any returned error will be
   490   * placed in the event queue.
   491   */
   492  xcb_xvmc_list_surface_types_cookie_t
   493  xcb_xvmc_list_surface_types_unchecked (xcb_connection_t *c,
   494                                         xcb_xv_port_t     port_id);
   495  
   496  xcb_xvmc_surface_info_t *
   497  xcb_xvmc_list_surface_types_surfaces (const xcb_xvmc_list_surface_types_reply_t *R);
   498  
   499  int
   500  xcb_xvmc_list_surface_types_surfaces_length (const xcb_xvmc_list_surface_types_reply_t *R);
   501  
   502  xcb_xvmc_surface_info_iterator_t
   503  xcb_xvmc_list_surface_types_surfaces_iterator (const xcb_xvmc_list_surface_types_reply_t *R);
   504  
   505  /**
   506   * Return the reply
   507   * @param c      The connection
   508   * @param cookie The cookie
   509   * @param e      The xcb_generic_error_t supplied
   510   *
   511   * Returns the reply of the request asked by
   512   *
   513   * The parameter @p e supplied to this function must be NULL if
   514   * xcb_xvmc_list_surface_types_unchecked(). is used.
   515   * Otherwise, it stores the error if any.
   516   *
   517   * The returned value must be freed by the caller using free().
   518   */
   519  xcb_xvmc_list_surface_types_reply_t *
   520  xcb_xvmc_list_surface_types_reply (xcb_connection_t                      *c,
   521                                     xcb_xvmc_list_surface_types_cookie_t   cookie  /**< */,
   522                                     xcb_generic_error_t                  **e);
   523  
   524  int
   525  xcb_xvmc_create_context_sizeof (const void  *_buffer);
   526  
   527  /**
   528   *
   529   * @param c The connection
   530   * @return A cookie
   531   *
   532   * Delivers a request to the X server.
   533   *
   534   */
   535  xcb_xvmc_create_context_cookie_t
   536  xcb_xvmc_create_context (xcb_connection_t   *c,
   537                           xcb_xvmc_context_t  context_id,
   538                           xcb_xv_port_t       port_id,
   539                           xcb_xvmc_surface_t  surface_id,
   540                           uint16_t            width,
   541                           uint16_t            height,
   542                           uint32_t            flags);
   543  
   544  /**
   545   *
   546   * @param c The connection
   547   * @return A cookie
   548   *
   549   * Delivers a request to the X server.
   550   *
   551   * This form can be used only if the request will cause
   552   * a reply to be generated. Any returned error will be
   553   * placed in the event queue.
   554   */
   555  xcb_xvmc_create_context_cookie_t
   556  xcb_xvmc_create_context_unchecked (xcb_connection_t   *c,
   557                                     xcb_xvmc_context_t  context_id,
   558                                     xcb_xv_port_t       port_id,
   559                                     xcb_xvmc_surface_t  surface_id,
   560                                     uint16_t            width,
   561                                     uint16_t            height,
   562                                     uint32_t            flags);
   563  
   564  uint32_t *
   565  xcb_xvmc_create_context_priv_data (const xcb_xvmc_create_context_reply_t *R);
   566  
   567  int
   568  xcb_xvmc_create_context_priv_data_length (const xcb_xvmc_create_context_reply_t *R);
   569  
   570  xcb_generic_iterator_t
   571  xcb_xvmc_create_context_priv_data_end (const xcb_xvmc_create_context_reply_t *R);
   572  
   573  /**
   574   * Return the reply
   575   * @param c      The connection
   576   * @param cookie The cookie
   577   * @param e      The xcb_generic_error_t supplied
   578   *
   579   * Returns the reply of the request asked by
   580   *
   581   * The parameter @p e supplied to this function must be NULL if
   582   * xcb_xvmc_create_context_unchecked(). is used.
   583   * Otherwise, it stores the error if any.
   584   *
   585   * The returned value must be freed by the caller using free().
   586   */
   587  xcb_xvmc_create_context_reply_t *
   588  xcb_xvmc_create_context_reply (xcb_connection_t                  *c,
   589                                 xcb_xvmc_create_context_cookie_t   cookie  /**< */,
   590                                 xcb_generic_error_t              **e);
   591  
   592  /**
   593   *
   594   * @param c The connection
   595   * @return A cookie
   596   *
   597   * Delivers a request to the X server.
   598   *
   599   * This form can be used only if the request will not cause
   600   * a reply to be generated. Any returned error will be
   601   * saved for handling by xcb_request_check().
   602   */
   603  xcb_void_cookie_t
   604  xcb_xvmc_destroy_context_checked (xcb_connection_t   *c,
   605                                    xcb_xvmc_context_t  context_id);
   606  
   607  /**
   608   *
   609   * @param c The connection
   610   * @return A cookie
   611   *
   612   * Delivers a request to the X server.
   613   *
   614   */
   615  xcb_void_cookie_t
   616  xcb_xvmc_destroy_context (xcb_connection_t   *c,
   617                            xcb_xvmc_context_t  context_id);
   618  
   619  int
   620  xcb_xvmc_create_surface_sizeof (const void  *_buffer);
   621  
   622  /**
   623   *
   624   * @param c The connection
   625   * @return A cookie
   626   *
   627   * Delivers a request to the X server.
   628   *
   629   */
   630  xcb_xvmc_create_surface_cookie_t
   631  xcb_xvmc_create_surface (xcb_connection_t   *c,
   632                           xcb_xvmc_surface_t  surface_id,
   633                           xcb_xvmc_context_t  context_id);
   634  
   635  /**
   636   *
   637   * @param c The connection
   638   * @return A cookie
   639   *
   640   * Delivers a request to the X server.
   641   *
   642   * This form can be used only if the request will cause
   643   * a reply to be generated. Any returned error will be
   644   * placed in the event queue.
   645   */
   646  xcb_xvmc_create_surface_cookie_t
   647  xcb_xvmc_create_surface_unchecked (xcb_connection_t   *c,
   648                                     xcb_xvmc_surface_t  surface_id,
   649                                     xcb_xvmc_context_t  context_id);
   650  
   651  uint32_t *
   652  xcb_xvmc_create_surface_priv_data (const xcb_xvmc_create_surface_reply_t *R);
   653  
   654  int
   655  xcb_xvmc_create_surface_priv_data_length (const xcb_xvmc_create_surface_reply_t *R);
   656  
   657  xcb_generic_iterator_t
   658  xcb_xvmc_create_surface_priv_data_end (const xcb_xvmc_create_surface_reply_t *R);
   659  
   660  /**
   661   * Return the reply
   662   * @param c      The connection
   663   * @param cookie The cookie
   664   * @param e      The xcb_generic_error_t supplied
   665   *
   666   * Returns the reply of the request asked by
   667   *
   668   * The parameter @p e supplied to this function must be NULL if
   669   * xcb_xvmc_create_surface_unchecked(). is used.
   670   * Otherwise, it stores the error if any.
   671   *
   672   * The returned value must be freed by the caller using free().
   673   */
   674  xcb_xvmc_create_surface_reply_t *
   675  xcb_xvmc_create_surface_reply (xcb_connection_t                  *c,
   676                                 xcb_xvmc_create_surface_cookie_t   cookie  /**< */,
   677                                 xcb_generic_error_t              **e);
   678  
   679  /**
   680   *
   681   * @param c The connection
   682   * @return A cookie
   683   *
   684   * Delivers a request to the X server.
   685   *
   686   * This form can be used only if the request will not cause
   687   * a reply to be generated. Any returned error will be
   688   * saved for handling by xcb_request_check().
   689   */
   690  xcb_void_cookie_t
   691  xcb_xvmc_destroy_surface_checked (xcb_connection_t   *c,
   692                                    xcb_xvmc_surface_t  surface_id);
   693  
   694  /**
   695   *
   696   * @param c The connection
   697   * @return A cookie
   698   *
   699   * Delivers a request to the X server.
   700   *
   701   */
   702  xcb_void_cookie_t
   703  xcb_xvmc_destroy_surface (xcb_connection_t   *c,
   704                            xcb_xvmc_surface_t  surface_id);
   705  
   706  int
   707  xcb_xvmc_create_subpicture_sizeof (const void  *_buffer);
   708  
   709  /**
   710   *
   711   * @param c The connection
   712   * @return A cookie
   713   *
   714   * Delivers a request to the X server.
   715   *
   716   */
   717  xcb_xvmc_create_subpicture_cookie_t
   718  xcb_xvmc_create_subpicture (xcb_connection_t      *c,
   719                              xcb_xvmc_subpicture_t  subpicture_id,
   720                              xcb_xvmc_context_t     context,
   721                              uint32_t               xvimage_id,
   722                              uint16_t               width,
   723                              uint16_t               height);
   724  
   725  /**
   726   *
   727   * @param c The connection
   728   * @return A cookie
   729   *
   730   * Delivers a request to the X server.
   731   *
   732   * This form can be used only if the request will cause
   733   * a reply to be generated. Any returned error will be
   734   * placed in the event queue.
   735   */
   736  xcb_xvmc_create_subpicture_cookie_t
   737  xcb_xvmc_create_subpicture_unchecked (xcb_connection_t      *c,
   738                                        xcb_xvmc_subpicture_t  subpicture_id,
   739                                        xcb_xvmc_context_t     context,
   740                                        uint32_t               xvimage_id,
   741                                        uint16_t               width,
   742                                        uint16_t               height);
   743  
   744  uint32_t *
   745  xcb_xvmc_create_subpicture_priv_data (const xcb_xvmc_create_subpicture_reply_t *R);
   746  
   747  int
   748  xcb_xvmc_create_subpicture_priv_data_length (const xcb_xvmc_create_subpicture_reply_t *R);
   749  
   750  xcb_generic_iterator_t
   751  xcb_xvmc_create_subpicture_priv_data_end (const xcb_xvmc_create_subpicture_reply_t *R);
   752  
   753  /**
   754   * Return the reply
   755   * @param c      The connection
   756   * @param cookie The cookie
   757   * @param e      The xcb_generic_error_t supplied
   758   *
   759   * Returns the reply of the request asked by
   760   *
   761   * The parameter @p e supplied to this function must be NULL if
   762   * xcb_xvmc_create_subpicture_unchecked(). is used.
   763   * Otherwise, it stores the error if any.
   764   *
   765   * The returned value must be freed by the caller using free().
   766   */
   767  xcb_xvmc_create_subpicture_reply_t *
   768  xcb_xvmc_create_subpicture_reply (xcb_connection_t                     *c,
   769                                    xcb_xvmc_create_subpicture_cookie_t   cookie  /**< */,
   770                                    xcb_generic_error_t                 **e);
   771  
   772  /**
   773   *
   774   * @param c The connection
   775   * @return A cookie
   776   *
   777   * Delivers a request to the X server.
   778   *
   779   * This form can be used only if the request will not cause
   780   * a reply to be generated. Any returned error will be
   781   * saved for handling by xcb_request_check().
   782   */
   783  xcb_void_cookie_t
   784  xcb_xvmc_destroy_subpicture_checked (xcb_connection_t      *c,
   785                                       xcb_xvmc_subpicture_t  subpicture_id);
   786  
   787  /**
   788   *
   789   * @param c The connection
   790   * @return A cookie
   791   *
   792   * Delivers a request to the X server.
   793   *
   794   */
   795  xcb_void_cookie_t
   796  xcb_xvmc_destroy_subpicture (xcb_connection_t      *c,
   797                               xcb_xvmc_subpicture_t  subpicture_id);
   798  
   799  int
   800  xcb_xvmc_list_subpicture_types_sizeof (const void  *_buffer);
   801  
   802  /**
   803   *
   804   * @param c The connection
   805   * @return A cookie
   806   *
   807   * Delivers a request to the X server.
   808   *
   809   */
   810  xcb_xvmc_list_subpicture_types_cookie_t
   811  xcb_xvmc_list_subpicture_types (xcb_connection_t   *c,
   812                                  xcb_xv_port_t       port_id,
   813                                  xcb_xvmc_surface_t  surface_id);
   814  
   815  /**
   816   *
   817   * @param c The connection
   818   * @return A cookie
   819   *
   820   * Delivers a request to the X server.
   821   *
   822   * This form can be used only if the request will cause
   823   * a reply to be generated. Any returned error will be
   824   * placed in the event queue.
   825   */
   826  xcb_xvmc_list_subpicture_types_cookie_t
   827  xcb_xvmc_list_subpicture_types_unchecked (xcb_connection_t   *c,
   828                                            xcb_xv_port_t       port_id,
   829                                            xcb_xvmc_surface_t  surface_id);
   830  
   831  xcb_xv_image_format_info_t *
   832  xcb_xvmc_list_subpicture_types_types (const xcb_xvmc_list_subpicture_types_reply_t *R);
   833  
   834  int
   835  xcb_xvmc_list_subpicture_types_types_length (const xcb_xvmc_list_subpicture_types_reply_t *R);
   836  
   837  xcb_xv_image_format_info_iterator_t
   838  xcb_xvmc_list_subpicture_types_types_iterator (const xcb_xvmc_list_subpicture_types_reply_t *R);
   839  
   840  /**
   841   * Return the reply
   842   * @param c      The connection
   843   * @param cookie The cookie
   844   * @param e      The xcb_generic_error_t supplied
   845   *
   846   * Returns the reply of the request asked by
   847   *
   848   * The parameter @p e supplied to this function must be NULL if
   849   * xcb_xvmc_list_subpicture_types_unchecked(). is used.
   850   * Otherwise, it stores the error if any.
   851   *
   852   * The returned value must be freed by the caller using free().
   853   */
   854  xcb_xvmc_list_subpicture_types_reply_t *
   855  xcb_xvmc_list_subpicture_types_reply (xcb_connection_t                         *c,
   856                                        xcb_xvmc_list_subpicture_types_cookie_t   cookie  /**< */,
   857                                        xcb_generic_error_t                     **e);
   858  
   859  
   860  #ifdef __cplusplus
   861  }
   862  #endif
   863  
   864  #endif
   865  
   866  /**
   867   * @}
   868   */