Home | History | Annotate | Line # | Download | only in files
xvmc.c revision 1.1
      1 /*
      2  * This file generated automatically from xvmc.xml by c_client.py.
      3  * Edit at your peril.
      4  */
      5 
      6 #include <string.h>
      7 #include <assert.h>
      8 #include "xcbext.h"
      9 #include "xvmc.h"
     10 #include "xproto.h"
     11 #include "shm.h"
     12 #include "xv.h"
     13 
     14 xcb_extension_t xcb_xvmc_id = { "XVideo-MotionCompensation", 0 };
     15 
     16 
     17 /*****************************************************************************
     18  **
     19  ** void xcb_xvmc_context_next
     20  **
     21  ** @param xcb_xvmc_context_iterator_t *i
     22  ** @returns void
     23  **
     24  *****************************************************************************/
     25 
     26 void
     27 xcb_xvmc_context_next (xcb_xvmc_context_iterator_t *i  /**< */)
     28 {
     29     --i->rem;
     30     ++i->data;
     31     i->index += sizeof(xcb_xvmc_context_t);
     32 }
     33 
     34 
     35 /*****************************************************************************
     36  **
     37  ** xcb_generic_iterator_t xcb_xvmc_context_end
     38  **
     39  ** @param xcb_xvmc_context_iterator_t i
     40  ** @returns xcb_generic_iterator_t
     41  **
     42  *****************************************************************************/
     43 
     44 xcb_generic_iterator_t
     45 xcb_xvmc_context_end (xcb_xvmc_context_iterator_t i  /**< */)
     46 {
     47     xcb_generic_iterator_t ret;
     48     ret.data = i.data + i.rem;
     49     ret.index = i.index + ((char *) ret.data - (char *) i.data);
     50     ret.rem = 0;
     51     return ret;
     52 }
     53 
     54 
     55 /*****************************************************************************
     56  **
     57  ** void xcb_xvmc_surface_next
     58  **
     59  ** @param xcb_xvmc_surface_iterator_t *i
     60  ** @returns void
     61  **
     62  *****************************************************************************/
     63 
     64 void
     65 xcb_xvmc_surface_next (xcb_xvmc_surface_iterator_t *i  /**< */)
     66 {
     67     --i->rem;
     68     ++i->data;
     69     i->index += sizeof(xcb_xvmc_surface_t);
     70 }
     71 
     72 
     73 /*****************************************************************************
     74  **
     75  ** xcb_generic_iterator_t xcb_xvmc_surface_end
     76  **
     77  ** @param xcb_xvmc_surface_iterator_t i
     78  ** @returns xcb_generic_iterator_t
     79  **
     80  *****************************************************************************/
     81 
     82 xcb_generic_iterator_t
     83 xcb_xvmc_surface_end (xcb_xvmc_surface_iterator_t i  /**< */)
     84 {
     85     xcb_generic_iterator_t ret;
     86     ret.data = i.data + i.rem;
     87     ret.index = i.index + ((char *) ret.data - (char *) i.data);
     88     ret.rem = 0;
     89     return ret;
     90 }
     91 
     92 
     93 /*****************************************************************************
     94  **
     95  ** void xcb_xvmc_subpicture_next
     96  **
     97  ** @param xcb_xvmc_subpicture_iterator_t *i
     98  ** @returns void
     99  **
    100  *****************************************************************************/
    101 
    102 void
    103 xcb_xvmc_subpicture_next (xcb_xvmc_subpicture_iterator_t *i  /**< */)
    104 {
    105     --i->rem;
    106     ++i->data;
    107     i->index += sizeof(xcb_xvmc_subpicture_t);
    108 }
    109 
    110 
    111 /*****************************************************************************
    112  **
    113  ** xcb_generic_iterator_t xcb_xvmc_subpicture_end
    114  **
    115  ** @param xcb_xvmc_subpicture_iterator_t i
    116  ** @returns xcb_generic_iterator_t
    117  **
    118  *****************************************************************************/
    119 
    120 xcb_generic_iterator_t
    121 xcb_xvmc_subpicture_end (xcb_xvmc_subpicture_iterator_t i  /**< */)
    122 {
    123     xcb_generic_iterator_t ret;
    124     ret.data = i.data + i.rem;
    125     ret.index = i.index + ((char *) ret.data - (char *) i.data);
    126     ret.rem = 0;
    127     return ret;
    128 }
    129 
    130 
    131 /*****************************************************************************
    132  **
    133  ** void xcb_xvmc_surface_info_next
    134  **
    135  ** @param xcb_xvmc_surface_info_iterator_t *i
    136  ** @returns void
    137  **
    138  *****************************************************************************/
    139 
    140 void
    141 xcb_xvmc_surface_info_next (xcb_xvmc_surface_info_iterator_t *i  /**< */)
    142 {
    143     --i->rem;
    144     ++i->data;
    145     i->index += sizeof(xcb_xvmc_surface_info_t);
    146 }
    147 
    148 
    149 /*****************************************************************************
    150  **
    151  ** xcb_generic_iterator_t xcb_xvmc_surface_info_end
    152  **
    153  ** @param xcb_xvmc_surface_info_iterator_t i
    154  ** @returns xcb_generic_iterator_t
    155  **
    156  *****************************************************************************/
    157 
    158 xcb_generic_iterator_t
    159 xcb_xvmc_surface_info_end (xcb_xvmc_surface_info_iterator_t i  /**< */)
    160 {
    161     xcb_generic_iterator_t ret;
    162     ret.data = i.data + i.rem;
    163     ret.index = i.index + ((char *) ret.data - (char *) i.data);
    164     ret.rem = 0;
    165     return ret;
    166 }
    167 
    168 
    169 /*****************************************************************************
    170  **
    171  ** xcb_xvmc_query_version_cookie_t xcb_xvmc_query_version
    172  **
    173  ** @param xcb_connection_t *c
    174  ** @returns xcb_xvmc_query_version_cookie_t
    175  **
    176  *****************************************************************************/
    177 
    178 xcb_xvmc_query_version_cookie_t
    179 xcb_xvmc_query_version (xcb_connection_t *c  /**< */)
    180 {
    181     static const xcb_protocol_request_t xcb_req = {
    182         /* count */ 2,
    183         /* ext */ &xcb_xvmc_id,
    184         /* opcode */ XCB_XVMC_QUERY_VERSION,
    185         /* isvoid */ 0
    186     };
    187 
    188     struct iovec xcb_parts[4];
    189     xcb_xvmc_query_version_cookie_t xcb_ret;
    190     xcb_xvmc_query_version_request_t xcb_out;
    191 
    192 
    193     xcb_parts[2].iov_base = (char *) &xcb_out;
    194     xcb_parts[2].iov_len = sizeof(xcb_out);
    195     xcb_parts[3].iov_base = 0;
    196     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    197     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
    198     return xcb_ret;
    199 }
    200 
    201 
    202 /*****************************************************************************
    203  **
    204  ** xcb_xvmc_query_version_cookie_t xcb_xvmc_query_version_unchecked
    205  **
    206  ** @param xcb_connection_t *c
    207  ** @returns xcb_xvmc_query_version_cookie_t
    208  **
    209  *****************************************************************************/
    210 
    211 xcb_xvmc_query_version_cookie_t
    212 xcb_xvmc_query_version_unchecked (xcb_connection_t *c  /**< */)
    213 {
    214     static const xcb_protocol_request_t xcb_req = {
    215         /* count */ 2,
    216         /* ext */ &xcb_xvmc_id,
    217         /* opcode */ XCB_XVMC_QUERY_VERSION,
    218         /* isvoid */ 0
    219     };
    220 
    221     struct iovec xcb_parts[4];
    222     xcb_xvmc_query_version_cookie_t xcb_ret;
    223     xcb_xvmc_query_version_request_t xcb_out;
    224 
    225 
    226     xcb_parts[2].iov_base = (char *) &xcb_out;
    227     xcb_parts[2].iov_len = sizeof(xcb_out);
    228     xcb_parts[3].iov_base = 0;
    229     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    230     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
    231     return xcb_ret;
    232 }
    233 
    234 
    235 /*****************************************************************************
    236  **
    237  ** xcb_xvmc_query_version_reply_t * xcb_xvmc_query_version_reply
    238  **
    239  ** @param xcb_connection_t                 *c
    240  ** @param xcb_xvmc_query_version_cookie_t   cookie
    241  ** @param xcb_generic_error_t             **e
    242  ** @returns xcb_xvmc_query_version_reply_t *
    243  **
    244  *****************************************************************************/
    245 
    246 xcb_xvmc_query_version_reply_t *
    247 xcb_xvmc_query_version_reply (xcb_connection_t                 *c  /**< */,
    248                               xcb_xvmc_query_version_cookie_t   cookie  /**< */,
    249                               xcb_generic_error_t             **e  /**< */)
    250 {
    251     return (xcb_xvmc_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
    252 }
    253 
    254 
    255 /*****************************************************************************
    256  **
    257  ** xcb_xvmc_list_surface_types_cookie_t xcb_xvmc_list_surface_types
    258  **
    259  ** @param xcb_connection_t *c
    260  ** @param xcb_xv_port_t     port_id
    261  ** @returns xcb_xvmc_list_surface_types_cookie_t
    262  **
    263  *****************************************************************************/
    264 
    265 xcb_xvmc_list_surface_types_cookie_t
    266 xcb_xvmc_list_surface_types (xcb_connection_t *c  /**< */,
    267                              xcb_xv_port_t     port_id  /**< */)
    268 {
    269     static const xcb_protocol_request_t xcb_req = {
    270         /* count */ 2,
    271         /* ext */ &xcb_xvmc_id,
    272         /* opcode */ XCB_XVMC_LIST_SURFACE_TYPES,
    273         /* isvoid */ 0
    274     };
    275 
    276     struct iovec xcb_parts[4];
    277     xcb_xvmc_list_surface_types_cookie_t xcb_ret;
    278     xcb_xvmc_list_surface_types_request_t xcb_out;
    279 
    280     xcb_out.port_id = port_id;
    281 
    282     xcb_parts[2].iov_base = (char *) &xcb_out;
    283     xcb_parts[2].iov_len = sizeof(xcb_out);
    284     xcb_parts[3].iov_base = 0;
    285     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    286     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
    287     return xcb_ret;
    288 }
    289 
    290 
    291 /*****************************************************************************
    292  **
    293  ** xcb_xvmc_list_surface_types_cookie_t xcb_xvmc_list_surface_types_unchecked
    294  **
    295  ** @param xcb_connection_t *c
    296  ** @param xcb_xv_port_t     port_id
    297  ** @returns xcb_xvmc_list_surface_types_cookie_t
    298  **
    299  *****************************************************************************/
    300 
    301 xcb_xvmc_list_surface_types_cookie_t
    302 xcb_xvmc_list_surface_types_unchecked (xcb_connection_t *c  /**< */,
    303                                        xcb_xv_port_t     port_id  /**< */)
    304 {
    305     static const xcb_protocol_request_t xcb_req = {
    306         /* count */ 2,
    307         /* ext */ &xcb_xvmc_id,
    308         /* opcode */ XCB_XVMC_LIST_SURFACE_TYPES,
    309         /* isvoid */ 0
    310     };
    311 
    312     struct iovec xcb_parts[4];
    313     xcb_xvmc_list_surface_types_cookie_t xcb_ret;
    314     xcb_xvmc_list_surface_types_request_t xcb_out;
    315 
    316     xcb_out.port_id = port_id;
    317 
    318     xcb_parts[2].iov_base = (char *) &xcb_out;
    319     xcb_parts[2].iov_len = sizeof(xcb_out);
    320     xcb_parts[3].iov_base = 0;
    321     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    322     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
    323     return xcb_ret;
    324 }
    325 
    326 
    327 /*****************************************************************************
    328  **
    329  ** xcb_xvmc_surface_info_t * xcb_xvmc_list_surface_types_surfaces
    330  **
    331  ** @param const xcb_xvmc_list_surface_types_reply_t *R
    332  ** @returns xcb_xvmc_surface_info_t *
    333  **
    334  *****************************************************************************/
    335 
    336 xcb_xvmc_surface_info_t *
    337 xcb_xvmc_list_surface_types_surfaces (const xcb_xvmc_list_surface_types_reply_t *R  /**< */)
    338 {
    339     return (xcb_xvmc_surface_info_t *) (R + 1);
    340 }
    341 
    342 
    343 /*****************************************************************************
    344  **
    345  ** int xcb_xvmc_list_surface_types_surfaces_length
    346  **
    347  ** @param const xcb_xvmc_list_surface_types_reply_t *R
    348  ** @returns int
    349  **
    350  *****************************************************************************/
    351 
    352 int
    353 xcb_xvmc_list_surface_types_surfaces_length (const xcb_xvmc_list_surface_types_reply_t *R  /**< */)
    354 {
    355     return R->num;
    356 }
    357 
    358 
    359 /*****************************************************************************
    360  **
    361  ** xcb_xvmc_surface_info_iterator_t xcb_xvmc_list_surface_types_surfaces_iterator
    362  **
    363  ** @param const xcb_xvmc_list_surface_types_reply_t *R
    364  ** @returns xcb_xvmc_surface_info_iterator_t
    365  **
    366  *****************************************************************************/
    367 
    368 xcb_xvmc_surface_info_iterator_t
    369 xcb_xvmc_list_surface_types_surfaces_iterator (const xcb_xvmc_list_surface_types_reply_t *R  /**< */)
    370 {
    371     xcb_xvmc_surface_info_iterator_t i;
    372     i.data = (xcb_xvmc_surface_info_t *) (R + 1);
    373     i.rem = R->num;
    374     i.index = (char *) i.data - (char *) R;
    375     return i;
    376 }
    377 
    378 
    379 /*****************************************************************************
    380  **
    381  ** xcb_xvmc_list_surface_types_reply_t * xcb_xvmc_list_surface_types_reply
    382  **
    383  ** @param xcb_connection_t                      *c
    384  ** @param xcb_xvmc_list_surface_types_cookie_t   cookie
    385  ** @param xcb_generic_error_t                  **e
    386  ** @returns xcb_xvmc_list_surface_types_reply_t *
    387  **
    388  *****************************************************************************/
    389 
    390 xcb_xvmc_list_surface_types_reply_t *
    391 xcb_xvmc_list_surface_types_reply (xcb_connection_t                      *c  /**< */,
    392                                    xcb_xvmc_list_surface_types_cookie_t   cookie  /**< */,
    393                                    xcb_generic_error_t                  **e  /**< */)
    394 {
    395     return (xcb_xvmc_list_surface_types_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
    396 }
    397 
    398 
    399 /*****************************************************************************
    400  **
    401  ** xcb_xvmc_create_context_cookie_t xcb_xvmc_create_context
    402  **
    403  ** @param xcb_connection_t   *c
    404  ** @param xcb_xvmc_context_t  context_id
    405  ** @param xcb_xv_port_t       port_id
    406  ** @param xcb_xvmc_surface_t  surface_id
    407  ** @param uint16_t            width
    408  ** @param uint16_t            height
    409  ** @param uint32_t            flags
    410  ** @returns xcb_xvmc_create_context_cookie_t
    411  **
    412  *****************************************************************************/
    413 
    414 xcb_xvmc_create_context_cookie_t
    415 xcb_xvmc_create_context (xcb_connection_t   *c  /**< */,
    416                          xcb_xvmc_context_t  context_id  /**< */,
    417                          xcb_xv_port_t       port_id  /**< */,
    418                          xcb_xvmc_surface_t  surface_id  /**< */,
    419                          uint16_t            width  /**< */,
    420                          uint16_t            height  /**< */,
    421                          uint32_t            flags  /**< */)
    422 {
    423     static const xcb_protocol_request_t xcb_req = {
    424         /* count */ 2,
    425         /* ext */ &xcb_xvmc_id,
    426         /* opcode */ XCB_XVMC_CREATE_CONTEXT,
    427         /* isvoid */ 0
    428     };
    429 
    430     struct iovec xcb_parts[4];
    431     xcb_xvmc_create_context_cookie_t xcb_ret;
    432     xcb_xvmc_create_context_request_t xcb_out;
    433 
    434     xcb_out.context_id = context_id;
    435     xcb_out.port_id = port_id;
    436     xcb_out.surface_id = surface_id;
    437     xcb_out.width = width;
    438     xcb_out.height = height;
    439     xcb_out.flags = flags;
    440 
    441     xcb_parts[2].iov_base = (char *) &xcb_out;
    442     xcb_parts[2].iov_len = sizeof(xcb_out);
    443     xcb_parts[3].iov_base = 0;
    444     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    445     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
    446     return xcb_ret;
    447 }
    448 
    449 
    450 /*****************************************************************************
    451  **
    452  ** xcb_xvmc_create_context_cookie_t xcb_xvmc_create_context_unchecked
    453  **
    454  ** @param xcb_connection_t   *c
    455  ** @param xcb_xvmc_context_t  context_id
    456  ** @param xcb_xv_port_t       port_id
    457  ** @param xcb_xvmc_surface_t  surface_id
    458  ** @param uint16_t            width
    459  ** @param uint16_t            height
    460  ** @param uint32_t            flags
    461  ** @returns xcb_xvmc_create_context_cookie_t
    462  **
    463  *****************************************************************************/
    464 
    465 xcb_xvmc_create_context_cookie_t
    466 xcb_xvmc_create_context_unchecked (xcb_connection_t   *c  /**< */,
    467                                    xcb_xvmc_context_t  context_id  /**< */,
    468                                    xcb_xv_port_t       port_id  /**< */,
    469                                    xcb_xvmc_surface_t  surface_id  /**< */,
    470                                    uint16_t            width  /**< */,
    471                                    uint16_t            height  /**< */,
    472                                    uint32_t            flags  /**< */)
    473 {
    474     static const xcb_protocol_request_t xcb_req = {
    475         /* count */ 2,
    476         /* ext */ &xcb_xvmc_id,
    477         /* opcode */ XCB_XVMC_CREATE_CONTEXT,
    478         /* isvoid */ 0
    479     };
    480 
    481     struct iovec xcb_parts[4];
    482     xcb_xvmc_create_context_cookie_t xcb_ret;
    483     xcb_xvmc_create_context_request_t xcb_out;
    484 
    485     xcb_out.context_id = context_id;
    486     xcb_out.port_id = port_id;
    487     xcb_out.surface_id = surface_id;
    488     xcb_out.width = width;
    489     xcb_out.height = height;
    490     xcb_out.flags = flags;
    491 
    492     xcb_parts[2].iov_base = (char *) &xcb_out;
    493     xcb_parts[2].iov_len = sizeof(xcb_out);
    494     xcb_parts[3].iov_base = 0;
    495     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    496     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
    497     return xcb_ret;
    498 }
    499 
    500 
    501 /*****************************************************************************
    502  **
    503  ** uint32_t * xcb_xvmc_create_context_priv_data
    504  **
    505  ** @param const xcb_xvmc_create_context_reply_t *R
    506  ** @returns uint32_t *
    507  **
    508  *****************************************************************************/
    509 
    510 uint32_t *
    511 xcb_xvmc_create_context_priv_data (const xcb_xvmc_create_context_reply_t *R  /**< */)
    512 {
    513     return (uint32_t *) (R + 1);
    514 }
    515 
    516 
    517 /*****************************************************************************
    518  **
    519  ** int xcb_xvmc_create_context_priv_data_length
    520  **
    521  ** @param const xcb_xvmc_create_context_reply_t *R
    522  ** @returns int
    523  **
    524  *****************************************************************************/
    525 
    526 int
    527 xcb_xvmc_create_context_priv_data_length (const xcb_xvmc_create_context_reply_t *R  /**< */)
    528 {
    529     return R->length;
    530 }
    531 
    532 
    533 /*****************************************************************************
    534  **
    535  ** xcb_generic_iterator_t xcb_xvmc_create_context_priv_data_end
    536  **
    537  ** @param const xcb_xvmc_create_context_reply_t *R
    538  ** @returns xcb_generic_iterator_t
    539  **
    540  *****************************************************************************/
    541 
    542 xcb_generic_iterator_t
    543 xcb_xvmc_create_context_priv_data_end (const xcb_xvmc_create_context_reply_t *R  /**< */)
    544 {
    545     xcb_generic_iterator_t i;
    546     i.data = ((uint32_t *) (R + 1)) + (R->length);
    547     i.rem = 0;
    548     i.index = (char *) i.data - (char *) R;
    549     return i;
    550 }
    551 
    552 
    553 /*****************************************************************************
    554  **
    555  ** xcb_xvmc_create_context_reply_t * xcb_xvmc_create_context_reply
    556  **
    557  ** @param xcb_connection_t                  *c
    558  ** @param xcb_xvmc_create_context_cookie_t   cookie
    559  ** @param xcb_generic_error_t              **e
    560  ** @returns xcb_xvmc_create_context_reply_t *
    561  **
    562  *****************************************************************************/
    563 
    564 xcb_xvmc_create_context_reply_t *
    565 xcb_xvmc_create_context_reply (xcb_connection_t                  *c  /**< */,
    566                                xcb_xvmc_create_context_cookie_t   cookie  /**< */,
    567                                xcb_generic_error_t              **e  /**< */)
    568 {
    569     return (xcb_xvmc_create_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
    570 }
    571 
    572 
    573 /*****************************************************************************
    574  **
    575  ** xcb_void_cookie_t xcb_xvmc_destroy_context_checked
    576  **
    577  ** @param xcb_connection_t   *c
    578  ** @param xcb_xvmc_context_t  context_id
    579  ** @returns xcb_void_cookie_t
    580  **
    581  *****************************************************************************/
    582 
    583 xcb_void_cookie_t
    584 xcb_xvmc_destroy_context_checked (xcb_connection_t   *c  /**< */,
    585                                   xcb_xvmc_context_t  context_id  /**< */)
    586 {
    587     static const xcb_protocol_request_t xcb_req = {
    588         /* count */ 2,
    589         /* ext */ &xcb_xvmc_id,
    590         /* opcode */ XCB_XVMC_DESTROY_CONTEXT,
    591         /* isvoid */ 1
    592     };
    593 
    594     struct iovec xcb_parts[4];
    595     xcb_void_cookie_t xcb_ret;
    596     xcb_xvmc_destroy_context_request_t xcb_out;
    597 
    598     xcb_out.context_id = context_id;
    599 
    600     xcb_parts[2].iov_base = (char *) &xcb_out;
    601     xcb_parts[2].iov_len = sizeof(xcb_out);
    602     xcb_parts[3].iov_base = 0;
    603     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    604     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
    605     return xcb_ret;
    606 }
    607 
    608 
    609 /*****************************************************************************
    610  **
    611  ** xcb_void_cookie_t xcb_xvmc_destroy_context
    612  **
    613  ** @param xcb_connection_t   *c
    614  ** @param xcb_xvmc_context_t  context_id
    615  ** @returns xcb_void_cookie_t
    616  **
    617  *****************************************************************************/
    618 
    619 xcb_void_cookie_t
    620 xcb_xvmc_destroy_context (xcb_connection_t   *c  /**< */,
    621                           xcb_xvmc_context_t  context_id  /**< */)
    622 {
    623     static const xcb_protocol_request_t xcb_req = {
    624         /* count */ 2,
    625         /* ext */ &xcb_xvmc_id,
    626         /* opcode */ XCB_XVMC_DESTROY_CONTEXT,
    627         /* isvoid */ 1
    628     };
    629 
    630     struct iovec xcb_parts[4];
    631     xcb_void_cookie_t xcb_ret;
    632     xcb_xvmc_destroy_context_request_t xcb_out;
    633 
    634     xcb_out.context_id = context_id;
    635 
    636     xcb_parts[2].iov_base = (char *) &xcb_out;
    637     xcb_parts[2].iov_len = sizeof(xcb_out);
    638     xcb_parts[3].iov_base = 0;
    639     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    640     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
    641     return xcb_ret;
    642 }
    643 
    644 
    645 /*****************************************************************************
    646  **
    647  ** xcb_xvmc_create_surface_cookie_t xcb_xvmc_create_surface
    648  **
    649  ** @param xcb_connection_t   *c
    650  ** @param xcb_xvmc_surface_t  surface_id
    651  ** @param xcb_xvmc_context_t  context_id
    652  ** @returns xcb_xvmc_create_surface_cookie_t
    653  **
    654  *****************************************************************************/
    655 
    656 xcb_xvmc_create_surface_cookie_t
    657 xcb_xvmc_create_surface (xcb_connection_t   *c  /**< */,
    658                          xcb_xvmc_surface_t  surface_id  /**< */,
    659                          xcb_xvmc_context_t  context_id  /**< */)
    660 {
    661     static const xcb_protocol_request_t xcb_req = {
    662         /* count */ 2,
    663         /* ext */ &xcb_xvmc_id,
    664         /* opcode */ XCB_XVMC_CREATE_SURFACE,
    665         /* isvoid */ 0
    666     };
    667 
    668     struct iovec xcb_parts[4];
    669     xcb_xvmc_create_surface_cookie_t xcb_ret;
    670     xcb_xvmc_create_surface_request_t xcb_out;
    671 
    672     xcb_out.surface_id = surface_id;
    673     xcb_out.context_id = context_id;
    674 
    675     xcb_parts[2].iov_base = (char *) &xcb_out;
    676     xcb_parts[2].iov_len = sizeof(xcb_out);
    677     xcb_parts[3].iov_base = 0;
    678     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    679     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
    680     return xcb_ret;
    681 }
    682 
    683 
    684 /*****************************************************************************
    685  **
    686  ** xcb_xvmc_create_surface_cookie_t xcb_xvmc_create_surface_unchecked
    687  **
    688  ** @param xcb_connection_t   *c
    689  ** @param xcb_xvmc_surface_t  surface_id
    690  ** @param xcb_xvmc_context_t  context_id
    691  ** @returns xcb_xvmc_create_surface_cookie_t
    692  **
    693  *****************************************************************************/
    694 
    695 xcb_xvmc_create_surface_cookie_t
    696 xcb_xvmc_create_surface_unchecked (xcb_connection_t   *c  /**< */,
    697                                    xcb_xvmc_surface_t  surface_id  /**< */,
    698                                    xcb_xvmc_context_t  context_id  /**< */)
    699 {
    700     static const xcb_protocol_request_t xcb_req = {
    701         /* count */ 2,
    702         /* ext */ &xcb_xvmc_id,
    703         /* opcode */ XCB_XVMC_CREATE_SURFACE,
    704         /* isvoid */ 0
    705     };
    706 
    707     struct iovec xcb_parts[4];
    708     xcb_xvmc_create_surface_cookie_t xcb_ret;
    709     xcb_xvmc_create_surface_request_t xcb_out;
    710 
    711     xcb_out.surface_id = surface_id;
    712     xcb_out.context_id = context_id;
    713 
    714     xcb_parts[2].iov_base = (char *) &xcb_out;
    715     xcb_parts[2].iov_len = sizeof(xcb_out);
    716     xcb_parts[3].iov_base = 0;
    717     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    718     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
    719     return xcb_ret;
    720 }
    721 
    722 
    723 /*****************************************************************************
    724  **
    725  ** uint32_t * xcb_xvmc_create_surface_priv_data
    726  **
    727  ** @param const xcb_xvmc_create_surface_reply_t *R
    728  ** @returns uint32_t *
    729  **
    730  *****************************************************************************/
    731 
    732 uint32_t *
    733 xcb_xvmc_create_surface_priv_data (const xcb_xvmc_create_surface_reply_t *R  /**< */)
    734 {
    735     return (uint32_t *) (R + 1);
    736 }
    737 
    738 
    739 /*****************************************************************************
    740  **
    741  ** int xcb_xvmc_create_surface_priv_data_length
    742  **
    743  ** @param const xcb_xvmc_create_surface_reply_t *R
    744  ** @returns int
    745  **
    746  *****************************************************************************/
    747 
    748 int
    749 xcb_xvmc_create_surface_priv_data_length (const xcb_xvmc_create_surface_reply_t *R  /**< */)
    750 {
    751     return R->length;
    752 }
    753 
    754 
    755 /*****************************************************************************
    756  **
    757  ** xcb_generic_iterator_t xcb_xvmc_create_surface_priv_data_end
    758  **
    759  ** @param const xcb_xvmc_create_surface_reply_t *R
    760  ** @returns xcb_generic_iterator_t
    761  **
    762  *****************************************************************************/
    763 
    764 xcb_generic_iterator_t
    765 xcb_xvmc_create_surface_priv_data_end (const xcb_xvmc_create_surface_reply_t *R  /**< */)
    766 {
    767     xcb_generic_iterator_t i;
    768     i.data = ((uint32_t *) (R + 1)) + (R->length);
    769     i.rem = 0;
    770     i.index = (char *) i.data - (char *) R;
    771     return i;
    772 }
    773 
    774 
    775 /*****************************************************************************
    776  **
    777  ** xcb_xvmc_create_surface_reply_t * xcb_xvmc_create_surface_reply
    778  **
    779  ** @param xcb_connection_t                  *c
    780  ** @param xcb_xvmc_create_surface_cookie_t   cookie
    781  ** @param xcb_generic_error_t              **e
    782  ** @returns xcb_xvmc_create_surface_reply_t *
    783  **
    784  *****************************************************************************/
    785 
    786 xcb_xvmc_create_surface_reply_t *
    787 xcb_xvmc_create_surface_reply (xcb_connection_t                  *c  /**< */,
    788                                xcb_xvmc_create_surface_cookie_t   cookie  /**< */,
    789                                xcb_generic_error_t              **e  /**< */)
    790 {
    791     return (xcb_xvmc_create_surface_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
    792 }
    793 
    794 
    795 /*****************************************************************************
    796  **
    797  ** xcb_void_cookie_t xcb_xvmc_destroy_surface_checked
    798  **
    799  ** @param xcb_connection_t   *c
    800  ** @param xcb_xvmc_surface_t  surface_id
    801  ** @returns xcb_void_cookie_t
    802  **
    803  *****************************************************************************/
    804 
    805 xcb_void_cookie_t
    806 xcb_xvmc_destroy_surface_checked (xcb_connection_t   *c  /**< */,
    807                                   xcb_xvmc_surface_t  surface_id  /**< */)
    808 {
    809     static const xcb_protocol_request_t xcb_req = {
    810         /* count */ 2,
    811         /* ext */ &xcb_xvmc_id,
    812         /* opcode */ XCB_XVMC_DESTROY_SURFACE,
    813         /* isvoid */ 1
    814     };
    815 
    816     struct iovec xcb_parts[4];
    817     xcb_void_cookie_t xcb_ret;
    818     xcb_xvmc_destroy_surface_request_t xcb_out;
    819 
    820     xcb_out.surface_id = surface_id;
    821 
    822     xcb_parts[2].iov_base = (char *) &xcb_out;
    823     xcb_parts[2].iov_len = sizeof(xcb_out);
    824     xcb_parts[3].iov_base = 0;
    825     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    826     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
    827     return xcb_ret;
    828 }
    829 
    830 
    831 /*****************************************************************************
    832  **
    833  ** xcb_void_cookie_t xcb_xvmc_destroy_surface
    834  **
    835  ** @param xcb_connection_t   *c
    836  ** @param xcb_xvmc_surface_t  surface_id
    837  ** @returns xcb_void_cookie_t
    838  **
    839  *****************************************************************************/
    840 
    841 xcb_void_cookie_t
    842 xcb_xvmc_destroy_surface (xcb_connection_t   *c  /**< */,
    843                           xcb_xvmc_surface_t  surface_id  /**< */)
    844 {
    845     static const xcb_protocol_request_t xcb_req = {
    846         /* count */ 2,
    847         /* ext */ &xcb_xvmc_id,
    848         /* opcode */ XCB_XVMC_DESTROY_SURFACE,
    849         /* isvoid */ 1
    850     };
    851 
    852     struct iovec xcb_parts[4];
    853     xcb_void_cookie_t xcb_ret;
    854     xcb_xvmc_destroy_surface_request_t xcb_out;
    855 
    856     xcb_out.surface_id = surface_id;
    857 
    858     xcb_parts[2].iov_base = (char *) &xcb_out;
    859     xcb_parts[2].iov_len = sizeof(xcb_out);
    860     xcb_parts[3].iov_base = 0;
    861     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    862     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
    863     return xcb_ret;
    864 }
    865 
    866 
    867 /*****************************************************************************
    868  **
    869  ** xcb_xvmc_create_subpicture_cookie_t xcb_xvmc_create_subpicture
    870  **
    871  ** @param xcb_connection_t      *c
    872  ** @param xcb_xvmc_subpicture_t  subpicture_id
    873  ** @param xcb_xvmc_context_t     context
    874  ** @param uint32_t               xvimage_id
    875  ** @param uint16_t               width
    876  ** @param uint16_t               height
    877  ** @returns xcb_xvmc_create_subpicture_cookie_t
    878  **
    879  *****************************************************************************/
    880 
    881 xcb_xvmc_create_subpicture_cookie_t
    882 xcb_xvmc_create_subpicture (xcb_connection_t      *c  /**< */,
    883                             xcb_xvmc_subpicture_t  subpicture_id  /**< */,
    884                             xcb_xvmc_context_t     context  /**< */,
    885                             uint32_t               xvimage_id  /**< */,
    886                             uint16_t               width  /**< */,
    887                             uint16_t               height  /**< */)
    888 {
    889     static const xcb_protocol_request_t xcb_req = {
    890         /* count */ 2,
    891         /* ext */ &xcb_xvmc_id,
    892         /* opcode */ XCB_XVMC_CREATE_SUBPICTURE,
    893         /* isvoid */ 0
    894     };
    895 
    896     struct iovec xcb_parts[4];
    897     xcb_xvmc_create_subpicture_cookie_t xcb_ret;
    898     xcb_xvmc_create_subpicture_request_t xcb_out;
    899 
    900     xcb_out.subpicture_id = subpicture_id;
    901     xcb_out.context = context;
    902     xcb_out.xvimage_id = xvimage_id;
    903     xcb_out.width = width;
    904     xcb_out.height = height;
    905 
    906     xcb_parts[2].iov_base = (char *) &xcb_out;
    907     xcb_parts[2].iov_len = sizeof(xcb_out);
    908     xcb_parts[3].iov_base = 0;
    909     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    910     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
    911     return xcb_ret;
    912 }
    913 
    914 
    915 /*****************************************************************************
    916  **
    917  ** xcb_xvmc_create_subpicture_cookie_t xcb_xvmc_create_subpicture_unchecked
    918  **
    919  ** @param xcb_connection_t      *c
    920  ** @param xcb_xvmc_subpicture_t  subpicture_id
    921  ** @param xcb_xvmc_context_t     context
    922  ** @param uint32_t               xvimage_id
    923  ** @param uint16_t               width
    924  ** @param uint16_t               height
    925  ** @returns xcb_xvmc_create_subpicture_cookie_t
    926  **
    927  *****************************************************************************/
    928 
    929 xcb_xvmc_create_subpicture_cookie_t
    930 xcb_xvmc_create_subpicture_unchecked (xcb_connection_t      *c  /**< */,
    931                                       xcb_xvmc_subpicture_t  subpicture_id  /**< */,
    932                                       xcb_xvmc_context_t     context  /**< */,
    933                                       uint32_t               xvimage_id  /**< */,
    934                                       uint16_t               width  /**< */,
    935                                       uint16_t               height  /**< */)
    936 {
    937     static const xcb_protocol_request_t xcb_req = {
    938         /* count */ 2,
    939         /* ext */ &xcb_xvmc_id,
    940         /* opcode */ XCB_XVMC_CREATE_SUBPICTURE,
    941         /* isvoid */ 0
    942     };
    943 
    944     struct iovec xcb_parts[4];
    945     xcb_xvmc_create_subpicture_cookie_t xcb_ret;
    946     xcb_xvmc_create_subpicture_request_t xcb_out;
    947 
    948     xcb_out.subpicture_id = subpicture_id;
    949     xcb_out.context = context;
    950     xcb_out.xvimage_id = xvimage_id;
    951     xcb_out.width = width;
    952     xcb_out.height = height;
    953 
    954     xcb_parts[2].iov_base = (char *) &xcb_out;
    955     xcb_parts[2].iov_len = sizeof(xcb_out);
    956     xcb_parts[3].iov_base = 0;
    957     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
    958     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
    959     return xcb_ret;
    960 }
    961 
    962 
    963 /*****************************************************************************
    964  **
    965  ** uint32_t * xcb_xvmc_create_subpicture_priv_data
    966  **
    967  ** @param const xcb_xvmc_create_subpicture_reply_t *R
    968  ** @returns uint32_t *
    969  **
    970  *****************************************************************************/
    971 
    972 uint32_t *
    973 xcb_xvmc_create_subpicture_priv_data (const xcb_xvmc_create_subpicture_reply_t *R  /**< */)
    974 {
    975     return (uint32_t *) (R + 1);
    976 }
    977 
    978 
    979 /*****************************************************************************
    980  **
    981  ** int xcb_xvmc_create_subpicture_priv_data_length
    982  **
    983  ** @param const xcb_xvmc_create_subpicture_reply_t *R
    984  ** @returns int
    985  **
    986  *****************************************************************************/
    987 
    988 int
    989 xcb_xvmc_create_subpicture_priv_data_length (const xcb_xvmc_create_subpicture_reply_t *R  /**< */)
    990 {
    991     return R->length;
    992 }
    993 
    994 
    995 /*****************************************************************************
    996  **
    997  ** xcb_generic_iterator_t xcb_xvmc_create_subpicture_priv_data_end
    998  **
    999  ** @param const xcb_xvmc_create_subpicture_reply_t *R
   1000  ** @returns xcb_generic_iterator_t
   1001  **
   1002  *****************************************************************************/
   1003 
   1004 xcb_generic_iterator_t
   1005 xcb_xvmc_create_subpicture_priv_data_end (const xcb_xvmc_create_subpicture_reply_t *R  /**< */)
   1006 {
   1007     xcb_generic_iterator_t i;
   1008     i.data = ((uint32_t *) (R + 1)) + (R->length);
   1009     i.rem = 0;
   1010     i.index = (char *) i.data - (char *) R;
   1011     return i;
   1012 }
   1013 
   1014 
   1015 /*****************************************************************************
   1016  **
   1017  ** xcb_xvmc_create_subpicture_reply_t * xcb_xvmc_create_subpicture_reply
   1018  **
   1019  ** @param xcb_connection_t                     *c
   1020  ** @param xcb_xvmc_create_subpicture_cookie_t   cookie
   1021  ** @param xcb_generic_error_t                 **e
   1022  ** @returns xcb_xvmc_create_subpicture_reply_t *
   1023  **
   1024  *****************************************************************************/
   1025 
   1026 xcb_xvmc_create_subpicture_reply_t *
   1027 xcb_xvmc_create_subpicture_reply (xcb_connection_t                     *c  /**< */,
   1028                                   xcb_xvmc_create_subpicture_cookie_t   cookie  /**< */,
   1029                                   xcb_generic_error_t                 **e  /**< */)
   1030 {
   1031     return (xcb_xvmc_create_subpicture_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
   1032 }
   1033 
   1034 
   1035 /*****************************************************************************
   1036  **
   1037  ** xcb_void_cookie_t xcb_xvmc_destroy_subpicture_checked
   1038  **
   1039  ** @param xcb_connection_t      *c
   1040  ** @param xcb_xvmc_subpicture_t  subpicture_id
   1041  ** @returns xcb_void_cookie_t
   1042  **
   1043  *****************************************************************************/
   1044 
   1045 xcb_void_cookie_t
   1046 xcb_xvmc_destroy_subpicture_checked (xcb_connection_t      *c  /**< */,
   1047                                      xcb_xvmc_subpicture_t  subpicture_id  /**< */)
   1048 {
   1049     static const xcb_protocol_request_t xcb_req = {
   1050         /* count */ 2,
   1051         /* ext */ &xcb_xvmc_id,
   1052         /* opcode */ XCB_XVMC_DESTROY_SUBPICTURE,
   1053         /* isvoid */ 1
   1054     };
   1055 
   1056     struct iovec xcb_parts[4];
   1057     xcb_void_cookie_t xcb_ret;
   1058     xcb_xvmc_destroy_subpicture_request_t xcb_out;
   1059 
   1060     xcb_out.subpicture_id = subpicture_id;
   1061 
   1062     xcb_parts[2].iov_base = (char *) &xcb_out;
   1063     xcb_parts[2].iov_len = sizeof(xcb_out);
   1064     xcb_parts[3].iov_base = 0;
   1065     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
   1066     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
   1067     return xcb_ret;
   1068 }
   1069 
   1070 
   1071 /*****************************************************************************
   1072  **
   1073  ** xcb_void_cookie_t xcb_xvmc_destroy_subpicture
   1074  **
   1075  ** @param xcb_connection_t      *c
   1076  ** @param xcb_xvmc_subpicture_t  subpicture_id
   1077  ** @returns xcb_void_cookie_t
   1078  **
   1079  *****************************************************************************/
   1080 
   1081 xcb_void_cookie_t
   1082 xcb_xvmc_destroy_subpicture (xcb_connection_t      *c  /**< */,
   1083                              xcb_xvmc_subpicture_t  subpicture_id  /**< */)
   1084 {
   1085     static const xcb_protocol_request_t xcb_req = {
   1086         /* count */ 2,
   1087         /* ext */ &xcb_xvmc_id,
   1088         /* opcode */ XCB_XVMC_DESTROY_SUBPICTURE,
   1089         /* isvoid */ 1
   1090     };
   1091 
   1092     struct iovec xcb_parts[4];
   1093     xcb_void_cookie_t xcb_ret;
   1094     xcb_xvmc_destroy_subpicture_request_t xcb_out;
   1095 
   1096     xcb_out.subpicture_id = subpicture_id;
   1097 
   1098     xcb_parts[2].iov_base = (char *) &xcb_out;
   1099     xcb_parts[2].iov_len = sizeof(xcb_out);
   1100     xcb_parts[3].iov_base = 0;
   1101     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
   1102     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
   1103     return xcb_ret;
   1104 }
   1105 
   1106 
   1107 /*****************************************************************************
   1108  **
   1109  ** xcb_xvmc_list_subpicture_types_cookie_t xcb_xvmc_list_subpicture_types
   1110  **
   1111  ** @param xcb_connection_t   *c
   1112  ** @param xcb_xv_port_t       port_id
   1113  ** @param xcb_xvmc_surface_t  surface_id
   1114  ** @returns xcb_xvmc_list_subpicture_types_cookie_t
   1115  **
   1116  *****************************************************************************/
   1117 
   1118 xcb_xvmc_list_subpicture_types_cookie_t
   1119 xcb_xvmc_list_subpicture_types (xcb_connection_t   *c  /**< */,
   1120                                 xcb_xv_port_t       port_id  /**< */,
   1121                                 xcb_xvmc_surface_t  surface_id  /**< */)
   1122 {
   1123     static const xcb_protocol_request_t xcb_req = {
   1124         /* count */ 2,
   1125         /* ext */ &xcb_xvmc_id,
   1126         /* opcode */ XCB_XVMC_LIST_SUBPICTURE_TYPES,
   1127         /* isvoid */ 0
   1128     };
   1129 
   1130     struct iovec xcb_parts[4];
   1131     xcb_xvmc_list_subpicture_types_cookie_t xcb_ret;
   1132     xcb_xvmc_list_subpicture_types_request_t xcb_out;
   1133 
   1134     xcb_out.port_id = port_id;
   1135     xcb_out.surface_id = surface_id;
   1136 
   1137     xcb_parts[2].iov_base = (char *) &xcb_out;
   1138     xcb_parts[2].iov_len = sizeof(xcb_out);
   1139     xcb_parts[3].iov_base = 0;
   1140     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
   1141     xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
   1142     return xcb_ret;
   1143 }
   1144 
   1145 
   1146 /*****************************************************************************
   1147  **
   1148  ** xcb_xvmc_list_subpicture_types_cookie_t xcb_xvmc_list_subpicture_types_unchecked
   1149  **
   1150  ** @param xcb_connection_t   *c
   1151  ** @param xcb_xv_port_t       port_id
   1152  ** @param xcb_xvmc_surface_t  surface_id
   1153  ** @returns xcb_xvmc_list_subpicture_types_cookie_t
   1154  **
   1155  *****************************************************************************/
   1156 
   1157 xcb_xvmc_list_subpicture_types_cookie_t
   1158 xcb_xvmc_list_subpicture_types_unchecked (xcb_connection_t   *c  /**< */,
   1159                                           xcb_xv_port_t       port_id  /**< */,
   1160                                           xcb_xvmc_surface_t  surface_id  /**< */)
   1161 {
   1162     static const xcb_protocol_request_t xcb_req = {
   1163         /* count */ 2,
   1164         /* ext */ &xcb_xvmc_id,
   1165         /* opcode */ XCB_XVMC_LIST_SUBPICTURE_TYPES,
   1166         /* isvoid */ 0
   1167     };
   1168 
   1169     struct iovec xcb_parts[4];
   1170     xcb_xvmc_list_subpicture_types_cookie_t xcb_ret;
   1171     xcb_xvmc_list_subpicture_types_request_t xcb_out;
   1172 
   1173     xcb_out.port_id = port_id;
   1174     xcb_out.surface_id = surface_id;
   1175 
   1176     xcb_parts[2].iov_base = (char *) &xcb_out;
   1177     xcb_parts[2].iov_len = sizeof(xcb_out);
   1178     xcb_parts[3].iov_base = 0;
   1179     xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
   1180     xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
   1181     return xcb_ret;
   1182 }
   1183 
   1184 
   1185 /*****************************************************************************
   1186  **
   1187  ** xcb_xv_image_format_info_t * xcb_xvmc_list_subpicture_types_types
   1188  **
   1189  ** @param const xcb_xvmc_list_subpicture_types_reply_t *R
   1190  ** @returns xcb_xv_image_format_info_t *
   1191  **
   1192  *****************************************************************************/
   1193 
   1194 xcb_xv_image_format_info_t *
   1195 xcb_xvmc_list_subpicture_types_types (const xcb_xvmc_list_subpicture_types_reply_t *R  /**< */)
   1196 {
   1197     return (xcb_xv_image_format_info_t *) (R + 1);
   1198 }
   1199 
   1200 
   1201 /*****************************************************************************
   1202  **
   1203  ** int xcb_xvmc_list_subpicture_types_types_length
   1204  **
   1205  ** @param const xcb_xvmc_list_subpicture_types_reply_t *R
   1206  ** @returns int
   1207  **
   1208  *****************************************************************************/
   1209 
   1210 int
   1211 xcb_xvmc_list_subpicture_types_types_length (const xcb_xvmc_list_subpicture_types_reply_t *R  /**< */)
   1212 {
   1213     return R->num;
   1214 }
   1215 
   1216 
   1217 /*****************************************************************************
   1218  **
   1219  ** xcb_xv_image_format_info_iterator_t xcb_xvmc_list_subpicture_types_types_iterator
   1220  **
   1221  ** @param const xcb_xvmc_list_subpicture_types_reply_t *R
   1222  ** @returns xcb_xv_image_format_info_iterator_t
   1223  **
   1224  *****************************************************************************/
   1225 
   1226 xcb_xv_image_format_info_iterator_t
   1227 xcb_xvmc_list_subpicture_types_types_iterator (const xcb_xvmc_list_subpicture_types_reply_t *R  /**< */)
   1228 {
   1229     xcb_xv_image_format_info_iterator_t i;
   1230     i.data = (xcb_xv_image_format_info_t *) (R + 1);
   1231     i.rem = R->num;
   1232     i.index = (char *) i.data - (char *) R;
   1233     return i;
   1234 }
   1235 
   1236 
   1237 /*****************************************************************************
   1238  **
   1239  ** xcb_xvmc_list_subpicture_types_reply_t * xcb_xvmc_list_subpicture_types_reply
   1240  **
   1241  ** @param xcb_connection_t                         *c
   1242  ** @param xcb_xvmc_list_subpicture_types_cookie_t   cookie
   1243  ** @param xcb_generic_error_t                     **e
   1244  ** @returns xcb_xvmc_list_subpicture_types_reply_t *
   1245  **
   1246  *****************************************************************************/
   1247 
   1248 xcb_xvmc_list_subpicture_types_reply_t *
   1249 xcb_xvmc_list_subpicture_types_reply (xcb_connection_t                         *c  /**< */,
   1250                                       xcb_xvmc_list_subpicture_types_cookie_t   cookie  /**< */,
   1251                                       xcb_generic_error_t                     **e  /**< */)
   1252 {
   1253     return (xcb_xvmc_list_subpicture_types_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
   1254 }
   1255 
   1256