#ifndef __LINUX_USB_VIDEO_H
#define __LINUX_USB_VIDEO_H
#include <linux/types.h>
#define UVC_SC_UNDEFINED …
#define UVC_SC_VIDEOCONTROL …
#define UVC_SC_VIDEOSTREAMING …
#define UVC_SC_VIDEO_INTERFACE_COLLECTION …
#define UVC_PC_PROTOCOL_UNDEFINED …
#define UVC_PC_PROTOCOL_15 …
#define UVC_VC_DESCRIPTOR_UNDEFINED …
#define UVC_VC_HEADER …
#define UVC_VC_INPUT_TERMINAL …
#define UVC_VC_OUTPUT_TERMINAL …
#define UVC_VC_SELECTOR_UNIT …
#define UVC_VC_PROCESSING_UNIT …
#define UVC_VC_EXTENSION_UNIT …
#define UVC_VS_UNDEFINED …
#define UVC_VS_INPUT_HEADER …
#define UVC_VS_OUTPUT_HEADER …
#define UVC_VS_STILL_IMAGE_FRAME …
#define UVC_VS_FORMAT_UNCOMPRESSED …
#define UVC_VS_FRAME_UNCOMPRESSED …
#define UVC_VS_FORMAT_MJPEG …
#define UVC_VS_FRAME_MJPEG …
#define UVC_VS_FORMAT_MPEG2TS …
#define UVC_VS_FORMAT_DV …
#define UVC_VS_COLORFORMAT …
#define UVC_VS_FORMAT_FRAME_BASED …
#define UVC_VS_FRAME_FRAME_BASED …
#define UVC_VS_FORMAT_STREAM_BASED …
#define UVC_EP_UNDEFINED …
#define UVC_EP_GENERAL …
#define UVC_EP_ENDPOINT …
#define UVC_EP_INTERRUPT …
#define UVC_RC_UNDEFINED …
#define UVC_SET_CUR …
#define UVC_GET_CUR …
#define UVC_GET_MIN …
#define UVC_GET_MAX …
#define UVC_GET_RES …
#define UVC_GET_LEN …
#define UVC_GET_INFO …
#define UVC_GET_DEF …
#define UVC_VC_CONTROL_UNDEFINED …
#define UVC_VC_VIDEO_POWER_MODE_CONTROL …
#define UVC_VC_REQUEST_ERROR_CODE_CONTROL …
#define UVC_TE_CONTROL_UNDEFINED …
#define UVC_SU_CONTROL_UNDEFINED …
#define UVC_SU_INPUT_SELECT_CONTROL …
#define UVC_CT_CONTROL_UNDEFINED …
#define UVC_CT_SCANNING_MODE_CONTROL …
#define UVC_CT_AE_MODE_CONTROL …
#define UVC_CT_AE_PRIORITY_CONTROL …
#define UVC_CT_EXPOSURE_TIME_ABSOLUTE_CONTROL …
#define UVC_CT_EXPOSURE_TIME_RELATIVE_CONTROL …
#define UVC_CT_FOCUS_ABSOLUTE_CONTROL …
#define UVC_CT_FOCUS_RELATIVE_CONTROL …
#define UVC_CT_FOCUS_AUTO_CONTROL …
#define UVC_CT_IRIS_ABSOLUTE_CONTROL …
#define UVC_CT_IRIS_RELATIVE_CONTROL …
#define UVC_CT_ZOOM_ABSOLUTE_CONTROL …
#define UVC_CT_ZOOM_RELATIVE_CONTROL …
#define UVC_CT_PANTILT_ABSOLUTE_CONTROL …
#define UVC_CT_PANTILT_RELATIVE_CONTROL …
#define UVC_CT_ROLL_ABSOLUTE_CONTROL …
#define UVC_CT_ROLL_RELATIVE_CONTROL …
#define UVC_CT_PRIVACY_CONTROL …
#define UVC_PU_CONTROL_UNDEFINED …
#define UVC_PU_BACKLIGHT_COMPENSATION_CONTROL …
#define UVC_PU_BRIGHTNESS_CONTROL …
#define UVC_PU_CONTRAST_CONTROL …
#define UVC_PU_GAIN_CONTROL …
#define UVC_PU_POWER_LINE_FREQUENCY_CONTROL …
#define UVC_PU_HUE_CONTROL …
#define UVC_PU_SATURATION_CONTROL …
#define UVC_PU_SHARPNESS_CONTROL …
#define UVC_PU_GAMMA_CONTROL …
#define UVC_PU_WHITE_BALANCE_TEMPERATURE_CONTROL …
#define UVC_PU_WHITE_BALANCE_TEMPERATURE_AUTO_CONTROL …
#define UVC_PU_WHITE_BALANCE_COMPONENT_CONTROL …
#define UVC_PU_WHITE_BALANCE_COMPONENT_AUTO_CONTROL …
#define UVC_PU_DIGITAL_MULTIPLIER_CONTROL …
#define UVC_PU_DIGITAL_MULTIPLIER_LIMIT_CONTROL …
#define UVC_PU_HUE_AUTO_CONTROL …
#define UVC_PU_ANALOG_VIDEO_STANDARD_CONTROL …
#define UVC_PU_ANALOG_LOCK_STATUS_CONTROL …
#define UVC_VS_CONTROL_UNDEFINED …
#define UVC_VS_PROBE_CONTROL …
#define UVC_VS_COMMIT_CONTROL …
#define UVC_VS_STILL_PROBE_CONTROL …
#define UVC_VS_STILL_COMMIT_CONTROL …
#define UVC_VS_STILL_IMAGE_TRIGGER_CONTROL …
#define UVC_VS_STREAM_ERROR_CODE_CONTROL …
#define UVC_VS_GENERATE_KEY_FRAME_CONTROL …
#define UVC_VS_UPDATE_FRAME_SEGMENT_CONTROL …
#define UVC_VS_SYNC_DELAY_CONTROL …
#define UVC_TT_VENDOR_SPECIFIC …
#define UVC_TT_STREAMING …
#define UVC_ITT_VENDOR_SPECIFIC …
#define UVC_ITT_CAMERA …
#define UVC_ITT_MEDIA_TRANSPORT_INPUT …
#define UVC_OTT_VENDOR_SPECIFIC …
#define UVC_OTT_DISPLAY …
#define UVC_OTT_MEDIA_TRANSPORT_OUTPUT …
#define UVC_EXTERNAL_VENDOR_SPECIFIC …
#define UVC_COMPOSITE_CONNECTOR …
#define UVC_SVIDEO_CONNECTOR …
#define UVC_COMPONENT_CONNECTOR …
#define UVC_STATUS_TYPE_CONTROL …
#define UVC_STATUS_TYPE_STREAMING …
#define UVC_STREAM_EOH …
#define UVC_STREAM_ERR …
#define UVC_STREAM_STI …
#define UVC_STREAM_RES …
#define UVC_STREAM_SCR …
#define UVC_STREAM_PTS …
#define UVC_STREAM_EOF …
#define UVC_STREAM_FID …
#define UVC_CONTROL_CAP_GET …
#define UVC_CONTROL_CAP_SET …
#define UVC_CONTROL_CAP_DISABLED …
#define UVC_CONTROL_CAP_AUTOUPDATE …
#define UVC_CONTROL_CAP_ASYNCHRONOUS …
enum uvc_color_primaries_values { … };
enum uvc_transfer_characteristics_values { … };
enum uvc_matrix_coefficients { … };
struct uvc_descriptor_header { … } __attribute__((packed));
struct uvc_header_descriptor { … } __attribute__((packed));
#define UVC_DT_HEADER_SIZE(n) …
#define UVC_HEADER_DESCRIPTOR(n) …
#define DECLARE_UVC_HEADER_DESCRIPTOR(n) …
struct uvc_input_terminal_descriptor { … } __attribute__((packed));
#define UVC_DT_INPUT_TERMINAL_SIZE …
struct uvc_output_terminal_descriptor { … } __attribute__((packed));
#define UVC_DT_OUTPUT_TERMINAL_SIZE …
struct uvc_camera_terminal_descriptor { … } __attribute__((packed));
#define UVC_DT_CAMERA_TERMINAL_SIZE(n) …
struct uvc_selector_unit_descriptor { … } __attribute__((packed));
#define UVC_DT_SELECTOR_UNIT_SIZE(n) …
#define UVC_SELECTOR_UNIT_DESCRIPTOR(n) …
#define DECLARE_UVC_SELECTOR_UNIT_DESCRIPTOR(n) …
struct uvc_processing_unit_descriptor { … } __attribute__((packed));
#define UVC_DT_PROCESSING_UNIT_SIZE(n) …
struct uvc_extension_unit_descriptor { … } __attribute__((packed));
#define UVC_DT_EXTENSION_UNIT_SIZE(p, n) …
#define UVC_EXTENSION_UNIT_DESCRIPTOR(p, n) …
#define DECLARE_UVC_EXTENSION_UNIT_DESCRIPTOR(p, n) …
struct uvc_control_endpoint_descriptor { … } __attribute__((packed));
#define UVC_DT_CONTROL_ENDPOINT_SIZE …
struct uvc_input_header_descriptor { … } __attribute__((packed));
#define UVC_DT_INPUT_HEADER_SIZE(n, p) …
#define UVC_INPUT_HEADER_DESCRIPTOR(n, p) …
#define DECLARE_UVC_INPUT_HEADER_DESCRIPTOR(n, p) …
struct uvc_output_header_descriptor { … } __attribute__((packed));
#define UVC_DT_OUTPUT_HEADER_SIZE(n, p) …
#define UVC_OUTPUT_HEADER_DESCRIPTOR(n, p) …
#define DECLARE_UVC_OUTPUT_HEADER_DESCRIPTOR(n, p) …
struct uvc_color_matching_descriptor { … } __attribute__((packed));
#define UVC_DT_COLOR_MATCHING_SIZE …
struct uvc_streaming_control { … } __attribute__((packed));
struct uvc_format_uncompressed { … } __attribute__((packed));
#define UVC_DT_FORMAT_UNCOMPRESSED_SIZE …
struct uvc_frame_uncompressed { … } __attribute__((packed));
#define UVC_DT_FRAME_UNCOMPRESSED_SIZE(n) …
#define UVC_FRAME_UNCOMPRESSED(n) …
#define DECLARE_UVC_FRAME_UNCOMPRESSED(n) …
struct uvc_format_mjpeg { … } __attribute__((packed));
#define UVC_DT_FORMAT_MJPEG_SIZE …
struct uvc_frame_mjpeg { … } __attribute__((packed));
#define UVC_DT_FRAME_MJPEG_SIZE(n) …
#define UVC_FRAME_MJPEG(n) …
#define DECLARE_UVC_FRAME_MJPEG(n) …
#endif