Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:14:48

0001 /*
0002  * This file generated automatically from xv.xml by c_client.py.
0003  * Edit at your peril.
0004  */
0005 
0006 /**
0007  * @defgroup XCB_Xv_API XCB Xv API
0008  * @brief Xv XCB Protocol Implementation.
0009  * @{
0010  **/
0011 
0012 #ifndef __XV_H
0013 #define __XV_H
0014 
0015 #include "xcb.h"
0016 #include "xproto.h"
0017 #include "shm.h"
0018 
0019 #ifdef __cplusplus
0020 extern "C" {
0021 #endif
0022 
0023 #define XCB_XV_MAJOR_VERSION 2
0024 #define XCB_XV_MINOR_VERSION 2
0025 
0026 extern xcb_extension_t xcb_xv_id;
0027 
0028 typedef uint32_t xcb_xv_port_t;
0029 
0030 /**
0031  * @brief xcb_xv_port_iterator_t
0032  **/
0033 typedef struct xcb_xv_port_iterator_t {
0034     xcb_xv_port_t *data;
0035     int            rem;
0036     int            index;
0037 } xcb_xv_port_iterator_t;
0038 
0039 typedef uint32_t xcb_xv_encoding_t;
0040 
0041 /**
0042  * @brief xcb_xv_encoding_iterator_t
0043  **/
0044 typedef struct xcb_xv_encoding_iterator_t {
0045     xcb_xv_encoding_t *data;
0046     int                rem;
0047     int                index;
0048 } xcb_xv_encoding_iterator_t;
0049 
0050 typedef enum xcb_xv_type_t {
0051     XCB_XV_TYPE_INPUT_MASK = 1,
0052     XCB_XV_TYPE_OUTPUT_MASK = 2,
0053     XCB_XV_TYPE_VIDEO_MASK = 4,
0054     XCB_XV_TYPE_STILL_MASK = 8,
0055     XCB_XV_TYPE_IMAGE_MASK = 16
0056 } xcb_xv_type_t;
0057 
0058 typedef enum xcb_xv_image_format_info_type_t {
0059     XCB_XV_IMAGE_FORMAT_INFO_TYPE_RGB = 0,
0060     XCB_XV_IMAGE_FORMAT_INFO_TYPE_YUV = 1
0061 } xcb_xv_image_format_info_type_t;
0062 
0063 typedef enum xcb_xv_image_format_info_format_t {
0064     XCB_XV_IMAGE_FORMAT_INFO_FORMAT_PACKED = 0,
0065     XCB_XV_IMAGE_FORMAT_INFO_FORMAT_PLANAR = 1
0066 } xcb_xv_image_format_info_format_t;
0067 
0068 typedef enum xcb_xv_attribute_flag_t {
0069     XCB_XV_ATTRIBUTE_FLAG_GETTABLE = 1,
0070     XCB_XV_ATTRIBUTE_FLAG_SETTABLE = 2
0071 } xcb_xv_attribute_flag_t;
0072 
0073 typedef enum xcb_xv_video_notify_reason_t {
0074     XCB_XV_VIDEO_NOTIFY_REASON_STARTED = 0,
0075     XCB_XV_VIDEO_NOTIFY_REASON_STOPPED = 1,
0076     XCB_XV_VIDEO_NOTIFY_REASON_BUSY = 2,
0077     XCB_XV_VIDEO_NOTIFY_REASON_PREEMPTED = 3,
0078     XCB_XV_VIDEO_NOTIFY_REASON_HARD_ERROR = 4
0079 } xcb_xv_video_notify_reason_t;
0080 
0081 typedef enum xcb_xv_scanline_order_t {
0082     XCB_XV_SCANLINE_ORDER_TOP_TO_BOTTOM = 0,
0083     XCB_XV_SCANLINE_ORDER_BOTTOM_TO_TOP = 1
0084 } xcb_xv_scanline_order_t;
0085 
0086 typedef enum xcb_xv_grab_port_status_t {
0087     XCB_XV_GRAB_PORT_STATUS_SUCCESS = 0,
0088     XCB_XV_GRAB_PORT_STATUS_BAD_EXTENSION = 1,
0089     XCB_XV_GRAB_PORT_STATUS_ALREADY_GRABBED = 2,
0090     XCB_XV_GRAB_PORT_STATUS_INVALID_TIME = 3,
0091     XCB_XV_GRAB_PORT_STATUS_BAD_REPLY = 4,
0092     XCB_XV_GRAB_PORT_STATUS_BAD_ALLOC = 5
0093 } xcb_xv_grab_port_status_t;
0094 
0095 /**
0096  * @brief xcb_xv_rational_t
0097  **/
0098 typedef struct xcb_xv_rational_t {
0099     int32_t numerator;
0100     int32_t denominator;
0101 } xcb_xv_rational_t;
0102 
0103 /**
0104  * @brief xcb_xv_rational_iterator_t
0105  **/
0106 typedef struct xcb_xv_rational_iterator_t {
0107     xcb_xv_rational_t *data;
0108     int                rem;
0109     int                index;
0110 } xcb_xv_rational_iterator_t;
0111 
0112 /**
0113  * @brief xcb_xv_format_t
0114  **/
0115 typedef struct xcb_xv_format_t {
0116     xcb_visualid_t visual;
0117     uint8_t        depth;
0118     uint8_t        pad0[3];
0119 } xcb_xv_format_t;
0120 
0121 /**
0122  * @brief xcb_xv_format_iterator_t
0123  **/
0124 typedef struct xcb_xv_format_iterator_t {
0125     xcb_xv_format_t *data;
0126     int              rem;
0127     int              index;
0128 } xcb_xv_format_iterator_t;
0129 
0130 /**
0131  * @brief xcb_xv_adaptor_info_t
0132  **/
0133 typedef struct xcb_xv_adaptor_info_t {
0134     xcb_xv_port_t base_id;
0135     uint16_t      name_size;
0136     uint16_t      num_ports;
0137     uint16_t      num_formats;
0138     uint8_t       type;
0139     uint8_t       pad0;
0140 } xcb_xv_adaptor_info_t;
0141 
0142 /**
0143  * @brief xcb_xv_adaptor_info_iterator_t
0144  **/
0145 typedef struct xcb_xv_adaptor_info_iterator_t {
0146     xcb_xv_adaptor_info_t *data;
0147     int                    rem;
0148     int                    index;
0149 } xcb_xv_adaptor_info_iterator_t;
0150 
0151 /**
0152  * @brief xcb_xv_encoding_info_t
0153  **/
0154 typedef struct xcb_xv_encoding_info_t {
0155     xcb_xv_encoding_t encoding;
0156     uint16_t          name_size;
0157     uint16_t          width;
0158     uint16_t          height;
0159     uint8_t           pad0[2];
0160     xcb_xv_rational_t rate;
0161 } xcb_xv_encoding_info_t;
0162 
0163 /**
0164  * @brief xcb_xv_encoding_info_iterator_t
0165  **/
0166 typedef struct xcb_xv_encoding_info_iterator_t {
0167     xcb_xv_encoding_info_t *data;
0168     int                     rem;
0169     int                     index;
0170 } xcb_xv_encoding_info_iterator_t;
0171 
0172 /**
0173  * @brief xcb_xv_image_t
0174  **/
0175 typedef struct xcb_xv_image_t {
0176     uint32_t id;
0177     uint16_t width;
0178     uint16_t height;
0179     uint32_t data_size;
0180     uint32_t num_planes;
0181 } xcb_xv_image_t;
0182 
0183 /**
0184  * @brief xcb_xv_image_iterator_t
0185  **/
0186 typedef struct xcb_xv_image_iterator_t {
0187     xcb_xv_image_t *data;
0188     int             rem;
0189     int             index;
0190 } xcb_xv_image_iterator_t;
0191 
0192 /**
0193  * @brief xcb_xv_attribute_info_t
0194  **/
0195 typedef struct xcb_xv_attribute_info_t {
0196     uint32_t flags;
0197     int32_t  min;
0198     int32_t  max;
0199     uint32_t size;
0200 } xcb_xv_attribute_info_t;
0201 
0202 /**
0203  * @brief xcb_xv_attribute_info_iterator_t
0204  **/
0205 typedef struct xcb_xv_attribute_info_iterator_t {
0206     xcb_xv_attribute_info_t *data;
0207     int                      rem;
0208     int                      index;
0209 } xcb_xv_attribute_info_iterator_t;
0210 
0211 /**
0212  * @brief xcb_xv_image_format_info_t
0213  **/
0214 typedef struct xcb_xv_image_format_info_t {
0215     uint32_t id;
0216     uint8_t  type;
0217     uint8_t  byte_order;
0218     uint8_t  pad0[2];
0219     uint8_t  guid[16];
0220     uint8_t  bpp;
0221     uint8_t  num_planes;
0222     uint8_t  pad1[2];
0223     uint8_t  depth;
0224     uint8_t  pad2[3];
0225     uint32_t red_mask;
0226     uint32_t green_mask;
0227     uint32_t blue_mask;
0228     uint8_t  format;
0229     uint8_t  pad3[3];
0230     uint32_t y_sample_bits;
0231     uint32_t u_sample_bits;
0232     uint32_t v_sample_bits;
0233     uint32_t vhorz_y_period;
0234     uint32_t vhorz_u_period;
0235     uint32_t vhorz_v_period;
0236     uint32_t vvert_y_period;
0237     uint32_t vvert_u_period;
0238     uint32_t vvert_v_period;
0239     uint8_t  vcomp_order[32];
0240     uint8_t  vscanline_order;
0241     uint8_t  pad4[11];
0242 } xcb_xv_image_format_info_t;
0243 
0244 /**
0245  * @brief xcb_xv_image_format_info_iterator_t
0246  **/
0247 typedef struct xcb_xv_image_format_info_iterator_t {
0248     xcb_xv_image_format_info_t *data;
0249     int                         rem;
0250     int                         index;
0251 } xcb_xv_image_format_info_iterator_t;
0252 
0253 /** Opcode for xcb_xv_bad_port. */
0254 #define XCB_XV_BAD_PORT 0
0255 
0256 /**
0257  * @brief xcb_xv_bad_port_error_t
0258  **/
0259 typedef struct xcb_xv_bad_port_error_t {
0260     uint8_t  response_type;
0261     uint8_t  error_code;
0262     uint16_t sequence;
0263     uint32_t bad_value;
0264     uint16_t minor_opcode;
0265     uint8_t  major_opcode;
0266 } xcb_xv_bad_port_error_t;
0267 
0268 /** Opcode for xcb_xv_bad_encoding. */
0269 #define XCB_XV_BAD_ENCODING 1
0270 
0271 /**
0272  * @brief xcb_xv_bad_encoding_error_t
0273  **/
0274 typedef struct xcb_xv_bad_encoding_error_t {
0275     uint8_t  response_type;
0276     uint8_t  error_code;
0277     uint16_t sequence;
0278     uint32_t bad_value;
0279     uint16_t minor_opcode;
0280     uint8_t  major_opcode;
0281 } xcb_xv_bad_encoding_error_t;
0282 
0283 /** Opcode for xcb_xv_bad_control. */
0284 #define XCB_XV_BAD_CONTROL 2
0285 
0286 /**
0287  * @brief xcb_xv_bad_control_error_t
0288  **/
0289 typedef struct xcb_xv_bad_control_error_t {
0290     uint8_t  response_type;
0291     uint8_t  error_code;
0292     uint16_t sequence;
0293     uint32_t bad_value;
0294     uint16_t minor_opcode;
0295     uint8_t  major_opcode;
0296 } xcb_xv_bad_control_error_t;
0297 
0298 /** Opcode for xcb_xv_video_notify. */
0299 #define XCB_XV_VIDEO_NOTIFY 0
0300 
0301 /**
0302  * @brief xcb_xv_video_notify_event_t
0303  **/
0304 typedef struct xcb_xv_video_notify_event_t {
0305     uint8_t         response_type;
0306     uint8_t         reason;
0307     uint16_t        sequence;
0308     xcb_timestamp_t time;
0309     xcb_drawable_t  drawable;
0310     xcb_xv_port_t   port;
0311 } xcb_xv_video_notify_event_t;
0312 
0313 /** Opcode for xcb_xv_port_notify. */
0314 #define XCB_XV_PORT_NOTIFY 1
0315 
0316 /**
0317  * @brief xcb_xv_port_notify_event_t
0318  **/
0319 typedef struct xcb_xv_port_notify_event_t {
0320     uint8_t         response_type;
0321     uint8_t         pad0;
0322     uint16_t        sequence;
0323     xcb_timestamp_t time;
0324     xcb_xv_port_t   port;
0325     xcb_atom_t      attribute;
0326     int32_t         value;
0327 } xcb_xv_port_notify_event_t;
0328 
0329 /**
0330  * @brief xcb_xv_query_extension_cookie_t
0331  **/
0332 typedef struct xcb_xv_query_extension_cookie_t {
0333     unsigned int sequence;
0334 } xcb_xv_query_extension_cookie_t;
0335 
0336 /** Opcode for xcb_xv_query_extension. */
0337 #define XCB_XV_QUERY_EXTENSION 0
0338 
0339 /**
0340  * @brief xcb_xv_query_extension_request_t
0341  **/
0342 typedef struct xcb_xv_query_extension_request_t {
0343     uint8_t  major_opcode;
0344     uint8_t  minor_opcode;
0345     uint16_t length;
0346 } xcb_xv_query_extension_request_t;
0347 
0348 /**
0349  * @brief xcb_xv_query_extension_reply_t
0350  **/
0351 typedef struct xcb_xv_query_extension_reply_t {
0352     uint8_t  response_type;
0353     uint8_t  pad0;
0354     uint16_t sequence;
0355     uint32_t length;
0356     uint16_t major;
0357     uint16_t minor;
0358 } xcb_xv_query_extension_reply_t;
0359 
0360 /**
0361  * @brief xcb_xv_query_adaptors_cookie_t
0362  **/
0363 typedef struct xcb_xv_query_adaptors_cookie_t {
0364     unsigned int sequence;
0365 } xcb_xv_query_adaptors_cookie_t;
0366 
0367 /** Opcode for xcb_xv_query_adaptors. */
0368 #define XCB_XV_QUERY_ADAPTORS 1
0369 
0370 /**
0371  * @brief xcb_xv_query_adaptors_request_t
0372  **/
0373 typedef struct xcb_xv_query_adaptors_request_t {
0374     uint8_t      major_opcode;
0375     uint8_t      minor_opcode;
0376     uint16_t     length;
0377     xcb_window_t window;
0378 } xcb_xv_query_adaptors_request_t;
0379 
0380 /**
0381  * @brief xcb_xv_query_adaptors_reply_t
0382  **/
0383 typedef struct xcb_xv_query_adaptors_reply_t {
0384     uint8_t  response_type;
0385     uint8_t  pad0;
0386     uint16_t sequence;
0387     uint32_t length;
0388     uint16_t num_adaptors;
0389     uint8_t  pad1[22];
0390 } xcb_xv_query_adaptors_reply_t;
0391 
0392 /**
0393  * @brief xcb_xv_query_encodings_cookie_t
0394  **/
0395 typedef struct xcb_xv_query_encodings_cookie_t {
0396     unsigned int sequence;
0397 } xcb_xv_query_encodings_cookie_t;
0398 
0399 /** Opcode for xcb_xv_query_encodings. */
0400 #define XCB_XV_QUERY_ENCODINGS 2
0401 
0402 /**
0403  * @brief xcb_xv_query_encodings_request_t
0404  **/
0405 typedef struct xcb_xv_query_encodings_request_t {
0406     uint8_t       major_opcode;
0407     uint8_t       minor_opcode;
0408     uint16_t      length;
0409     xcb_xv_port_t port;
0410 } xcb_xv_query_encodings_request_t;
0411 
0412 /**
0413  * @brief xcb_xv_query_encodings_reply_t
0414  **/
0415 typedef struct xcb_xv_query_encodings_reply_t {
0416     uint8_t  response_type;
0417     uint8_t  pad0;
0418     uint16_t sequence;
0419     uint32_t length;
0420     uint16_t num_encodings;
0421     uint8_t  pad1[22];
0422 } xcb_xv_query_encodings_reply_t;
0423 
0424 /**
0425  * @brief xcb_xv_grab_port_cookie_t
0426  **/
0427 typedef struct xcb_xv_grab_port_cookie_t {
0428     unsigned int sequence;
0429 } xcb_xv_grab_port_cookie_t;
0430 
0431 /** Opcode for xcb_xv_grab_port. */
0432 #define XCB_XV_GRAB_PORT 3
0433 
0434 /**
0435  * @brief xcb_xv_grab_port_request_t
0436  **/
0437 typedef struct xcb_xv_grab_port_request_t {
0438     uint8_t         major_opcode;
0439     uint8_t         minor_opcode;
0440     uint16_t        length;
0441     xcb_xv_port_t   port;
0442     xcb_timestamp_t time;
0443 } xcb_xv_grab_port_request_t;
0444 
0445 /**
0446  * @brief xcb_xv_grab_port_reply_t
0447  **/
0448 typedef struct xcb_xv_grab_port_reply_t {
0449     uint8_t  response_type;
0450     uint8_t  result;
0451     uint16_t sequence;
0452     uint32_t length;
0453 } xcb_xv_grab_port_reply_t;
0454 
0455 /** Opcode for xcb_xv_ungrab_port. */
0456 #define XCB_XV_UNGRAB_PORT 4
0457 
0458 /**
0459  * @brief xcb_xv_ungrab_port_request_t
0460  **/
0461 typedef struct xcb_xv_ungrab_port_request_t {
0462     uint8_t         major_opcode;
0463     uint8_t         minor_opcode;
0464     uint16_t        length;
0465     xcb_xv_port_t   port;
0466     xcb_timestamp_t time;
0467 } xcb_xv_ungrab_port_request_t;
0468 
0469 /** Opcode for xcb_xv_put_video. */
0470 #define XCB_XV_PUT_VIDEO 5
0471 
0472 /**
0473  * @brief xcb_xv_put_video_request_t
0474  **/
0475 typedef struct xcb_xv_put_video_request_t {
0476     uint8_t        major_opcode;
0477     uint8_t        minor_opcode;
0478     uint16_t       length;
0479     xcb_xv_port_t  port;
0480     xcb_drawable_t drawable;
0481     xcb_gcontext_t gc;
0482     int16_t        vid_x;
0483     int16_t        vid_y;
0484     uint16_t       vid_w;
0485     uint16_t       vid_h;
0486     int16_t        drw_x;
0487     int16_t        drw_y;
0488     uint16_t       drw_w;
0489     uint16_t       drw_h;
0490 } xcb_xv_put_video_request_t;
0491 
0492 /** Opcode for xcb_xv_put_still. */
0493 #define XCB_XV_PUT_STILL 6
0494 
0495 /**
0496  * @brief xcb_xv_put_still_request_t
0497  **/
0498 typedef struct xcb_xv_put_still_request_t {
0499     uint8_t        major_opcode;
0500     uint8_t        minor_opcode;
0501     uint16_t       length;
0502     xcb_xv_port_t  port;
0503     xcb_drawable_t drawable;
0504     xcb_gcontext_t gc;
0505     int16_t        vid_x;
0506     int16_t        vid_y;
0507     uint16_t       vid_w;
0508     uint16_t       vid_h;
0509     int16_t        drw_x;
0510     int16_t        drw_y;
0511     uint16_t       drw_w;
0512     uint16_t       drw_h;
0513 } xcb_xv_put_still_request_t;
0514 
0515 /** Opcode for xcb_xv_get_video. */
0516 #define XCB_XV_GET_VIDEO 7
0517 
0518 /**
0519  * @brief xcb_xv_get_video_request_t
0520  **/
0521 typedef struct xcb_xv_get_video_request_t {
0522     uint8_t        major_opcode;
0523     uint8_t        minor_opcode;
0524     uint16_t       length;
0525     xcb_xv_port_t  port;
0526     xcb_drawable_t drawable;
0527     xcb_gcontext_t gc;
0528     int16_t        vid_x;
0529     int16_t        vid_y;
0530     uint16_t       vid_w;
0531     uint16_t       vid_h;
0532     int16_t        drw_x;
0533     int16_t        drw_y;
0534     uint16_t       drw_w;
0535     uint16_t       drw_h;
0536 } xcb_xv_get_video_request_t;
0537 
0538 /** Opcode for xcb_xv_get_still. */
0539 #define XCB_XV_GET_STILL 8
0540 
0541 /**
0542  * @brief xcb_xv_get_still_request_t
0543  **/
0544 typedef struct xcb_xv_get_still_request_t {
0545     uint8_t        major_opcode;
0546     uint8_t        minor_opcode;
0547     uint16_t       length;
0548     xcb_xv_port_t  port;
0549     xcb_drawable_t drawable;
0550     xcb_gcontext_t gc;
0551     int16_t        vid_x;
0552     int16_t        vid_y;
0553     uint16_t       vid_w;
0554     uint16_t       vid_h;
0555     int16_t        drw_x;
0556     int16_t        drw_y;
0557     uint16_t       drw_w;
0558     uint16_t       drw_h;
0559 } xcb_xv_get_still_request_t;
0560 
0561 /** Opcode for xcb_xv_stop_video. */
0562 #define XCB_XV_STOP_VIDEO 9
0563 
0564 /**
0565  * @brief xcb_xv_stop_video_request_t
0566  **/
0567 typedef struct xcb_xv_stop_video_request_t {
0568     uint8_t        major_opcode;
0569     uint8_t        minor_opcode;
0570     uint16_t       length;
0571     xcb_xv_port_t  port;
0572     xcb_drawable_t drawable;
0573 } xcb_xv_stop_video_request_t;
0574 
0575 /** Opcode for xcb_xv_select_video_notify. */
0576 #define XCB_XV_SELECT_VIDEO_NOTIFY 10
0577 
0578 /**
0579  * @brief xcb_xv_select_video_notify_request_t
0580  **/
0581 typedef struct xcb_xv_select_video_notify_request_t {
0582     uint8_t        major_opcode;
0583     uint8_t        minor_opcode;
0584     uint16_t       length;
0585     xcb_drawable_t drawable;
0586     uint8_t        onoff;
0587     uint8_t        pad0[3];
0588 } xcb_xv_select_video_notify_request_t;
0589 
0590 /** Opcode for xcb_xv_select_port_notify. */
0591 #define XCB_XV_SELECT_PORT_NOTIFY 11
0592 
0593 /**
0594  * @brief xcb_xv_select_port_notify_request_t
0595  **/
0596 typedef struct xcb_xv_select_port_notify_request_t {
0597     uint8_t       major_opcode;
0598     uint8_t       minor_opcode;
0599     uint16_t      length;
0600     xcb_xv_port_t port;
0601     uint8_t       onoff;
0602     uint8_t       pad0[3];
0603 } xcb_xv_select_port_notify_request_t;
0604 
0605 /**
0606  * @brief xcb_xv_query_best_size_cookie_t
0607  **/
0608 typedef struct xcb_xv_query_best_size_cookie_t {
0609     unsigned int sequence;
0610 } xcb_xv_query_best_size_cookie_t;
0611 
0612 /** Opcode for xcb_xv_query_best_size. */
0613 #define XCB_XV_QUERY_BEST_SIZE 12
0614 
0615 /**
0616  * @brief xcb_xv_query_best_size_request_t
0617  **/
0618 typedef struct xcb_xv_query_best_size_request_t {
0619     uint8_t       major_opcode;
0620     uint8_t       minor_opcode;
0621     uint16_t      length;
0622     xcb_xv_port_t port;
0623     uint16_t      vid_w;
0624     uint16_t      vid_h;
0625     uint16_t      drw_w;
0626     uint16_t      drw_h;
0627     uint8_t       motion;
0628     uint8_t       pad0[3];
0629 } xcb_xv_query_best_size_request_t;
0630 
0631 /**
0632  * @brief xcb_xv_query_best_size_reply_t
0633  **/
0634 typedef struct xcb_xv_query_best_size_reply_t {
0635     uint8_t  response_type;
0636     uint8_t  pad0;
0637     uint16_t sequence;
0638     uint32_t length;
0639     uint16_t actual_width;
0640     uint16_t actual_height;
0641 } xcb_xv_query_best_size_reply_t;
0642 
0643 /** Opcode for xcb_xv_set_port_attribute. */
0644 #define XCB_XV_SET_PORT_ATTRIBUTE 13
0645 
0646 /**
0647  * @brief xcb_xv_set_port_attribute_request_t
0648  **/
0649 typedef struct xcb_xv_set_port_attribute_request_t {
0650     uint8_t       major_opcode;
0651     uint8_t       minor_opcode;
0652     uint16_t      length;
0653     xcb_xv_port_t port;
0654     xcb_atom_t    attribute;
0655     int32_t       value;
0656 } xcb_xv_set_port_attribute_request_t;
0657 
0658 /**
0659  * @brief xcb_xv_get_port_attribute_cookie_t
0660  **/
0661 typedef struct xcb_xv_get_port_attribute_cookie_t {
0662     unsigned int sequence;
0663 } xcb_xv_get_port_attribute_cookie_t;
0664 
0665 /** Opcode for xcb_xv_get_port_attribute. */
0666 #define XCB_XV_GET_PORT_ATTRIBUTE 14
0667 
0668 /**
0669  * @brief xcb_xv_get_port_attribute_request_t
0670  **/
0671 typedef struct xcb_xv_get_port_attribute_request_t {
0672     uint8_t       major_opcode;
0673     uint8_t       minor_opcode;
0674     uint16_t      length;
0675     xcb_xv_port_t port;
0676     xcb_atom_t    attribute;
0677 } xcb_xv_get_port_attribute_request_t;
0678 
0679 /**
0680  * @brief xcb_xv_get_port_attribute_reply_t
0681  **/
0682 typedef struct xcb_xv_get_port_attribute_reply_t {
0683     uint8_t  response_type;
0684     uint8_t  pad0;
0685     uint16_t sequence;
0686     uint32_t length;
0687     int32_t  value;
0688 } xcb_xv_get_port_attribute_reply_t;
0689 
0690 /**
0691  * @brief xcb_xv_query_port_attributes_cookie_t
0692  **/
0693 typedef struct xcb_xv_query_port_attributes_cookie_t {
0694     unsigned int sequence;
0695 } xcb_xv_query_port_attributes_cookie_t;
0696 
0697 /** Opcode for xcb_xv_query_port_attributes. */
0698 #define XCB_XV_QUERY_PORT_ATTRIBUTES 15
0699 
0700 /**
0701  * @brief xcb_xv_query_port_attributes_request_t
0702  **/
0703 typedef struct xcb_xv_query_port_attributes_request_t {
0704     uint8_t       major_opcode;
0705     uint8_t       minor_opcode;
0706     uint16_t      length;
0707     xcb_xv_port_t port;
0708 } xcb_xv_query_port_attributes_request_t;
0709 
0710 /**
0711  * @brief xcb_xv_query_port_attributes_reply_t
0712  **/
0713 typedef struct xcb_xv_query_port_attributes_reply_t {
0714     uint8_t  response_type;
0715     uint8_t  pad0;
0716     uint16_t sequence;
0717     uint32_t length;
0718     uint32_t num_attributes;
0719     uint32_t text_size;
0720     uint8_t  pad1[16];
0721 } xcb_xv_query_port_attributes_reply_t;
0722 
0723 /**
0724  * @brief xcb_xv_list_image_formats_cookie_t
0725  **/
0726 typedef struct xcb_xv_list_image_formats_cookie_t {
0727     unsigned int sequence;
0728 } xcb_xv_list_image_formats_cookie_t;
0729 
0730 /** Opcode for xcb_xv_list_image_formats. */
0731 #define XCB_XV_LIST_IMAGE_FORMATS 16
0732 
0733 /**
0734  * @brief xcb_xv_list_image_formats_request_t
0735  **/
0736 typedef struct xcb_xv_list_image_formats_request_t {
0737     uint8_t       major_opcode;
0738     uint8_t       minor_opcode;
0739     uint16_t      length;
0740     xcb_xv_port_t port;
0741 } xcb_xv_list_image_formats_request_t;
0742 
0743 /**
0744  * @brief xcb_xv_list_image_formats_reply_t
0745  **/
0746 typedef struct xcb_xv_list_image_formats_reply_t {
0747     uint8_t  response_type;
0748     uint8_t  pad0;
0749     uint16_t sequence;
0750     uint32_t length;
0751     uint32_t num_formats;
0752     uint8_t  pad1[20];
0753 } xcb_xv_list_image_formats_reply_t;
0754 
0755 /**
0756  * @brief xcb_xv_query_image_attributes_cookie_t
0757  **/
0758 typedef struct xcb_xv_query_image_attributes_cookie_t {
0759     unsigned int sequence;
0760 } xcb_xv_query_image_attributes_cookie_t;
0761 
0762 /** Opcode for xcb_xv_query_image_attributes. */
0763 #define XCB_XV_QUERY_IMAGE_ATTRIBUTES 17
0764 
0765 /**
0766  * @brief xcb_xv_query_image_attributes_request_t
0767  **/
0768 typedef struct xcb_xv_query_image_attributes_request_t {
0769     uint8_t       major_opcode;
0770     uint8_t       minor_opcode;
0771     uint16_t      length;
0772     xcb_xv_port_t port;
0773     uint32_t      id;
0774     uint16_t      width;
0775     uint16_t      height;
0776 } xcb_xv_query_image_attributes_request_t;
0777 
0778 /**
0779  * @brief xcb_xv_query_image_attributes_reply_t
0780  **/
0781 typedef struct xcb_xv_query_image_attributes_reply_t {
0782     uint8_t  response_type;
0783     uint8_t  pad0;
0784     uint16_t sequence;
0785     uint32_t length;
0786     uint32_t num_planes;
0787     uint32_t data_size;
0788     uint16_t width;
0789     uint16_t height;
0790     uint8_t  pad1[12];
0791 } xcb_xv_query_image_attributes_reply_t;
0792 
0793 /** Opcode for xcb_xv_put_image. */
0794 #define XCB_XV_PUT_IMAGE 18
0795 
0796 /**
0797  * @brief xcb_xv_put_image_request_t
0798  **/
0799 typedef struct xcb_xv_put_image_request_t {
0800     uint8_t        major_opcode;
0801     uint8_t        minor_opcode;
0802     uint16_t       length;
0803     xcb_xv_port_t  port;
0804     xcb_drawable_t drawable;
0805     xcb_gcontext_t gc;
0806     uint32_t       id;
0807     int16_t        src_x;
0808     int16_t        src_y;
0809     uint16_t       src_w;
0810     uint16_t       src_h;
0811     int16_t        drw_x;
0812     int16_t        drw_y;
0813     uint16_t       drw_w;
0814     uint16_t       drw_h;
0815     uint16_t       width;
0816     uint16_t       height;
0817 } xcb_xv_put_image_request_t;
0818 
0819 /** Opcode for xcb_xv_shm_put_image. */
0820 #define XCB_XV_SHM_PUT_IMAGE 19
0821 
0822 /**
0823  * @brief xcb_xv_shm_put_image_request_t
0824  **/
0825 typedef struct xcb_xv_shm_put_image_request_t {
0826     uint8_t        major_opcode;
0827     uint8_t        minor_opcode;
0828     uint16_t       length;
0829     xcb_xv_port_t  port;
0830     xcb_drawable_t drawable;
0831     xcb_gcontext_t gc;
0832     xcb_shm_seg_t  shmseg;
0833     uint32_t       id;
0834     uint32_t       offset;
0835     int16_t        src_x;
0836     int16_t        src_y;
0837     uint16_t       src_w;
0838     uint16_t       src_h;
0839     int16_t        drw_x;
0840     int16_t        drw_y;
0841     uint16_t       drw_w;
0842     uint16_t       drw_h;
0843     uint16_t       width;
0844     uint16_t       height;
0845     uint8_t        send_event;
0846     uint8_t        pad0[3];
0847 } xcb_xv_shm_put_image_request_t;
0848 
0849 /**
0850  * Get the next element of the iterator
0851  * @param i Pointer to a xcb_xv_port_iterator_t
0852  *
0853  * Get the next element in the iterator. The member rem is
0854  * decreased by one. The member data points to the next
0855  * element. The member index is increased by sizeof(xcb_xv_port_t)
0856  */
0857 void
0858 xcb_xv_port_next (xcb_xv_port_iterator_t *i);
0859 
0860 /**
0861  * Return the iterator pointing to the last element
0862  * @param i An xcb_xv_port_iterator_t
0863  * @return  The iterator pointing to the last element
0864  *
0865  * Set the current element in the iterator to the last element.
0866  * The member rem is set to 0. The member data points to the
0867  * last element.
0868  */
0869 xcb_generic_iterator_t
0870 xcb_xv_port_end (xcb_xv_port_iterator_t i);
0871 
0872 /**
0873  * Get the next element of the iterator
0874  * @param i Pointer to a xcb_xv_encoding_iterator_t
0875  *
0876  * Get the next element in the iterator. The member rem is
0877  * decreased by one. The member data points to the next
0878  * element. The member index is increased by sizeof(xcb_xv_encoding_t)
0879  */
0880 void
0881 xcb_xv_encoding_next (xcb_xv_encoding_iterator_t *i);
0882 
0883 /**
0884  * Return the iterator pointing to the last element
0885  * @param i An xcb_xv_encoding_iterator_t
0886  * @return  The iterator pointing to the last element
0887  *
0888  * Set the current element in the iterator to the last element.
0889  * The member rem is set to 0. The member data points to the
0890  * last element.
0891  */
0892 xcb_generic_iterator_t
0893 xcb_xv_encoding_end (xcb_xv_encoding_iterator_t i);
0894 
0895 /**
0896  * Get the next element of the iterator
0897  * @param i Pointer to a xcb_xv_rational_iterator_t
0898  *
0899  * Get the next element in the iterator. The member rem is
0900  * decreased by one. The member data points to the next
0901  * element. The member index is increased by sizeof(xcb_xv_rational_t)
0902  */
0903 void
0904 xcb_xv_rational_next (xcb_xv_rational_iterator_t *i);
0905 
0906 /**
0907  * Return the iterator pointing to the last element
0908  * @param i An xcb_xv_rational_iterator_t
0909  * @return  The iterator pointing to the last element
0910  *
0911  * Set the current element in the iterator to the last element.
0912  * The member rem is set to 0. The member data points to the
0913  * last element.
0914  */
0915 xcb_generic_iterator_t
0916 xcb_xv_rational_end (xcb_xv_rational_iterator_t i);
0917 
0918 /**
0919  * Get the next element of the iterator
0920  * @param i Pointer to a xcb_xv_format_iterator_t
0921  *
0922  * Get the next element in the iterator. The member rem is
0923  * decreased by one. The member data points to the next
0924  * element. The member index is increased by sizeof(xcb_xv_format_t)
0925  */
0926 void
0927 xcb_xv_format_next (xcb_xv_format_iterator_t *i);
0928 
0929 /**
0930  * Return the iterator pointing to the last element
0931  * @param i An xcb_xv_format_iterator_t
0932  * @return  The iterator pointing to the last element
0933  *
0934  * Set the current element in the iterator to the last element.
0935  * The member rem is set to 0. The member data points to the
0936  * last element.
0937  */
0938 xcb_generic_iterator_t
0939 xcb_xv_format_end (xcb_xv_format_iterator_t i);
0940 
0941 int
0942 xcb_xv_adaptor_info_sizeof (const void  *_buffer);
0943 
0944 char *
0945 xcb_xv_adaptor_info_name (const xcb_xv_adaptor_info_t *R);
0946 
0947 int
0948 xcb_xv_adaptor_info_name_length (const xcb_xv_adaptor_info_t *R);
0949 
0950 xcb_generic_iterator_t
0951 xcb_xv_adaptor_info_name_end (const xcb_xv_adaptor_info_t *R);
0952 
0953 xcb_xv_format_t *
0954 xcb_xv_adaptor_info_formats (const xcb_xv_adaptor_info_t *R);
0955 
0956 int
0957 xcb_xv_adaptor_info_formats_length (const xcb_xv_adaptor_info_t *R);
0958 
0959 xcb_xv_format_iterator_t
0960 xcb_xv_adaptor_info_formats_iterator (const xcb_xv_adaptor_info_t *R);
0961 
0962 /**
0963  * Get the next element of the iterator
0964  * @param i Pointer to a xcb_xv_adaptor_info_iterator_t
0965  *
0966  * Get the next element in the iterator. The member rem is
0967  * decreased by one. The member data points to the next
0968  * element. The member index is increased by sizeof(xcb_xv_adaptor_info_t)
0969  */
0970 void
0971 xcb_xv_adaptor_info_next (xcb_xv_adaptor_info_iterator_t *i);
0972 
0973 /**
0974  * Return the iterator pointing to the last element
0975  * @param i An xcb_xv_adaptor_info_iterator_t
0976  * @return  The iterator pointing to the last element
0977  *
0978  * Set the current element in the iterator to the last element.
0979  * The member rem is set to 0. The member data points to the
0980  * last element.
0981  */
0982 xcb_generic_iterator_t
0983 xcb_xv_adaptor_info_end (xcb_xv_adaptor_info_iterator_t i);
0984 
0985 int
0986 xcb_xv_encoding_info_sizeof (const void  *_buffer);
0987 
0988 char *
0989 xcb_xv_encoding_info_name (const xcb_xv_encoding_info_t *R);
0990 
0991 int
0992 xcb_xv_encoding_info_name_length (const xcb_xv_encoding_info_t *R);
0993 
0994 xcb_generic_iterator_t
0995 xcb_xv_encoding_info_name_end (const xcb_xv_encoding_info_t *R);
0996 
0997 /**
0998  * Get the next element of the iterator
0999  * @param i Pointer to a xcb_xv_encoding_info_iterator_t
1000  *
1001  * Get the next element in the iterator. The member rem is
1002  * decreased by one. The member data points to the next
1003  * element. The member index is increased by sizeof(xcb_xv_encoding_info_t)
1004  */
1005 void
1006 xcb_xv_encoding_info_next (xcb_xv_encoding_info_iterator_t *i);
1007 
1008 /**
1009  * Return the iterator pointing to the last element
1010  * @param i An xcb_xv_encoding_info_iterator_t
1011  * @return  The iterator pointing to the last element
1012  *
1013  * Set the current element in the iterator to the last element.
1014  * The member rem is set to 0. The member data points to the
1015  * last element.
1016  */
1017 xcb_generic_iterator_t
1018 xcb_xv_encoding_info_end (xcb_xv_encoding_info_iterator_t i);
1019 
1020 int
1021 xcb_xv_image_sizeof (const void  *_buffer);
1022 
1023 uint32_t *
1024 xcb_xv_image_pitches (const xcb_xv_image_t *R);
1025 
1026 int
1027 xcb_xv_image_pitches_length (const xcb_xv_image_t *R);
1028 
1029 xcb_generic_iterator_t
1030 xcb_xv_image_pitches_end (const xcb_xv_image_t *R);
1031 
1032 uint32_t *
1033 xcb_xv_image_offsets (const xcb_xv_image_t *R);
1034 
1035 int
1036 xcb_xv_image_offsets_length (const xcb_xv_image_t *R);
1037 
1038 xcb_generic_iterator_t
1039 xcb_xv_image_offsets_end (const xcb_xv_image_t *R);
1040 
1041 uint8_t *
1042 xcb_xv_image_data (const xcb_xv_image_t *R);
1043 
1044 int
1045 xcb_xv_image_data_length (const xcb_xv_image_t *R);
1046 
1047 xcb_generic_iterator_t
1048 xcb_xv_image_data_end (const xcb_xv_image_t *R);
1049 
1050 /**
1051  * Get the next element of the iterator
1052  * @param i Pointer to a xcb_xv_image_iterator_t
1053  *
1054  * Get the next element in the iterator. The member rem is
1055  * decreased by one. The member data points to the next
1056  * element. The member index is increased by sizeof(xcb_xv_image_t)
1057  */
1058 void
1059 xcb_xv_image_next (xcb_xv_image_iterator_t *i);
1060 
1061 /**
1062  * Return the iterator pointing to the last element
1063  * @param i An xcb_xv_image_iterator_t
1064  * @return  The iterator pointing to the last element
1065  *
1066  * Set the current element in the iterator to the last element.
1067  * The member rem is set to 0. The member data points to the
1068  * last element.
1069  */
1070 xcb_generic_iterator_t
1071 xcb_xv_image_end (xcb_xv_image_iterator_t i);
1072 
1073 int
1074 xcb_xv_attribute_info_sizeof (const void  *_buffer);
1075 
1076 char *
1077 xcb_xv_attribute_info_name (const xcb_xv_attribute_info_t *R);
1078 
1079 int
1080 xcb_xv_attribute_info_name_length (const xcb_xv_attribute_info_t *R);
1081 
1082 xcb_generic_iterator_t
1083 xcb_xv_attribute_info_name_end (const xcb_xv_attribute_info_t *R);
1084 
1085 /**
1086  * Get the next element of the iterator
1087  * @param i Pointer to a xcb_xv_attribute_info_iterator_t
1088  *
1089  * Get the next element in the iterator. The member rem is
1090  * decreased by one. The member data points to the next
1091  * element. The member index is increased by sizeof(xcb_xv_attribute_info_t)
1092  */
1093 void
1094 xcb_xv_attribute_info_next (xcb_xv_attribute_info_iterator_t *i);
1095 
1096 /**
1097  * Return the iterator pointing to the last element
1098  * @param i An xcb_xv_attribute_info_iterator_t
1099  * @return  The iterator pointing to the last element
1100  *
1101  * Set the current element in the iterator to the last element.
1102  * The member rem is set to 0. The member data points to the
1103  * last element.
1104  */
1105 xcb_generic_iterator_t
1106 xcb_xv_attribute_info_end (xcb_xv_attribute_info_iterator_t i);
1107 
1108 /**
1109  * Get the next element of the iterator
1110  * @param i Pointer to a xcb_xv_image_format_info_iterator_t
1111  *
1112  * Get the next element in the iterator. The member rem is
1113  * decreased by one. The member data points to the next
1114  * element. The member index is increased by sizeof(xcb_xv_image_format_info_t)
1115  */
1116 void
1117 xcb_xv_image_format_info_next (xcb_xv_image_format_info_iterator_t *i);
1118 
1119 /**
1120  * Return the iterator pointing to the last element
1121  * @param i An xcb_xv_image_format_info_iterator_t
1122  * @return  The iterator pointing to the last element
1123  *
1124  * Set the current element in the iterator to the last element.
1125  * The member rem is set to 0. The member data points to the
1126  * last element.
1127  */
1128 xcb_generic_iterator_t
1129 xcb_xv_image_format_info_end (xcb_xv_image_format_info_iterator_t i);
1130 
1131 /**
1132  *
1133  * @param c The connection
1134  * @return A cookie
1135  *
1136  * Delivers a request to the X server.
1137  *
1138  */
1139 xcb_xv_query_extension_cookie_t
1140 xcb_xv_query_extension (xcb_connection_t *c);
1141 
1142 /**
1143  *
1144  * @param c The connection
1145  * @return A cookie
1146  *
1147  * Delivers a request to the X server.
1148  *
1149  * This form can be used only if the request will cause
1150  * a reply to be generated. Any returned error will be
1151  * placed in the event queue.
1152  */
1153 xcb_xv_query_extension_cookie_t
1154 xcb_xv_query_extension_unchecked (xcb_connection_t *c);
1155 
1156 /**
1157  * Return the reply
1158  * @param c      The connection
1159  * @param cookie The cookie
1160  * @param e      The xcb_generic_error_t supplied
1161  *
1162  * Returns the reply of the request asked by
1163  *
1164  * The parameter @p e supplied to this function must be NULL if
1165  * xcb_xv_query_extension_unchecked(). is used.
1166  * Otherwise, it stores the error if any.
1167  *
1168  * The returned value must be freed by the caller using free().
1169  */
1170 xcb_xv_query_extension_reply_t *
1171 xcb_xv_query_extension_reply (xcb_connection_t                 *c,
1172                               xcb_xv_query_extension_cookie_t   cookie  /**< */,
1173                               xcb_generic_error_t             **e);
1174 
1175 int
1176 xcb_xv_query_adaptors_sizeof (const void  *_buffer);
1177 
1178 /**
1179  *
1180  * @param c The connection
1181  * @return A cookie
1182  *
1183  * Delivers a request to the X server.
1184  *
1185  */
1186 xcb_xv_query_adaptors_cookie_t
1187 xcb_xv_query_adaptors (xcb_connection_t *c,
1188                        xcb_window_t      window);
1189 
1190 /**
1191  *
1192  * @param c The connection
1193  * @return A cookie
1194  *
1195  * Delivers a request to the X server.
1196  *
1197  * This form can be used only if the request will cause
1198  * a reply to be generated. Any returned error will be
1199  * placed in the event queue.
1200  */
1201 xcb_xv_query_adaptors_cookie_t
1202 xcb_xv_query_adaptors_unchecked (xcb_connection_t *c,
1203                                  xcb_window_t      window);
1204 
1205 int
1206 xcb_xv_query_adaptors_info_length (const xcb_xv_query_adaptors_reply_t *R);
1207 
1208 xcb_xv_adaptor_info_iterator_t
1209 xcb_xv_query_adaptors_info_iterator (const xcb_xv_query_adaptors_reply_t *R);
1210 
1211 /**
1212  * Return the reply
1213  * @param c      The connection
1214  * @param cookie The cookie
1215  * @param e      The xcb_generic_error_t supplied
1216  *
1217  * Returns the reply of the request asked by
1218  *
1219  * The parameter @p e supplied to this function must be NULL if
1220  * xcb_xv_query_adaptors_unchecked(). is used.
1221  * Otherwise, it stores the error if any.
1222  *
1223  * The returned value must be freed by the caller using free().
1224  */
1225 xcb_xv_query_adaptors_reply_t *
1226 xcb_xv_query_adaptors_reply (xcb_connection_t                *c,
1227                              xcb_xv_query_adaptors_cookie_t   cookie  /**< */,
1228                              xcb_generic_error_t            **e);
1229 
1230 int
1231 xcb_xv_query_encodings_sizeof (const void  *_buffer);
1232 
1233 /**
1234  *
1235  * @param c The connection
1236  * @return A cookie
1237  *
1238  * Delivers a request to the X server.
1239  *
1240  */
1241 xcb_xv_query_encodings_cookie_t
1242 xcb_xv_query_encodings (xcb_connection_t *c,
1243                         xcb_xv_port_t     port);
1244 
1245 /**
1246  *
1247  * @param c The connection
1248  * @return A cookie
1249  *
1250  * Delivers a request to the X server.
1251  *
1252  * This form can be used only if the request will cause
1253  * a reply to be generated. Any returned error will be
1254  * placed in the event queue.
1255  */
1256 xcb_xv_query_encodings_cookie_t
1257 xcb_xv_query_encodings_unchecked (xcb_connection_t *c,
1258                                   xcb_xv_port_t     port);
1259 
1260 int
1261 xcb_xv_query_encodings_info_length (const xcb_xv_query_encodings_reply_t *R);
1262 
1263 xcb_xv_encoding_info_iterator_t
1264 xcb_xv_query_encodings_info_iterator (const xcb_xv_query_encodings_reply_t *R);
1265 
1266 /**
1267  * Return the reply
1268  * @param c      The connection
1269  * @param cookie The cookie
1270  * @param e      The xcb_generic_error_t supplied
1271  *
1272  * Returns the reply of the request asked by
1273  *
1274  * The parameter @p e supplied to this function must be NULL if
1275  * xcb_xv_query_encodings_unchecked(). is used.
1276  * Otherwise, it stores the error if any.
1277  *
1278  * The returned value must be freed by the caller using free().
1279  */
1280 xcb_xv_query_encodings_reply_t *
1281 xcb_xv_query_encodings_reply (xcb_connection_t                 *c,
1282                               xcb_xv_query_encodings_cookie_t   cookie  /**< */,
1283                               xcb_generic_error_t             **e);
1284 
1285 /**
1286  *
1287  * @param c The connection
1288  * @return A cookie
1289  *
1290  * Delivers a request to the X server.
1291  *
1292  */
1293 xcb_xv_grab_port_cookie_t
1294 xcb_xv_grab_port (xcb_connection_t *c,
1295                   xcb_xv_port_t     port,
1296                   xcb_timestamp_t   time);
1297 
1298 /**
1299  *
1300  * @param c The connection
1301  * @return A cookie
1302  *
1303  * Delivers a request to the X server.
1304  *
1305  * This form can be used only if the request will cause
1306  * a reply to be generated. Any returned error will be
1307  * placed in the event queue.
1308  */
1309 xcb_xv_grab_port_cookie_t
1310 xcb_xv_grab_port_unchecked (xcb_connection_t *c,
1311                             xcb_xv_port_t     port,
1312                             xcb_timestamp_t   time);
1313 
1314 /**
1315  * Return the reply
1316  * @param c      The connection
1317  * @param cookie The cookie
1318  * @param e      The xcb_generic_error_t supplied
1319  *
1320  * Returns the reply of the request asked by
1321  *
1322  * The parameter @p e supplied to this function must be NULL if
1323  * xcb_xv_grab_port_unchecked(). is used.
1324  * Otherwise, it stores the error if any.
1325  *
1326  * The returned value must be freed by the caller using free().
1327  */
1328 xcb_xv_grab_port_reply_t *
1329 xcb_xv_grab_port_reply (xcb_connection_t           *c,
1330                         xcb_xv_grab_port_cookie_t   cookie  /**< */,
1331                         xcb_generic_error_t       **e);
1332 
1333 /**
1334  *
1335  * @param c The connection
1336  * @return A cookie
1337  *
1338  * Delivers a request to the X server.
1339  *
1340  * This form can be used only if the request will not cause
1341  * a reply to be generated. Any returned error will be
1342  * saved for handling by xcb_request_check().
1343  */
1344 xcb_void_cookie_t
1345 xcb_xv_ungrab_port_checked (xcb_connection_t *c,
1346                             xcb_xv_port_t     port,
1347                             xcb_timestamp_t   time);
1348 
1349 /**
1350  *
1351  * @param c The connection
1352  * @return A cookie
1353  *
1354  * Delivers a request to the X server.
1355  *
1356  */
1357 xcb_void_cookie_t
1358 xcb_xv_ungrab_port (xcb_connection_t *c,
1359                     xcb_xv_port_t     port,
1360                     xcb_timestamp_t   time);
1361 
1362 /**
1363  *
1364  * @param c The connection
1365  * @return A cookie
1366  *
1367  * Delivers a request to the X server.
1368  *
1369  * This form can be used only if the request will not cause
1370  * a reply to be generated. Any returned error will be
1371  * saved for handling by xcb_request_check().
1372  */
1373 xcb_void_cookie_t
1374 xcb_xv_put_video_checked (xcb_connection_t *c,
1375                           xcb_xv_port_t     port,
1376                           xcb_drawable_t    drawable,
1377                           xcb_gcontext_t    gc,
1378                           int16_t           vid_x,
1379                           int16_t           vid_y,
1380                           uint16_t          vid_w,
1381                           uint16_t          vid_h,
1382                           int16_t           drw_x,
1383                           int16_t           drw_y,
1384                           uint16_t          drw_w,
1385                           uint16_t          drw_h);
1386 
1387 /**
1388  *
1389  * @param c The connection
1390  * @return A cookie
1391  *
1392  * Delivers a request to the X server.
1393  *
1394  */
1395 xcb_void_cookie_t
1396 xcb_xv_put_video (xcb_connection_t *c,
1397                   xcb_xv_port_t     port,
1398                   xcb_drawable_t    drawable,
1399                   xcb_gcontext_t    gc,
1400                   int16_t           vid_x,
1401                   int16_t           vid_y,
1402                   uint16_t          vid_w,
1403                   uint16_t          vid_h,
1404                   int16_t           drw_x,
1405                   int16_t           drw_y,
1406                   uint16_t          drw_w,
1407                   uint16_t          drw_h);
1408 
1409 /**
1410  *
1411  * @param c The connection
1412  * @return A cookie
1413  *
1414  * Delivers a request to the X server.
1415  *
1416  * This form can be used only if the request will not cause
1417  * a reply to be generated. Any returned error will be
1418  * saved for handling by xcb_request_check().
1419  */
1420 xcb_void_cookie_t
1421 xcb_xv_put_still_checked (xcb_connection_t *c,
1422                           xcb_xv_port_t     port,
1423                           xcb_drawable_t    drawable,
1424                           xcb_gcontext_t    gc,
1425                           int16_t           vid_x,
1426                           int16_t           vid_y,
1427                           uint16_t          vid_w,
1428                           uint16_t          vid_h,
1429                           int16_t           drw_x,
1430                           int16_t           drw_y,
1431                           uint16_t          drw_w,
1432                           uint16_t          drw_h);
1433 
1434 /**
1435  *
1436  * @param c The connection
1437  * @return A cookie
1438  *
1439  * Delivers a request to the X server.
1440  *
1441  */
1442 xcb_void_cookie_t
1443 xcb_xv_put_still (xcb_connection_t *c,
1444                   xcb_xv_port_t     port,
1445                   xcb_drawable_t    drawable,
1446                   xcb_gcontext_t    gc,
1447                   int16_t           vid_x,
1448                   int16_t           vid_y,
1449                   uint16_t          vid_w,
1450                   uint16_t          vid_h,
1451                   int16_t           drw_x,
1452                   int16_t           drw_y,
1453                   uint16_t          drw_w,
1454                   uint16_t          drw_h);
1455 
1456 /**
1457  *
1458  * @param c The connection
1459  * @return A cookie
1460  *
1461  * Delivers a request to the X server.
1462  *
1463  * This form can be used only if the request will not cause
1464  * a reply to be generated. Any returned error will be
1465  * saved for handling by xcb_request_check().
1466  */
1467 xcb_void_cookie_t
1468 xcb_xv_get_video_checked (xcb_connection_t *c,
1469                           xcb_xv_port_t     port,
1470                           xcb_drawable_t    drawable,
1471                           xcb_gcontext_t    gc,
1472                           int16_t           vid_x,
1473                           int16_t           vid_y,
1474                           uint16_t          vid_w,
1475                           uint16_t          vid_h,
1476                           int16_t           drw_x,
1477                           int16_t           drw_y,
1478                           uint16_t          drw_w,
1479                           uint16_t          drw_h);
1480 
1481 /**
1482  *
1483  * @param c The connection
1484  * @return A cookie
1485  *
1486  * Delivers a request to the X server.
1487  *
1488  */
1489 xcb_void_cookie_t
1490 xcb_xv_get_video (xcb_connection_t *c,
1491                   xcb_xv_port_t     port,
1492                   xcb_drawable_t    drawable,
1493                   xcb_gcontext_t    gc,
1494                   int16_t           vid_x,
1495                   int16_t           vid_y,
1496                   uint16_t          vid_w,
1497                   uint16_t          vid_h,
1498                   int16_t           drw_x,
1499                   int16_t           drw_y,
1500                   uint16_t          drw_w,
1501                   uint16_t          drw_h);
1502 
1503 /**
1504  *
1505  * @param c The connection
1506  * @return A cookie
1507  *
1508  * Delivers a request to the X server.
1509  *
1510  * This form can be used only if the request will not cause
1511  * a reply to be generated. Any returned error will be
1512  * saved for handling by xcb_request_check().
1513  */
1514 xcb_void_cookie_t
1515 xcb_xv_get_still_checked (xcb_connection_t *c,
1516                           xcb_xv_port_t     port,
1517                           xcb_drawable_t    drawable,
1518                           xcb_gcontext_t    gc,
1519                           int16_t           vid_x,
1520                           int16_t           vid_y,
1521                           uint16_t          vid_w,
1522                           uint16_t          vid_h,
1523                           int16_t           drw_x,
1524                           int16_t           drw_y,
1525                           uint16_t          drw_w,
1526                           uint16_t          drw_h);
1527 
1528 /**
1529  *
1530  * @param c The connection
1531  * @return A cookie
1532  *
1533  * Delivers a request to the X server.
1534  *
1535  */
1536 xcb_void_cookie_t
1537 xcb_xv_get_still (xcb_connection_t *c,
1538                   xcb_xv_port_t     port,
1539                   xcb_drawable_t    drawable,
1540                   xcb_gcontext_t    gc,
1541                   int16_t           vid_x,
1542                   int16_t           vid_y,
1543                   uint16_t          vid_w,
1544                   uint16_t          vid_h,
1545                   int16_t           drw_x,
1546                   int16_t           drw_y,
1547                   uint16_t          drw_w,
1548                   uint16_t          drw_h);
1549 
1550 /**
1551  *
1552  * @param c The connection
1553  * @return A cookie
1554  *
1555  * Delivers a request to the X server.
1556  *
1557  * This form can be used only if the request will not cause
1558  * a reply to be generated. Any returned error will be
1559  * saved for handling by xcb_request_check().
1560  */
1561 xcb_void_cookie_t
1562 xcb_xv_stop_video_checked (xcb_connection_t *c,
1563                            xcb_xv_port_t     port,
1564                            xcb_drawable_t    drawable);
1565 
1566 /**
1567  *
1568  * @param c The connection
1569  * @return A cookie
1570  *
1571  * Delivers a request to the X server.
1572  *
1573  */
1574 xcb_void_cookie_t
1575 xcb_xv_stop_video (xcb_connection_t *c,
1576                    xcb_xv_port_t     port,
1577                    xcb_drawable_t    drawable);
1578 
1579 /**
1580  *
1581  * @param c The connection
1582  * @return A cookie
1583  *
1584  * Delivers a request to the X server.
1585  *
1586  * This form can be used only if the request will not cause
1587  * a reply to be generated. Any returned error will be
1588  * saved for handling by xcb_request_check().
1589  */
1590 xcb_void_cookie_t
1591 xcb_xv_select_video_notify_checked (xcb_connection_t *c,
1592                                     xcb_drawable_t    drawable,
1593                                     uint8_t           onoff);
1594 
1595 /**
1596  *
1597  * @param c The connection
1598  * @return A cookie
1599  *
1600  * Delivers a request to the X server.
1601  *
1602  */
1603 xcb_void_cookie_t
1604 xcb_xv_select_video_notify (xcb_connection_t *c,
1605                             xcb_drawable_t    drawable,
1606                             uint8_t           onoff);
1607 
1608 /**
1609  *
1610  * @param c The connection
1611  * @return A cookie
1612  *
1613  * Delivers a request to the X server.
1614  *
1615  * This form can be used only if the request will not cause
1616  * a reply to be generated. Any returned error will be
1617  * saved for handling by xcb_request_check().
1618  */
1619 xcb_void_cookie_t
1620 xcb_xv_select_port_notify_checked (xcb_connection_t *c,
1621                                    xcb_xv_port_t     port,
1622                                    uint8_t           onoff);
1623 
1624 /**
1625  *
1626  * @param c The connection
1627  * @return A cookie
1628  *
1629  * Delivers a request to the X server.
1630  *
1631  */
1632 xcb_void_cookie_t
1633 xcb_xv_select_port_notify (xcb_connection_t *c,
1634                            xcb_xv_port_t     port,
1635                            uint8_t           onoff);
1636 
1637 /**
1638  *
1639  * @param c The connection
1640  * @return A cookie
1641  *
1642  * Delivers a request to the X server.
1643  *
1644  */
1645 xcb_xv_query_best_size_cookie_t
1646 xcb_xv_query_best_size (xcb_connection_t *c,
1647                         xcb_xv_port_t     port,
1648                         uint16_t          vid_w,
1649                         uint16_t          vid_h,
1650                         uint16_t          drw_w,
1651                         uint16_t          drw_h,
1652                         uint8_t           motion);
1653 
1654 /**
1655  *
1656  * @param c The connection
1657  * @return A cookie
1658  *
1659  * Delivers a request to the X server.
1660  *
1661  * This form can be used only if the request will cause
1662  * a reply to be generated. Any returned error will be
1663  * placed in the event queue.
1664  */
1665 xcb_xv_query_best_size_cookie_t
1666 xcb_xv_query_best_size_unchecked (xcb_connection_t *c,
1667                                   xcb_xv_port_t     port,
1668                                   uint16_t          vid_w,
1669                                   uint16_t          vid_h,
1670                                   uint16_t          drw_w,
1671                                   uint16_t          drw_h,
1672                                   uint8_t           motion);
1673 
1674 /**
1675  * Return the reply
1676  * @param c      The connection
1677  * @param cookie The cookie
1678  * @param e      The xcb_generic_error_t supplied
1679  *
1680  * Returns the reply of the request asked by
1681  *
1682  * The parameter @p e supplied to this function must be NULL if
1683  * xcb_xv_query_best_size_unchecked(). is used.
1684  * Otherwise, it stores the error if any.
1685  *
1686  * The returned value must be freed by the caller using free().
1687  */
1688 xcb_xv_query_best_size_reply_t *
1689 xcb_xv_query_best_size_reply (xcb_connection_t                 *c,
1690                               xcb_xv_query_best_size_cookie_t   cookie  /**< */,
1691                               xcb_generic_error_t             **e);
1692 
1693 /**
1694  *
1695  * @param c The connection
1696  * @return A cookie
1697  *
1698  * Delivers a request to the X server.
1699  *
1700  * This form can be used only if the request will not cause
1701  * a reply to be generated. Any returned error will be
1702  * saved for handling by xcb_request_check().
1703  */
1704 xcb_void_cookie_t
1705 xcb_xv_set_port_attribute_checked (xcb_connection_t *c,
1706                                    xcb_xv_port_t     port,
1707                                    xcb_atom_t        attribute,
1708                                    int32_t           value);
1709 
1710 /**
1711  *
1712  * @param c The connection
1713  * @return A cookie
1714  *
1715  * Delivers a request to the X server.
1716  *
1717  */
1718 xcb_void_cookie_t
1719 xcb_xv_set_port_attribute (xcb_connection_t *c,
1720                            xcb_xv_port_t     port,
1721                            xcb_atom_t        attribute,
1722                            int32_t           value);
1723 
1724 /**
1725  *
1726  * @param c The connection
1727  * @return A cookie
1728  *
1729  * Delivers a request to the X server.
1730  *
1731  */
1732 xcb_xv_get_port_attribute_cookie_t
1733 xcb_xv_get_port_attribute (xcb_connection_t *c,
1734                            xcb_xv_port_t     port,
1735                            xcb_atom_t        attribute);
1736 
1737 /**
1738  *
1739  * @param c The connection
1740  * @return A cookie
1741  *
1742  * Delivers a request to the X server.
1743  *
1744  * This form can be used only if the request will cause
1745  * a reply to be generated. Any returned error will be
1746  * placed in the event queue.
1747  */
1748 xcb_xv_get_port_attribute_cookie_t
1749 xcb_xv_get_port_attribute_unchecked (xcb_connection_t *c,
1750                                      xcb_xv_port_t     port,
1751                                      xcb_atom_t        attribute);
1752 
1753 /**
1754  * Return the reply
1755  * @param c      The connection
1756  * @param cookie The cookie
1757  * @param e      The xcb_generic_error_t supplied
1758  *
1759  * Returns the reply of the request asked by
1760  *
1761  * The parameter @p e supplied to this function must be NULL if
1762  * xcb_xv_get_port_attribute_unchecked(). is used.
1763  * Otherwise, it stores the error if any.
1764  *
1765  * The returned value must be freed by the caller using free().
1766  */
1767 xcb_xv_get_port_attribute_reply_t *
1768 xcb_xv_get_port_attribute_reply (xcb_connection_t                    *c,
1769                                  xcb_xv_get_port_attribute_cookie_t   cookie  /**< */,
1770                                  xcb_generic_error_t                **e);
1771 
1772 int
1773 xcb_xv_query_port_attributes_sizeof (const void  *_buffer);
1774 
1775 /**
1776  *
1777  * @param c The connection
1778  * @return A cookie
1779  *
1780  * Delivers a request to the X server.
1781  *
1782  */
1783 xcb_xv_query_port_attributes_cookie_t
1784 xcb_xv_query_port_attributes (xcb_connection_t *c,
1785                               xcb_xv_port_t     port);
1786 
1787 /**
1788  *
1789  * @param c The connection
1790  * @return A cookie
1791  *
1792  * Delivers a request to the X server.
1793  *
1794  * This form can be used only if the request will cause
1795  * a reply to be generated. Any returned error will be
1796  * placed in the event queue.
1797  */
1798 xcb_xv_query_port_attributes_cookie_t
1799 xcb_xv_query_port_attributes_unchecked (xcb_connection_t *c,
1800                                         xcb_xv_port_t     port);
1801 
1802 int
1803 xcb_xv_query_port_attributes_attributes_length (const xcb_xv_query_port_attributes_reply_t *R);
1804 
1805 xcb_xv_attribute_info_iterator_t
1806 xcb_xv_query_port_attributes_attributes_iterator (const xcb_xv_query_port_attributes_reply_t *R);
1807 
1808 /**
1809  * Return the reply
1810  * @param c      The connection
1811  * @param cookie The cookie
1812  * @param e      The xcb_generic_error_t supplied
1813  *
1814  * Returns the reply of the request asked by
1815  *
1816  * The parameter @p e supplied to this function must be NULL if
1817  * xcb_xv_query_port_attributes_unchecked(). is used.
1818  * Otherwise, it stores the error if any.
1819  *
1820  * The returned value must be freed by the caller using free().
1821  */
1822 xcb_xv_query_port_attributes_reply_t *
1823 xcb_xv_query_port_attributes_reply (xcb_connection_t                       *c,
1824                                     xcb_xv_query_port_attributes_cookie_t   cookie  /**< */,
1825                                     xcb_generic_error_t                   **e);
1826 
1827 int
1828 xcb_xv_list_image_formats_sizeof (const void  *_buffer);
1829 
1830 /**
1831  *
1832  * @param c The connection
1833  * @return A cookie
1834  *
1835  * Delivers a request to the X server.
1836  *
1837  */
1838 xcb_xv_list_image_formats_cookie_t
1839 xcb_xv_list_image_formats (xcb_connection_t *c,
1840                            xcb_xv_port_t     port);
1841 
1842 /**
1843  *
1844  * @param c The connection
1845  * @return A cookie
1846  *
1847  * Delivers a request to the X server.
1848  *
1849  * This form can be used only if the request will cause
1850  * a reply to be generated. Any returned error will be
1851  * placed in the event queue.
1852  */
1853 xcb_xv_list_image_formats_cookie_t
1854 xcb_xv_list_image_formats_unchecked (xcb_connection_t *c,
1855                                      xcb_xv_port_t     port);
1856 
1857 xcb_xv_image_format_info_t *
1858 xcb_xv_list_image_formats_format (const xcb_xv_list_image_formats_reply_t *R);
1859 
1860 int
1861 xcb_xv_list_image_formats_format_length (const xcb_xv_list_image_formats_reply_t *R);
1862 
1863 xcb_xv_image_format_info_iterator_t
1864 xcb_xv_list_image_formats_format_iterator (const xcb_xv_list_image_formats_reply_t *R);
1865 
1866 /**
1867  * Return the reply
1868  * @param c      The connection
1869  * @param cookie The cookie
1870  * @param e      The xcb_generic_error_t supplied
1871  *
1872  * Returns the reply of the request asked by
1873  *
1874  * The parameter @p e supplied to this function must be NULL if
1875  * xcb_xv_list_image_formats_unchecked(). is used.
1876  * Otherwise, it stores the error if any.
1877  *
1878  * The returned value must be freed by the caller using free().
1879  */
1880 xcb_xv_list_image_formats_reply_t *
1881 xcb_xv_list_image_formats_reply (xcb_connection_t                    *c,
1882                                  xcb_xv_list_image_formats_cookie_t   cookie  /**< */,
1883                                  xcb_generic_error_t                **e);
1884 
1885 int
1886 xcb_xv_query_image_attributes_sizeof (const void  *_buffer);
1887 
1888 /**
1889  *
1890  * @param c The connection
1891  * @return A cookie
1892  *
1893  * Delivers a request to the X server.
1894  *
1895  */
1896 xcb_xv_query_image_attributes_cookie_t
1897 xcb_xv_query_image_attributes (xcb_connection_t *c,
1898                                xcb_xv_port_t     port,
1899                                uint32_t          id,
1900                                uint16_t          width,
1901                                uint16_t          height);
1902 
1903 /**
1904  *
1905  * @param c The connection
1906  * @return A cookie
1907  *
1908  * Delivers a request to the X server.
1909  *
1910  * This form can be used only if the request will cause
1911  * a reply to be generated. Any returned error will be
1912  * placed in the event queue.
1913  */
1914 xcb_xv_query_image_attributes_cookie_t
1915 xcb_xv_query_image_attributes_unchecked (xcb_connection_t *c,
1916                                          xcb_xv_port_t     port,
1917                                          uint32_t          id,
1918                                          uint16_t          width,
1919                                          uint16_t          height);
1920 
1921 uint32_t *
1922 xcb_xv_query_image_attributes_pitches (const xcb_xv_query_image_attributes_reply_t *R);
1923 
1924 int
1925 xcb_xv_query_image_attributes_pitches_length (const xcb_xv_query_image_attributes_reply_t *R);
1926 
1927 xcb_generic_iterator_t
1928 xcb_xv_query_image_attributes_pitches_end (const xcb_xv_query_image_attributes_reply_t *R);
1929 
1930 uint32_t *
1931 xcb_xv_query_image_attributes_offsets (const xcb_xv_query_image_attributes_reply_t *R);
1932 
1933 int
1934 xcb_xv_query_image_attributes_offsets_length (const xcb_xv_query_image_attributes_reply_t *R);
1935 
1936 xcb_generic_iterator_t
1937 xcb_xv_query_image_attributes_offsets_end (const xcb_xv_query_image_attributes_reply_t *R);
1938 
1939 /**
1940  * Return the reply
1941  * @param c      The connection
1942  * @param cookie The cookie
1943  * @param e      The xcb_generic_error_t supplied
1944  *
1945  * Returns the reply of the request asked by
1946  *
1947  * The parameter @p e supplied to this function must be NULL if
1948  * xcb_xv_query_image_attributes_unchecked(). is used.
1949  * Otherwise, it stores the error if any.
1950  *
1951  * The returned value must be freed by the caller using free().
1952  */
1953 xcb_xv_query_image_attributes_reply_t *
1954 xcb_xv_query_image_attributes_reply (xcb_connection_t                        *c,
1955                                      xcb_xv_query_image_attributes_cookie_t   cookie  /**< */,
1956                                      xcb_generic_error_t                    **e);
1957 
1958 int
1959 xcb_xv_put_image_sizeof (const void  *_buffer,
1960                          uint32_t     data_len);
1961 
1962 /**
1963  *
1964  * @param c The connection
1965  * @return A cookie
1966  *
1967  * Delivers a request to the X server.
1968  *
1969  * This form can be used only if the request will not cause
1970  * a reply to be generated. Any returned error will be
1971  * saved for handling by xcb_request_check().
1972  */
1973 xcb_void_cookie_t
1974 xcb_xv_put_image_checked (xcb_connection_t *c,
1975                           xcb_xv_port_t     port,
1976                           xcb_drawable_t    drawable,
1977                           xcb_gcontext_t    gc,
1978                           uint32_t          id,
1979                           int16_t           src_x,
1980                           int16_t           src_y,
1981                           uint16_t          src_w,
1982                           uint16_t          src_h,
1983                           int16_t           drw_x,
1984                           int16_t           drw_y,
1985                           uint16_t          drw_w,
1986                           uint16_t          drw_h,
1987                           uint16_t          width,
1988                           uint16_t          height,
1989                           uint32_t          data_len,
1990                           const uint8_t    *data);
1991 
1992 /**
1993  *
1994  * @param c The connection
1995  * @return A cookie
1996  *
1997  * Delivers a request to the X server.
1998  *
1999  */
2000 xcb_void_cookie_t
2001 xcb_xv_put_image (xcb_connection_t *c,
2002                   xcb_xv_port_t     port,
2003                   xcb_drawable_t    drawable,
2004                   xcb_gcontext_t    gc,
2005                   uint32_t          id,
2006                   int16_t           src_x,
2007                   int16_t           src_y,
2008                   uint16_t          src_w,
2009                   uint16_t          src_h,
2010                   int16_t           drw_x,
2011                   int16_t           drw_y,
2012                   uint16_t          drw_w,
2013                   uint16_t          drw_h,
2014                   uint16_t          width,
2015                   uint16_t          height,
2016                   uint32_t          data_len,
2017                   const uint8_t    *data);
2018 
2019 uint8_t *
2020 xcb_xv_put_image_data (const xcb_xv_put_image_request_t *R);
2021 
2022 int
2023 xcb_xv_put_image_data_length (const xcb_xv_put_image_request_t *R);
2024 
2025 xcb_generic_iterator_t
2026 xcb_xv_put_image_data_end (const xcb_xv_put_image_request_t *R);
2027 
2028 /**
2029  *
2030  * @param c The connection
2031  * @return A cookie
2032  *
2033  * Delivers a request to the X server.
2034  *
2035  * This form can be used only if the request will not cause
2036  * a reply to be generated. Any returned error will be
2037  * saved for handling by xcb_request_check().
2038  */
2039 xcb_void_cookie_t
2040 xcb_xv_shm_put_image_checked (xcb_connection_t *c,
2041                               xcb_xv_port_t     port,
2042                               xcb_drawable_t    drawable,
2043                               xcb_gcontext_t    gc,
2044                               xcb_shm_seg_t     shmseg,
2045                               uint32_t          id,
2046                               uint32_t          offset,
2047                               int16_t           src_x,
2048                               int16_t           src_y,
2049                               uint16_t          src_w,
2050                               uint16_t          src_h,
2051                               int16_t           drw_x,
2052                               int16_t           drw_y,
2053                               uint16_t          drw_w,
2054                               uint16_t          drw_h,
2055                               uint16_t          width,
2056                               uint16_t          height,
2057                               uint8_t           send_event);
2058 
2059 /**
2060  *
2061  * @param c The connection
2062  * @return A cookie
2063  *
2064  * Delivers a request to the X server.
2065  *
2066  */
2067 xcb_void_cookie_t
2068 xcb_xv_shm_put_image (xcb_connection_t *c,
2069                       xcb_xv_port_t     port,
2070                       xcb_drawable_t    drawable,
2071                       xcb_gcontext_t    gc,
2072                       xcb_shm_seg_t     shmseg,
2073                       uint32_t          id,
2074                       uint32_t          offset,
2075                       int16_t           src_x,
2076                       int16_t           src_y,
2077                       uint16_t          src_w,
2078                       uint16_t          src_h,
2079                       int16_t           drw_x,
2080                       int16_t           drw_y,
2081                       uint16_t          drw_w,
2082                       uint16_t          drw_h,
2083                       uint16_t          width,
2084                       uint16_t          height,
2085                       uint8_t           send_event);
2086 
2087 
2088 #ifdef __cplusplus
2089 }
2090 #endif
2091 
2092 #endif
2093 
2094 /**
2095  * @}
2096  */