aboutsummaryrefslogtreecommitdiff
path: root/depends/libxcb/include/xcb/xv.h
diff options
context:
space:
mode:
Diffstat (limited to 'depends/libxcb/include/xcb/xv.h')
-rw-r--r--depends/libxcb/include/xcb/xv.h2096
1 files changed, 2096 insertions, 0 deletions
diff --git a/depends/libxcb/include/xcb/xv.h b/depends/libxcb/include/xcb/xv.h
new file mode 100644
index 0000000..9e50008
--- /dev/null
+++ b/depends/libxcb/include/xcb/xv.h
@@ -0,0 +1,2096 @@
+/*
+ * This file generated automatically from xv.xml by c_client.py.
+ * Edit at your peril.
+ */
+
+/**
+ * @defgroup XCB_Xv_API XCB Xv API
+ * @brief Xv XCB Protocol Implementation.
+ * @{
+ **/
+
+#ifndef __XV_H
+#define __XV_H
+
+#include "xcb.h"
+#include "xproto.h"
+#include "shm.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define XCB_XV_MAJOR_VERSION 2
+#define XCB_XV_MINOR_VERSION 2
+
+extern xcb_extension_t xcb_xv_id;
+
+typedef uint32_t xcb_xv_port_t;
+
+/**
+ * @brief xcb_xv_port_iterator_t
+ **/
+typedef struct xcb_xv_port_iterator_t {
+ xcb_xv_port_t *data;
+ int rem;
+ int index;
+} xcb_xv_port_iterator_t;
+
+typedef uint32_t xcb_xv_encoding_t;
+
+/**
+ * @brief xcb_xv_encoding_iterator_t
+ **/
+typedef struct xcb_xv_encoding_iterator_t {
+ xcb_xv_encoding_t *data;
+ int rem;
+ int index;
+} xcb_xv_encoding_iterator_t;
+
+typedef enum xcb_xv_type_t {
+ XCB_XV_TYPE_INPUT_MASK = 1,
+ XCB_XV_TYPE_OUTPUT_MASK = 2,
+ XCB_XV_TYPE_VIDEO_MASK = 4,
+ XCB_XV_TYPE_STILL_MASK = 8,
+ XCB_XV_TYPE_IMAGE_MASK = 16
+} xcb_xv_type_t;
+
+typedef enum xcb_xv_image_format_info_type_t {
+ XCB_XV_IMAGE_FORMAT_INFO_TYPE_RGB = 0,
+ XCB_XV_IMAGE_FORMAT_INFO_TYPE_YUV = 1
+} xcb_xv_image_format_info_type_t;
+
+typedef enum xcb_xv_image_format_info_format_t {
+ XCB_XV_IMAGE_FORMAT_INFO_FORMAT_PACKED = 0,
+ XCB_XV_IMAGE_FORMAT_INFO_FORMAT_PLANAR = 1
+} xcb_xv_image_format_info_format_t;
+
+typedef enum xcb_xv_attribute_flag_t {
+ XCB_XV_ATTRIBUTE_FLAG_GETTABLE = 1,
+ XCB_XV_ATTRIBUTE_FLAG_SETTABLE = 2
+} xcb_xv_attribute_flag_t;
+
+typedef enum xcb_xv_video_notify_reason_t {
+ XCB_XV_VIDEO_NOTIFY_REASON_STARTED = 0,
+ XCB_XV_VIDEO_NOTIFY_REASON_STOPPED = 1,
+ XCB_XV_VIDEO_NOTIFY_REASON_BUSY = 2,
+ XCB_XV_VIDEO_NOTIFY_REASON_PREEMPTED = 3,
+ XCB_XV_VIDEO_NOTIFY_REASON_HARD_ERROR = 4
+} xcb_xv_video_notify_reason_t;
+
+typedef enum xcb_xv_scanline_order_t {
+ XCB_XV_SCANLINE_ORDER_TOP_TO_BOTTOM = 0,
+ XCB_XV_SCANLINE_ORDER_BOTTOM_TO_TOP = 1
+} xcb_xv_scanline_order_t;
+
+typedef enum xcb_xv_grab_port_status_t {
+ XCB_XV_GRAB_PORT_STATUS_SUCCESS = 0,
+ XCB_XV_GRAB_PORT_STATUS_BAD_EXTENSION = 1,
+ XCB_XV_GRAB_PORT_STATUS_ALREADY_GRABBED = 2,
+ XCB_XV_GRAB_PORT_STATUS_INVALID_TIME = 3,
+ XCB_XV_GRAB_PORT_STATUS_BAD_REPLY = 4,
+ XCB_XV_GRAB_PORT_STATUS_BAD_ALLOC = 5
+} xcb_xv_grab_port_status_t;
+
+/**
+ * @brief xcb_xv_rational_t
+ **/
+typedef struct xcb_xv_rational_t {
+ int32_t numerator;
+ int32_t denominator;
+} xcb_xv_rational_t;
+
+/**
+ * @brief xcb_xv_rational_iterator_t
+ **/
+typedef struct xcb_xv_rational_iterator_t {
+ xcb_xv_rational_t *data;
+ int rem;
+ int index;
+} xcb_xv_rational_iterator_t;
+
+/**
+ * @brief xcb_xv_format_t
+ **/
+typedef struct xcb_xv_format_t {
+ xcb_visualid_t visual;
+ uint8_t depth;
+ uint8_t pad0[3];
+} xcb_xv_format_t;
+
+/**
+ * @brief xcb_xv_format_iterator_t
+ **/
+typedef struct xcb_xv_format_iterator_t {
+ xcb_xv_format_t *data;
+ int rem;
+ int index;
+} xcb_xv_format_iterator_t;
+
+/**
+ * @brief xcb_xv_adaptor_info_t
+ **/
+typedef struct xcb_xv_adaptor_info_t {
+ xcb_xv_port_t base_id;
+ uint16_t name_size;
+ uint16_t num_ports;
+ uint16_t num_formats;
+ uint8_t type;
+ uint8_t pad0;
+} xcb_xv_adaptor_info_t;
+
+/**
+ * @brief xcb_xv_adaptor_info_iterator_t
+ **/
+typedef struct xcb_xv_adaptor_info_iterator_t {
+ xcb_xv_adaptor_info_t *data;
+ int rem;
+ int index;
+} xcb_xv_adaptor_info_iterator_t;
+
+/**
+ * @brief xcb_xv_encoding_info_t
+ **/
+typedef struct xcb_xv_encoding_info_t {
+ xcb_xv_encoding_t encoding;
+ uint16_t name_size;
+ uint16_t width;
+ uint16_t height;
+ uint8_t pad0[2];
+ xcb_xv_rational_t rate;
+} xcb_xv_encoding_info_t;
+
+/**
+ * @brief xcb_xv_encoding_info_iterator_t
+ **/
+typedef struct xcb_xv_encoding_info_iterator_t {
+ xcb_xv_encoding_info_t *data;
+ int rem;
+ int index;
+} xcb_xv_encoding_info_iterator_t;
+
+/**
+ * @brief xcb_xv_image_t
+ **/
+typedef struct xcb_xv_image_t {
+ uint32_t id;
+ uint16_t width;
+ uint16_t height;
+ uint32_t data_size;
+ uint32_t num_planes;
+} xcb_xv_image_t;
+
+/**
+ * @brief xcb_xv_image_iterator_t
+ **/
+typedef struct xcb_xv_image_iterator_t {
+ xcb_xv_image_t *data;
+ int rem;
+ int index;
+} xcb_xv_image_iterator_t;
+
+/**
+ * @brief xcb_xv_attribute_info_t
+ **/
+typedef struct xcb_xv_attribute_info_t {
+ uint32_t flags;
+ int32_t min;
+ int32_t max;
+ uint32_t size;
+} xcb_xv_attribute_info_t;
+
+/**
+ * @brief xcb_xv_attribute_info_iterator_t
+ **/
+typedef struct xcb_xv_attribute_info_iterator_t {
+ xcb_xv_attribute_info_t *data;
+ int rem;
+ int index;
+} xcb_xv_attribute_info_iterator_t;
+
+/**
+ * @brief xcb_xv_image_format_info_t
+ **/
+typedef struct xcb_xv_image_format_info_t {
+ uint32_t id;
+ uint8_t type;
+ uint8_t byte_order;
+ uint8_t pad0[2];
+ uint8_t guid[16];
+ uint8_t bpp;
+ uint8_t num_planes;
+ uint8_t pad1[2];
+ uint8_t depth;
+ uint8_t pad2[3];
+ uint32_t red_mask;
+ uint32_t green_mask;
+ uint32_t blue_mask;
+ uint8_t format;
+ uint8_t pad3[3];
+ uint32_t y_sample_bits;
+ uint32_t u_sample_bits;
+ uint32_t v_sample_bits;
+ uint32_t vhorz_y_period;
+ uint32_t vhorz_u_period;
+ uint32_t vhorz_v_period;
+ uint32_t vvert_y_period;
+ uint32_t vvert_u_period;
+ uint32_t vvert_v_period;
+ uint8_t vcomp_order[32];
+ uint8_t vscanline_order;
+ uint8_t pad4[11];
+} xcb_xv_image_format_info_t;
+
+/**
+ * @brief xcb_xv_image_format_info_iterator_t
+ **/
+typedef struct xcb_xv_image_format_info_iterator_t {
+ xcb_xv_image_format_info_t *data;
+ int rem;
+ int index;
+} xcb_xv_image_format_info_iterator_t;
+
+/** Opcode for xcb_xv_bad_port. */
+#define XCB_XV_BAD_PORT 0
+
+/**
+ * @brief xcb_xv_bad_port_error_t
+ **/
+typedef struct xcb_xv_bad_port_error_t {
+ uint8_t response_type;
+ uint8_t error_code;
+ uint16_t sequence;
+ uint32_t bad_value;
+ uint16_t minor_opcode;
+ uint8_t major_opcode;
+} xcb_xv_bad_port_error_t;
+
+/** Opcode for xcb_xv_bad_encoding. */
+#define XCB_XV_BAD_ENCODING 1
+
+/**
+ * @brief xcb_xv_bad_encoding_error_t
+ **/
+typedef struct xcb_xv_bad_encoding_error_t {
+ uint8_t response_type;
+ uint8_t error_code;
+ uint16_t sequence;
+ uint32_t bad_value;
+ uint16_t minor_opcode;
+ uint8_t major_opcode;
+} xcb_xv_bad_encoding_error_t;
+
+/** Opcode for xcb_xv_bad_control. */
+#define XCB_XV_BAD_CONTROL 2
+
+/**
+ * @brief xcb_xv_bad_control_error_t
+ **/
+typedef struct xcb_xv_bad_control_error_t {
+ uint8_t response_type;
+ uint8_t error_code;
+ uint16_t sequence;
+ uint32_t bad_value;
+ uint16_t minor_opcode;
+ uint8_t major_opcode;
+} xcb_xv_bad_control_error_t;
+
+/** Opcode for xcb_xv_video_notify. */
+#define XCB_XV_VIDEO_NOTIFY 0
+
+/**
+ * @brief xcb_xv_video_notify_event_t
+ **/
+typedef struct xcb_xv_video_notify_event_t {
+ uint8_t response_type;
+ uint8_t reason;
+ uint16_t sequence;
+ xcb_timestamp_t time;
+ xcb_drawable_t drawable;
+ xcb_xv_port_t port;
+} xcb_xv_video_notify_event_t;
+
+/** Opcode for xcb_xv_port_notify. */
+#define XCB_XV_PORT_NOTIFY 1
+
+/**
+ * @brief xcb_xv_port_notify_event_t
+ **/
+typedef struct xcb_xv_port_notify_event_t {
+ uint8_t response_type;
+ uint8_t pad0;
+ uint16_t sequence;
+ xcb_timestamp_t time;
+ xcb_xv_port_t port;
+ xcb_atom_t attribute;
+ int32_t value;
+} xcb_xv_port_notify_event_t;
+
+/**
+ * @brief xcb_xv_query_extension_cookie_t
+ **/
+typedef struct xcb_xv_query_extension_cookie_t {
+ unsigned int sequence;
+} xcb_xv_query_extension_cookie_t;
+
+/** Opcode for xcb_xv_query_extension. */
+#define XCB_XV_QUERY_EXTENSION 0
+
+/**
+ * @brief xcb_xv_query_extension_request_t
+ **/
+typedef struct xcb_xv_query_extension_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+} xcb_xv_query_extension_request_t;
+
+/**
+ * @brief xcb_xv_query_extension_reply_t
+ **/
+typedef struct xcb_xv_query_extension_reply_t {
+ uint8_t response_type;
+ uint8_t pad0;
+ uint16_t sequence;
+ uint32_t length;
+ uint16_t major;
+ uint16_t minor;
+} xcb_xv_query_extension_reply_t;
+
+/**
+ * @brief xcb_xv_query_adaptors_cookie_t
+ **/
+typedef struct xcb_xv_query_adaptors_cookie_t {
+ unsigned int sequence;
+} xcb_xv_query_adaptors_cookie_t;
+
+/** Opcode for xcb_xv_query_adaptors. */
+#define XCB_XV_QUERY_ADAPTORS 1
+
+/**
+ * @brief xcb_xv_query_adaptors_request_t
+ **/
+typedef struct xcb_xv_query_adaptors_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_window_t window;
+} xcb_xv_query_adaptors_request_t;
+
+/**
+ * @brief xcb_xv_query_adaptors_reply_t
+ **/
+typedef struct xcb_xv_query_adaptors_reply_t {
+ uint8_t response_type;
+ uint8_t pad0;
+ uint16_t sequence;
+ uint32_t length;
+ uint16_t num_adaptors;
+ uint8_t pad1[22];
+} xcb_xv_query_adaptors_reply_t;
+
+/**
+ * @brief xcb_xv_query_encodings_cookie_t
+ **/
+typedef struct xcb_xv_query_encodings_cookie_t {
+ unsigned int sequence;
+} xcb_xv_query_encodings_cookie_t;
+
+/** Opcode for xcb_xv_query_encodings. */
+#define XCB_XV_QUERY_ENCODINGS 2
+
+/**
+ * @brief xcb_xv_query_encodings_request_t
+ **/
+typedef struct xcb_xv_query_encodings_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_xv_port_t port;
+} xcb_xv_query_encodings_request_t;
+
+/**
+ * @brief xcb_xv_query_encodings_reply_t
+ **/
+typedef struct xcb_xv_query_encodings_reply_t {
+ uint8_t response_type;
+ uint8_t pad0;
+ uint16_t sequence;
+ uint32_t length;
+ uint16_t num_encodings;
+ uint8_t pad1[22];
+} xcb_xv_query_encodings_reply_t;
+
+/**
+ * @brief xcb_xv_grab_port_cookie_t
+ **/
+typedef struct xcb_xv_grab_port_cookie_t {
+ unsigned int sequence;
+} xcb_xv_grab_port_cookie_t;
+
+/** Opcode for xcb_xv_grab_port. */
+#define XCB_XV_GRAB_PORT 3
+
+/**
+ * @brief xcb_xv_grab_port_request_t
+ **/
+typedef struct xcb_xv_grab_port_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_xv_port_t port;
+ xcb_timestamp_t time;
+} xcb_xv_grab_port_request_t;
+
+/**
+ * @brief xcb_xv_grab_port_reply_t
+ **/
+typedef struct xcb_xv_grab_port_reply_t {
+ uint8_t response_type;
+ uint8_t result;
+ uint16_t sequence;
+ uint32_t length;
+} xcb_xv_grab_port_reply_t;
+
+/** Opcode for xcb_xv_ungrab_port. */
+#define XCB_XV_UNGRAB_PORT 4
+
+/**
+ * @brief xcb_xv_ungrab_port_request_t
+ **/
+typedef struct xcb_xv_ungrab_port_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_xv_port_t port;
+ xcb_timestamp_t time;
+} xcb_xv_ungrab_port_request_t;
+
+/** Opcode for xcb_xv_put_video. */
+#define XCB_XV_PUT_VIDEO 5
+
+/**
+ * @brief xcb_xv_put_video_request_t
+ **/
+typedef struct xcb_xv_put_video_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_xv_port_t port;
+ xcb_drawable_t drawable;
+ xcb_gcontext_t gc;
+ int16_t vid_x;
+ int16_t vid_y;
+ uint16_t vid_w;
+ uint16_t vid_h;
+ int16_t drw_x;
+ int16_t drw_y;
+ uint16_t drw_w;
+ uint16_t drw_h;
+} xcb_xv_put_video_request_t;
+
+/** Opcode for xcb_xv_put_still. */
+#define XCB_XV_PUT_STILL 6
+
+/**
+ * @brief xcb_xv_put_still_request_t
+ **/
+typedef struct xcb_xv_put_still_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_xv_port_t port;
+ xcb_drawable_t drawable;
+ xcb_gcontext_t gc;
+ int16_t vid_x;
+ int16_t vid_y;
+ uint16_t vid_w;
+ uint16_t vid_h;
+ int16_t drw_x;
+ int16_t drw_y;
+ uint16_t drw_w;
+ uint16_t drw_h;
+} xcb_xv_put_still_request_t;
+
+/** Opcode for xcb_xv_get_video. */
+#define XCB_XV_GET_VIDEO 7
+
+/**
+ * @brief xcb_xv_get_video_request_t
+ **/
+typedef struct xcb_xv_get_video_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_xv_port_t port;
+ xcb_drawable_t drawable;
+ xcb_gcontext_t gc;
+ int16_t vid_x;
+ int16_t vid_y;
+ uint16_t vid_w;
+ uint16_t vid_h;
+ int16_t drw_x;
+ int16_t drw_y;
+ uint16_t drw_w;
+ uint16_t drw_h;
+} xcb_xv_get_video_request_t;
+
+/** Opcode for xcb_xv_get_still. */
+#define XCB_XV_GET_STILL 8
+
+/**
+ * @brief xcb_xv_get_still_request_t
+ **/
+typedef struct xcb_xv_get_still_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_xv_port_t port;
+ xcb_drawable_t drawable;
+ xcb_gcontext_t gc;
+ int16_t vid_x;
+ int16_t vid_y;
+ uint16_t vid_w;
+ uint16_t vid_h;
+ int16_t drw_x;
+ int16_t drw_y;
+ uint16_t drw_w;
+ uint16_t drw_h;
+} xcb_xv_get_still_request_t;
+
+/** Opcode for xcb_xv_stop_video. */
+#define XCB_XV_STOP_VIDEO 9
+
+/**
+ * @brief xcb_xv_stop_video_request_t
+ **/
+typedef struct xcb_xv_stop_video_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_xv_port_t port;
+ xcb_drawable_t drawable;
+} xcb_xv_stop_video_request_t;
+
+/** Opcode for xcb_xv_select_video_notify. */
+#define XCB_XV_SELECT_VIDEO_NOTIFY 10
+
+/**
+ * @brief xcb_xv_select_video_notify_request_t
+ **/
+typedef struct xcb_xv_select_video_notify_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_drawable_t drawable;
+ uint8_t onoff;
+ uint8_t pad0[3];
+} xcb_xv_select_video_notify_request_t;
+
+/** Opcode for xcb_xv_select_port_notify. */
+#define XCB_XV_SELECT_PORT_NOTIFY 11
+
+/**
+ * @brief xcb_xv_select_port_notify_request_t
+ **/
+typedef struct xcb_xv_select_port_notify_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_xv_port_t port;
+ uint8_t onoff;
+ uint8_t pad0[3];
+} xcb_xv_select_port_notify_request_t;
+
+/**
+ * @brief xcb_xv_query_best_size_cookie_t
+ **/
+typedef struct xcb_xv_query_best_size_cookie_t {
+ unsigned int sequence;
+} xcb_xv_query_best_size_cookie_t;
+
+/** Opcode for xcb_xv_query_best_size. */
+#define XCB_XV_QUERY_BEST_SIZE 12
+
+/**
+ * @brief xcb_xv_query_best_size_request_t
+ **/
+typedef struct xcb_xv_query_best_size_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_xv_port_t port;
+ uint16_t vid_w;
+ uint16_t vid_h;
+ uint16_t drw_w;
+ uint16_t drw_h;
+ uint8_t motion;
+ uint8_t pad0[3];
+} xcb_xv_query_best_size_request_t;
+
+/**
+ * @brief xcb_xv_query_best_size_reply_t
+ **/
+typedef struct xcb_xv_query_best_size_reply_t {
+ uint8_t response_type;
+ uint8_t pad0;
+ uint16_t sequence;
+ uint32_t length;
+ uint16_t actual_width;
+ uint16_t actual_height;
+} xcb_xv_query_best_size_reply_t;
+
+/** Opcode for xcb_xv_set_port_attribute. */
+#define XCB_XV_SET_PORT_ATTRIBUTE 13
+
+/**
+ * @brief xcb_xv_set_port_attribute_request_t
+ **/
+typedef struct xcb_xv_set_port_attribute_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_xv_port_t port;
+ xcb_atom_t attribute;
+ int32_t value;
+} xcb_xv_set_port_attribute_request_t;
+
+/**
+ * @brief xcb_xv_get_port_attribute_cookie_t
+ **/
+typedef struct xcb_xv_get_port_attribute_cookie_t {
+ unsigned int sequence;
+} xcb_xv_get_port_attribute_cookie_t;
+
+/** Opcode for xcb_xv_get_port_attribute. */
+#define XCB_XV_GET_PORT_ATTRIBUTE 14
+
+/**
+ * @brief xcb_xv_get_port_attribute_request_t
+ **/
+typedef struct xcb_xv_get_port_attribute_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_xv_port_t port;
+ xcb_atom_t attribute;
+} xcb_xv_get_port_attribute_request_t;
+
+/**
+ * @brief xcb_xv_get_port_attribute_reply_t
+ **/
+typedef struct xcb_xv_get_port_attribute_reply_t {
+ uint8_t response_type;
+ uint8_t pad0;
+ uint16_t sequence;
+ uint32_t length;
+ int32_t value;
+} xcb_xv_get_port_attribute_reply_t;
+
+/**
+ * @brief xcb_xv_query_port_attributes_cookie_t
+ **/
+typedef struct xcb_xv_query_port_attributes_cookie_t {
+ unsigned int sequence;
+} xcb_xv_query_port_attributes_cookie_t;
+
+/** Opcode for xcb_xv_query_port_attributes. */
+#define XCB_XV_QUERY_PORT_ATTRIBUTES 15
+
+/**
+ * @brief xcb_xv_query_port_attributes_request_t
+ **/
+typedef struct xcb_xv_query_port_attributes_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_xv_port_t port;
+} xcb_xv_query_port_attributes_request_t;
+
+/**
+ * @brief xcb_xv_query_port_attributes_reply_t
+ **/
+typedef struct xcb_xv_query_port_attributes_reply_t {
+ uint8_t response_type;
+ uint8_t pad0;
+ uint16_t sequence;
+ uint32_t length;
+ uint32_t num_attributes;
+ uint32_t text_size;
+ uint8_t pad1[16];
+} xcb_xv_query_port_attributes_reply_t;
+
+/**
+ * @brief xcb_xv_list_image_formats_cookie_t
+ **/
+typedef struct xcb_xv_list_image_formats_cookie_t {
+ unsigned int sequence;
+} xcb_xv_list_image_formats_cookie_t;
+
+/** Opcode for xcb_xv_list_image_formats. */
+#define XCB_XV_LIST_IMAGE_FORMATS 16
+
+/**
+ * @brief xcb_xv_list_image_formats_request_t
+ **/
+typedef struct xcb_xv_list_image_formats_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_xv_port_t port;
+} xcb_xv_list_image_formats_request_t;
+
+/**
+ * @brief xcb_xv_list_image_formats_reply_t
+ **/
+typedef struct xcb_xv_list_image_formats_reply_t {
+ uint8_t response_type;
+ uint8_t pad0;
+ uint16_t sequence;
+ uint32_t length;
+ uint32_t num_formats;
+ uint8_t pad1[20];
+} xcb_xv_list_image_formats_reply_t;
+
+/**
+ * @brief xcb_xv_query_image_attributes_cookie_t
+ **/
+typedef struct xcb_xv_query_image_attributes_cookie_t {
+ unsigned int sequence;
+} xcb_xv_query_image_attributes_cookie_t;
+
+/** Opcode for xcb_xv_query_image_attributes. */
+#define XCB_XV_QUERY_IMAGE_ATTRIBUTES 17
+
+/**
+ * @brief xcb_xv_query_image_attributes_request_t
+ **/
+typedef struct xcb_xv_query_image_attributes_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_xv_port_t port;
+ uint32_t id;
+ uint16_t width;
+ uint16_t height;
+} xcb_xv_query_image_attributes_request_t;
+
+/**
+ * @brief xcb_xv_query_image_attributes_reply_t
+ **/
+typedef struct xcb_xv_query_image_attributes_reply_t {
+ uint8_t response_type;
+ uint8_t pad0;
+ uint16_t sequence;
+ uint32_t length;
+ uint32_t num_planes;
+ uint32_t data_size;
+ uint16_t width;
+ uint16_t height;
+ uint8_t pad1[12];
+} xcb_xv_query_image_attributes_reply_t;
+
+/** Opcode for xcb_xv_put_image. */
+#define XCB_XV_PUT_IMAGE 18
+
+/**
+ * @brief xcb_xv_put_image_request_t
+ **/
+typedef struct xcb_xv_put_image_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_xv_port_t port;
+ xcb_drawable_t drawable;
+ xcb_gcontext_t gc;
+ uint32_t id;
+ int16_t src_x;
+ int16_t src_y;
+ uint16_t src_w;
+ uint16_t src_h;
+ int16_t drw_x;
+ int16_t drw_y;
+ uint16_t drw_w;
+ uint16_t drw_h;
+ uint16_t width;
+ uint16_t height;
+} xcb_xv_put_image_request_t;
+
+/** Opcode for xcb_xv_shm_put_image. */
+#define XCB_XV_SHM_PUT_IMAGE 19
+
+/**
+ * @brief xcb_xv_shm_put_image_request_t
+ **/
+typedef struct xcb_xv_shm_put_image_request_t {
+ uint8_t major_opcode;
+ uint8_t minor_opcode;
+ uint16_t length;
+ xcb_xv_port_t port;
+ xcb_drawable_t drawable;
+ xcb_gcontext_t gc;
+ xcb_shm_seg_t shmseg;
+ uint32_t id;
+ uint32_t offset;
+ int16_t src_x;
+ int16_t src_y;
+ uint16_t src_w;
+ uint16_t src_h;
+ int16_t drw_x;
+ int16_t drw_y;
+ uint16_t drw_w;
+ uint16_t drw_h;
+ uint16_t width;
+ uint16_t height;
+ uint8_t send_event;
+ uint8_t pad0[3];
+} xcb_xv_shm_put_image_request_t;
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xv_port_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xv_port_t)
+ */
+void
+xcb_xv_port_next (xcb_xv_port_iterator_t *i);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xv_port_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+xcb_generic_iterator_t
+xcb_xv_port_end (xcb_xv_port_iterator_t i);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xv_encoding_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xv_encoding_t)
+ */
+void
+xcb_xv_encoding_next (xcb_xv_encoding_iterator_t *i);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xv_encoding_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+xcb_generic_iterator_t
+xcb_xv_encoding_end (xcb_xv_encoding_iterator_t i);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xv_rational_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xv_rational_t)
+ */
+void
+xcb_xv_rational_next (xcb_xv_rational_iterator_t *i);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xv_rational_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+xcb_generic_iterator_t
+xcb_xv_rational_end (xcb_xv_rational_iterator_t i);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xv_format_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xv_format_t)
+ */
+void
+xcb_xv_format_next (xcb_xv_format_iterator_t *i);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xv_format_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+xcb_generic_iterator_t
+xcb_xv_format_end (xcb_xv_format_iterator_t i);
+
+int
+xcb_xv_adaptor_info_sizeof (const void *_buffer);
+
+char *
+xcb_xv_adaptor_info_name (const xcb_xv_adaptor_info_t *R);
+
+int
+xcb_xv_adaptor_info_name_length (const xcb_xv_adaptor_info_t *R);
+
+xcb_generic_iterator_t
+xcb_xv_adaptor_info_name_end (const xcb_xv_adaptor_info_t *R);
+
+xcb_xv_format_t *
+xcb_xv_adaptor_info_formats (const xcb_xv_adaptor_info_t *R);
+
+int
+xcb_xv_adaptor_info_formats_length (const xcb_xv_adaptor_info_t *R);
+
+xcb_xv_format_iterator_t
+xcb_xv_adaptor_info_formats_iterator (const xcb_xv_adaptor_info_t *R);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xv_adaptor_info_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xv_adaptor_info_t)
+ */
+void
+xcb_xv_adaptor_info_next (xcb_xv_adaptor_info_iterator_t *i);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xv_adaptor_info_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+xcb_generic_iterator_t
+xcb_xv_adaptor_info_end (xcb_xv_adaptor_info_iterator_t i);
+
+int
+xcb_xv_encoding_info_sizeof (const void *_buffer);
+
+char *
+xcb_xv_encoding_info_name (const xcb_xv_encoding_info_t *R);
+
+int
+xcb_xv_encoding_info_name_length (const xcb_xv_encoding_info_t *R);
+
+xcb_generic_iterator_t
+xcb_xv_encoding_info_name_end (const xcb_xv_encoding_info_t *R);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xv_encoding_info_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xv_encoding_info_t)
+ */
+void
+xcb_xv_encoding_info_next (xcb_xv_encoding_info_iterator_t *i);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xv_encoding_info_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+xcb_generic_iterator_t
+xcb_xv_encoding_info_end (xcb_xv_encoding_info_iterator_t i);
+
+int
+xcb_xv_image_sizeof (const void *_buffer);
+
+uint32_t *
+xcb_xv_image_pitches (const xcb_xv_image_t *R);
+
+int
+xcb_xv_image_pitches_length (const xcb_xv_image_t *R);
+
+xcb_generic_iterator_t
+xcb_xv_image_pitches_end (const xcb_xv_image_t *R);
+
+uint32_t *
+xcb_xv_image_offsets (const xcb_xv_image_t *R);
+
+int
+xcb_xv_image_offsets_length (const xcb_xv_image_t *R);
+
+xcb_generic_iterator_t
+xcb_xv_image_offsets_end (const xcb_xv_image_t *R);
+
+uint8_t *
+xcb_xv_image_data (const xcb_xv_image_t *R);
+
+int
+xcb_xv_image_data_length (const xcb_xv_image_t *R);
+
+xcb_generic_iterator_t
+xcb_xv_image_data_end (const xcb_xv_image_t *R);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xv_image_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xv_image_t)
+ */
+void
+xcb_xv_image_next (xcb_xv_image_iterator_t *i);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xv_image_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+xcb_generic_iterator_t
+xcb_xv_image_end (xcb_xv_image_iterator_t i);
+
+int
+xcb_xv_attribute_info_sizeof (const void *_buffer);
+
+char *
+xcb_xv_attribute_info_name (const xcb_xv_attribute_info_t *R);
+
+int
+xcb_xv_attribute_info_name_length (const xcb_xv_attribute_info_t *R);
+
+xcb_generic_iterator_t
+xcb_xv_attribute_info_name_end (const xcb_xv_attribute_info_t *R);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xv_attribute_info_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xv_attribute_info_t)
+ */
+void
+xcb_xv_attribute_info_next (xcb_xv_attribute_info_iterator_t *i);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xv_attribute_info_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+xcb_generic_iterator_t
+xcb_xv_attribute_info_end (xcb_xv_attribute_info_iterator_t i);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xv_image_format_info_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xv_image_format_info_t)
+ */
+void
+xcb_xv_image_format_info_next (xcb_xv_image_format_info_iterator_t *i);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xv_image_format_info_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+xcb_generic_iterator_t
+xcb_xv_image_format_info_end (xcb_xv_image_format_info_iterator_t i);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_xv_query_extension_cookie_t
+xcb_xv_query_extension (xcb_connection_t *c);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+xcb_xv_query_extension_cookie_t
+xcb_xv_query_extension_unchecked (xcb_connection_t *c);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xv_query_extension_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+xcb_xv_query_extension_reply_t *
+xcb_xv_query_extension_reply (xcb_connection_t *c,
+ xcb_xv_query_extension_cookie_t cookie /**< */,
+ xcb_generic_error_t **e);
+
+int
+xcb_xv_query_adaptors_sizeof (const void *_buffer);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_xv_query_adaptors_cookie_t
+xcb_xv_query_adaptors (xcb_connection_t *c,
+ xcb_window_t window);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+xcb_xv_query_adaptors_cookie_t
+xcb_xv_query_adaptors_unchecked (xcb_connection_t *c,
+ xcb_window_t window);
+
+int
+xcb_xv_query_adaptors_info_length (const xcb_xv_query_adaptors_reply_t *R);
+
+xcb_xv_adaptor_info_iterator_t
+xcb_xv_query_adaptors_info_iterator (const xcb_xv_query_adaptors_reply_t *R);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xv_query_adaptors_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+xcb_xv_query_adaptors_reply_t *
+xcb_xv_query_adaptors_reply (xcb_connection_t *c,
+ xcb_xv_query_adaptors_cookie_t cookie /**< */,
+ xcb_generic_error_t **e);
+
+int
+xcb_xv_query_encodings_sizeof (const void *_buffer);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_xv_query_encodings_cookie_t
+xcb_xv_query_encodings (xcb_connection_t *c,
+ xcb_xv_port_t port);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+xcb_xv_query_encodings_cookie_t
+xcb_xv_query_encodings_unchecked (xcb_connection_t *c,
+ xcb_xv_port_t port);
+
+int
+xcb_xv_query_encodings_info_length (const xcb_xv_query_encodings_reply_t *R);
+
+xcb_xv_encoding_info_iterator_t
+xcb_xv_query_encodings_info_iterator (const xcb_xv_query_encodings_reply_t *R);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xv_query_encodings_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+xcb_xv_query_encodings_reply_t *
+xcb_xv_query_encodings_reply (xcb_connection_t *c,
+ xcb_xv_query_encodings_cookie_t cookie /**< */,
+ xcb_generic_error_t **e);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_xv_grab_port_cookie_t
+xcb_xv_grab_port (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_timestamp_t time);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+xcb_xv_grab_port_cookie_t
+xcb_xv_grab_port_unchecked (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_timestamp_t time);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xv_grab_port_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+xcb_xv_grab_port_reply_t *
+xcb_xv_grab_port_reply (xcb_connection_t *c,
+ xcb_xv_grab_port_cookie_t cookie /**< */,
+ xcb_generic_error_t **e);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+xcb_void_cookie_t
+xcb_xv_ungrab_port_checked (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_timestamp_t time);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_void_cookie_t
+xcb_xv_ungrab_port (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_timestamp_t time);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+xcb_void_cookie_t
+xcb_xv_put_video_checked (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_drawable_t drawable,
+ xcb_gcontext_t gc,
+ int16_t vid_x,
+ int16_t vid_y,
+ uint16_t vid_w,
+ uint16_t vid_h,
+ int16_t drw_x,
+ int16_t drw_y,
+ uint16_t drw_w,
+ uint16_t drw_h);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_void_cookie_t
+xcb_xv_put_video (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_drawable_t drawable,
+ xcb_gcontext_t gc,
+ int16_t vid_x,
+ int16_t vid_y,
+ uint16_t vid_w,
+ uint16_t vid_h,
+ int16_t drw_x,
+ int16_t drw_y,
+ uint16_t drw_w,
+ uint16_t drw_h);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+xcb_void_cookie_t
+xcb_xv_put_still_checked (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_drawable_t drawable,
+ xcb_gcontext_t gc,
+ int16_t vid_x,
+ int16_t vid_y,
+ uint16_t vid_w,
+ uint16_t vid_h,
+ int16_t drw_x,
+ int16_t drw_y,
+ uint16_t drw_w,
+ uint16_t drw_h);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_void_cookie_t
+xcb_xv_put_still (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_drawable_t drawable,
+ xcb_gcontext_t gc,
+ int16_t vid_x,
+ int16_t vid_y,
+ uint16_t vid_w,
+ uint16_t vid_h,
+ int16_t drw_x,
+ int16_t drw_y,
+ uint16_t drw_w,
+ uint16_t drw_h);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+xcb_void_cookie_t
+xcb_xv_get_video_checked (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_drawable_t drawable,
+ xcb_gcontext_t gc,
+ int16_t vid_x,
+ int16_t vid_y,
+ uint16_t vid_w,
+ uint16_t vid_h,
+ int16_t drw_x,
+ int16_t drw_y,
+ uint16_t drw_w,
+ uint16_t drw_h);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_void_cookie_t
+xcb_xv_get_video (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_drawable_t drawable,
+ xcb_gcontext_t gc,
+ int16_t vid_x,
+ int16_t vid_y,
+ uint16_t vid_w,
+ uint16_t vid_h,
+ int16_t drw_x,
+ int16_t drw_y,
+ uint16_t drw_w,
+ uint16_t drw_h);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+xcb_void_cookie_t
+xcb_xv_get_still_checked (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_drawable_t drawable,
+ xcb_gcontext_t gc,
+ int16_t vid_x,
+ int16_t vid_y,
+ uint16_t vid_w,
+ uint16_t vid_h,
+ int16_t drw_x,
+ int16_t drw_y,
+ uint16_t drw_w,
+ uint16_t drw_h);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_void_cookie_t
+xcb_xv_get_still (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_drawable_t drawable,
+ xcb_gcontext_t gc,
+ int16_t vid_x,
+ int16_t vid_y,
+ uint16_t vid_w,
+ uint16_t vid_h,
+ int16_t drw_x,
+ int16_t drw_y,
+ uint16_t drw_w,
+ uint16_t drw_h);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+xcb_void_cookie_t
+xcb_xv_stop_video_checked (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_drawable_t drawable);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_void_cookie_t
+xcb_xv_stop_video (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_drawable_t drawable);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+xcb_void_cookie_t
+xcb_xv_select_video_notify_checked (xcb_connection_t *c,
+ xcb_drawable_t drawable,
+ uint8_t onoff);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_void_cookie_t
+xcb_xv_select_video_notify (xcb_connection_t *c,
+ xcb_drawable_t drawable,
+ uint8_t onoff);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+xcb_void_cookie_t
+xcb_xv_select_port_notify_checked (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ uint8_t onoff);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_void_cookie_t
+xcb_xv_select_port_notify (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ uint8_t onoff);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_xv_query_best_size_cookie_t
+xcb_xv_query_best_size (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ uint16_t vid_w,
+ uint16_t vid_h,
+ uint16_t drw_w,
+ uint16_t drw_h,
+ uint8_t motion);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+xcb_xv_query_best_size_cookie_t
+xcb_xv_query_best_size_unchecked (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ uint16_t vid_w,
+ uint16_t vid_h,
+ uint16_t drw_w,
+ uint16_t drw_h,
+ uint8_t motion);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xv_query_best_size_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+xcb_xv_query_best_size_reply_t *
+xcb_xv_query_best_size_reply (xcb_connection_t *c,
+ xcb_xv_query_best_size_cookie_t cookie /**< */,
+ xcb_generic_error_t **e);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+xcb_void_cookie_t
+xcb_xv_set_port_attribute_checked (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_atom_t attribute,
+ int32_t value);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_void_cookie_t
+xcb_xv_set_port_attribute (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_atom_t attribute,
+ int32_t value);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_xv_get_port_attribute_cookie_t
+xcb_xv_get_port_attribute (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_atom_t attribute);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+xcb_xv_get_port_attribute_cookie_t
+xcb_xv_get_port_attribute_unchecked (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_atom_t attribute);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xv_get_port_attribute_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+xcb_xv_get_port_attribute_reply_t *
+xcb_xv_get_port_attribute_reply (xcb_connection_t *c,
+ xcb_xv_get_port_attribute_cookie_t cookie /**< */,
+ xcb_generic_error_t **e);
+
+int
+xcb_xv_query_port_attributes_sizeof (const void *_buffer);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_xv_query_port_attributes_cookie_t
+xcb_xv_query_port_attributes (xcb_connection_t *c,
+ xcb_xv_port_t port);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+xcb_xv_query_port_attributes_cookie_t
+xcb_xv_query_port_attributes_unchecked (xcb_connection_t *c,
+ xcb_xv_port_t port);
+
+int
+xcb_xv_query_port_attributes_attributes_length (const xcb_xv_query_port_attributes_reply_t *R);
+
+xcb_xv_attribute_info_iterator_t
+xcb_xv_query_port_attributes_attributes_iterator (const xcb_xv_query_port_attributes_reply_t *R);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xv_query_port_attributes_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+xcb_xv_query_port_attributes_reply_t *
+xcb_xv_query_port_attributes_reply (xcb_connection_t *c,
+ xcb_xv_query_port_attributes_cookie_t cookie /**< */,
+ xcb_generic_error_t **e);
+
+int
+xcb_xv_list_image_formats_sizeof (const void *_buffer);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_xv_list_image_formats_cookie_t
+xcb_xv_list_image_formats (xcb_connection_t *c,
+ xcb_xv_port_t port);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+xcb_xv_list_image_formats_cookie_t
+xcb_xv_list_image_formats_unchecked (xcb_connection_t *c,
+ xcb_xv_port_t port);
+
+xcb_xv_image_format_info_t *
+xcb_xv_list_image_formats_format (const xcb_xv_list_image_formats_reply_t *R);
+
+int
+xcb_xv_list_image_formats_format_length (const xcb_xv_list_image_formats_reply_t *R);
+
+xcb_xv_image_format_info_iterator_t
+xcb_xv_list_image_formats_format_iterator (const xcb_xv_list_image_formats_reply_t *R);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xv_list_image_formats_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+xcb_xv_list_image_formats_reply_t *
+xcb_xv_list_image_formats_reply (xcb_connection_t *c,
+ xcb_xv_list_image_formats_cookie_t cookie /**< */,
+ xcb_generic_error_t **e);
+
+int
+xcb_xv_query_image_attributes_sizeof (const void *_buffer);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_xv_query_image_attributes_cookie_t
+xcb_xv_query_image_attributes (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ uint32_t id,
+ uint16_t width,
+ uint16_t height);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+xcb_xv_query_image_attributes_cookie_t
+xcb_xv_query_image_attributes_unchecked (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ uint32_t id,
+ uint16_t width,
+ uint16_t height);
+
+uint32_t *
+xcb_xv_query_image_attributes_pitches (const xcb_xv_query_image_attributes_reply_t *R);
+
+int
+xcb_xv_query_image_attributes_pitches_length (const xcb_xv_query_image_attributes_reply_t *R);
+
+xcb_generic_iterator_t
+xcb_xv_query_image_attributes_pitches_end (const xcb_xv_query_image_attributes_reply_t *R);
+
+uint32_t *
+xcb_xv_query_image_attributes_offsets (const xcb_xv_query_image_attributes_reply_t *R);
+
+int
+xcb_xv_query_image_attributes_offsets_length (const xcb_xv_query_image_attributes_reply_t *R);
+
+xcb_generic_iterator_t
+xcb_xv_query_image_attributes_offsets_end (const xcb_xv_query_image_attributes_reply_t *R);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xv_query_image_attributes_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+xcb_xv_query_image_attributes_reply_t *
+xcb_xv_query_image_attributes_reply (xcb_connection_t *c,
+ xcb_xv_query_image_attributes_cookie_t cookie /**< */,
+ xcb_generic_error_t **e);
+
+int
+xcb_xv_put_image_sizeof (const void *_buffer,
+ uint32_t data_len);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+xcb_void_cookie_t
+xcb_xv_put_image_checked (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_drawable_t drawable,
+ xcb_gcontext_t gc,
+ uint32_t id,
+ int16_t src_x,
+ int16_t src_y,
+ uint16_t src_w,
+ uint16_t src_h,
+ int16_t drw_x,
+ int16_t drw_y,
+ uint16_t drw_w,
+ uint16_t drw_h,
+ uint16_t width,
+ uint16_t height,
+ uint32_t data_len,
+ const uint8_t *data);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_void_cookie_t
+xcb_xv_put_image (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_drawable_t drawable,
+ xcb_gcontext_t gc,
+ uint32_t id,
+ int16_t src_x,
+ int16_t src_y,
+ uint16_t src_w,
+ uint16_t src_h,
+ int16_t drw_x,
+ int16_t drw_y,
+ uint16_t drw_w,
+ uint16_t drw_h,
+ uint16_t width,
+ uint16_t height,
+ uint32_t data_len,
+ const uint8_t *data);
+
+uint8_t *
+xcb_xv_put_image_data (const xcb_xv_put_image_request_t *R);
+
+int
+xcb_xv_put_image_data_length (const xcb_xv_put_image_request_t *R);
+
+xcb_generic_iterator_t
+xcb_xv_put_image_data_end (const xcb_xv_put_image_request_t *R);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+xcb_void_cookie_t
+xcb_xv_shm_put_image_checked (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_drawable_t drawable,
+ xcb_gcontext_t gc,
+ xcb_shm_seg_t shmseg,
+ uint32_t id,
+ uint32_t offset,
+ int16_t src_x,
+ int16_t src_y,
+ uint16_t src_w,
+ uint16_t src_h,
+ int16_t drw_x,
+ int16_t drw_y,
+ uint16_t drw_w,
+ uint16_t drw_h,
+ uint16_t width,
+ uint16_t height,
+ uint8_t send_event);
+
+/**
+ *
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+xcb_void_cookie_t
+xcb_xv_shm_put_image (xcb_connection_t *c,
+ xcb_xv_port_t port,
+ xcb_drawable_t drawable,
+ xcb_gcontext_t gc,
+ xcb_shm_seg_t shmseg,
+ uint32_t id,
+ uint32_t offset,
+ int16_t src_x,
+ int16_t src_y,
+ uint16_t src_w,
+ uint16_t src_h,
+ int16_t drw_x,
+ int16_t drw_y,
+ uint16_t drw_w,
+ uint16_t drw_h,
+ uint16_t width,
+ uint16_t height,
+ uint8_t send_event);
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
+/**
+ * @}
+ */