|  | 
| enum | libusb_error { LIBUSB_SUCCESS = 0
,
 LIBUSB_ERROR_IO = -1
,
 LIBUSB_ERROR_INVALID_PARAM = -2
,
 LIBUSB_ERROR_ACCESS = -3
,
 LIBUSB_ERROR_NO_DEVICE = -4
,
 LIBUSB_ERROR_NOT_FOUND = -5
,
 LIBUSB_ERROR_BUSY = -6
,
 LIBUSB_ERROR_TIMEOUT = -7
,
 LIBUSB_ERROR_OVERFLOW = -8
,
 LIBUSB_ERROR_PIPE = -9
,
 LIBUSB_ERROR_INTERRUPTED = -10
,
 LIBUSB_ERROR_NO_MEM = -11
,
 LIBUSB_ERROR_NOT_SUPPORTED = -12
,
 LIBUSB_ERROR_OTHER = -99
 }
 | 
|  | 
| enum | libusb_capability { LIBUSB_CAP_HAS_CAPABILITY
,
 LIBUSB_CAP_HAS_HOTPLUG
,
 LIBUSB_CAP_HAS_HID_ACCESS
,
 LIBUSB_CAP_SUPPORTS_DETACH_KERNEL_DRIVER
 }
 | 
|  | 
| enum | libusb_speed { LIBUSB_SPEED_UNKNOWN = USB_SPEED_UNKNOWN
,
 LIBUSB_SPEED_LOW = USB_SPEED_LOW
,
 LIBUSB_SPEED_FULL = USB_SPEED_FULL
,
 LIBUSB_SPEED_HIGH = USB_SPEED_HIGH
,
 LIBUSB_SPEED_SUPER = USB_SPEED_SUPER
 }
 | 
|  | 
| enum | libusb_endpoint_direction { LIBUSB_ENDPOINT_IN = USB_DIR_IN
,
 LIBUSB_ENDPOINT_OUT = USB_DIR_OUT
 }
 | 
|  | 
| enum | libusb_request_type { LIBUSB_REQUEST_TYPE_STANDARD = USB_TYPE_STANDARD
,
 LIBUSB_REQUEST_TYPE_CLASS = USB_TYPE_CLASS
,
 LIBUSB_REQUEST_TYPE_VENDOR = USB_TYPE_VENDOR
,
 LIBUSB_REQUEST_TYPE_RESERVED = USB_TYPE_RESERVED
 }
 | 
|  | 
| enum | libusb_request_recipient { LIBUSB_RECIPIENT_DEVICE = USB_RECIP_DEVICE
,
 LIBUSB_RECIPIENT_INTERFACE = USB_RECIP_INTERFACE
,
 LIBUSB_RECIPIENT_ENDPOINT = USB_RECIP_ENDPOINT
,
 LIBUSB_RECIPIENT_OTHER = USB_RECIP_OTHER
 }
 | 
|  | 
| enum | libusb_standard_request { LIBUSB_REQUEST_GET_STATUS = USB_REQ_GET_STATUS
,
 LIBUSB_REQUEST_CLEAR_FEATURE = USB_REQ_CLEAR_FEATURE
,
 LIBUSB_REQUEST_SET_FEATURE = USB_REQ_SET_FEATURE
,
 LIBUSB_REQUEST_SET_ADDRESS = USB_REQ_SET_ADDRESS
,
 LIBUSB_REQUEST_GET_DESCRIPTOR = USB_REQ_GET_DESCRIPTOR
,
 LIBUSB_REQUEST_SET_DESCRIPTOR = USB_REQ_SET_DESCRIPTOR
,
 LIBUSB_REQUEST_GET_CONFIGURATION = USB_REQ_GET_CONFIGURATION
,
 LIBUSB_REQUEST_SET_CONFIGURATION = USB_REQ_SET_CONFIGURATION
,
 LIBUSB_REQUEST_GET_INTERFACE = USB_REQ_GET_INTERFACE
,
 LIBUSB_REQUEST_SET_INTERFACE = USB_REQ_SET_INTERFACE
,
 LIBUSB_REQUEST_SYNCH_FRAME = USB_REQ_SYNCH_FRAME
 }
 | 
|  | 
| enum | libusb_class_code { LIBUSB_CLASS_PER_INTERFACE = 0x00
,
 LIBUSB_CLASS_AUDIO = 0x01
,
 LIBUSB_CLASS_COMM = 0x02
,
 LIBUSB_CLASS_HID = 0x03
,
 LIBUSB_CLASS_PHYSICAL = 0x05
,
 LIBUSB_CLASS_IMAGE = 0x06
,
 LIBUSB_CLASS_PTP = 0x06
,
 LIBUSB_CLASS_PRINTER = 0x07
,
 LIBUSB_CLASS_MASS_STORAGE = 0x08
,
 LIBUSB_CLASS_HUB = 0x09
,
 LIBUSB_CLASS_DATA = 0x0A
,
 LIBUSB_CLASS_SMART_CARD = 0x0B
,
 LIBUSB_CLASS_CONTENT_SECURITY = 0x0D
,
 LIBUSB_CLASS_VIDEO = 0x0E
,
 LIBUSB_CLASS_PERSONAL_HEALTHCARE = 0x0F
,
 LIBUSB_CLASS_DIAGNOSTIC_DEVICE = 0xDC
,
 LIBUSB_CLASS_WIRELESS = 0xE0
,
 LIBUSB_CLASS_MISCELLANEOUS = 0xEF
,
 LIBUSB_CLASS_APPLICATION = 0xFE
,
 LIBUSB_CLASS_VENDOR_SPEC = 0xFF
 }
 | 
|  | 
| enum | libusb_descriptor_type { LIBUSB_DT_DEVICE = USB_DT_DEVICE
,
 LIBUSB_DT_CONFIG = USB_DT_CONFIG
,
 LIBUSB_DT_STRING = USB_DT_STRING
,
 LIBUSB_DT_INTERFACE = USB_DT_INTERFACE
,
 LIBUSB_DT_ENDPOINT = USB_DT_ENDPOINT
,
 LIBUSB_DT_INTERFACE_ASSOCIATION = USB_DT_INTERFACE_ASSOCIATION
,
 LIBUSB_DT_BOS = USB_DT_BOS
,
 LIBUSB_DT_DEVICE_CAPABILITY = USB_DT_DEVICE_CAPABILITY
,
 LIBUSB_DT_HID = USB_DT_HID
,
 LIBUSB_DT_REPORT = USB_DT_REPORT
,
 LIBUSB_DT_PHYSICAL = USB_DT_PHYSICAL
,
 LIBUSB_DT_HUB = USB_DT_HUB
,
 LIBUSB_DT_SUPERSPEED_HUB = USB_DT_SUPERSPEED_HUB
,
 LIBUSB_DT_SS_ENDPOINT_COMPANION = USB_DT_SS_ENDPOINT_COMP
 }
 | 
|  | 
| enum | libusb_descriptor_size { LIBUSB_DT_DEVICE_SIZE = USB_DT_DEVICE_SIZE
,
 LIBUSB_DT_CONFIG_SIZE = USB_DT_CONFIG_SIZE
,
 LIBUSB_DT_INTERFACE_SIZE = USB_DT_INTERFACE_SIZE
,
 LIBUSB_DT_ENDPOINT_SIZE = USB_DT_ENDPOINT_SIZE
,
 LIBUSB_DT_ENDPOINT_AUDIO_SIZE = USB_DT_ENDPOINT_AUDIO_SIZE
 }
 | 
|  | 
| enum | libusb_log_level { LIBUSB_LOG_LEVEL_NONE = 0
,
 LIBUSB_LOG_LEVEL_ERROR = 1
,
 LIBUSB_LOG_LEVEL_WARNING = 2
,
 LIBUSB_LOG_LEVEL_INFO = 3
,
 LIBUSB_LOG_LEVEL_DEBUG = 4
 }
 | 
|  | 
| enum | libusb_option { LIBUSB_OPTION_LOG_LEVEL = 0
,
 LIBUSB_OPTION_MAX = 1
 }
 | 
|  | 
| enum | libusb_hotplug_event { LIBUSB_HOTPLUG_EVENT_DEVICE_ARRIVED = 1 << 1
,
 LIBUSB_HOTPLUG_EVENT_DEVICE_LEFT = 1 << 2
 }
 | 
|  | 
| enum | libusb_hotplug_flag { LIBUSB_HOTPLUG_NO_FLAGS = 0
,
 LIBUSB_HOTPLUG_ENUMERATE
 }
 | 
|  | 
| enum | libusb_transfer_status { LIBUSB_TRANSFER_COMPLETED
,
 LIBUSB_TRANSFER_ERROR
,
 LIBUSB_TRANSFER_CANCELLED
,
 LIBUSB_TRANSFER_NO_DEVICE
,
 LIBUSB_TRANSFER_TIMED_OUT
,
 LIBUSB_TRANSFER_STALL
,
 LIBUSB_TRANSFER_OVERFLOW
 }
 | 
|  | 
| enum | libusb_transfer_type { LIBUSB_TRANSFER_TYPE_CONTROL = USB_ENDPOINT_XFER_CONTROL
,
 LIBUSB_TRANSFER_TYPE_ISOCHRONOUS = USB_ENDPOINT_XFER_ISOC
,
 LIBUSB_TRANSFER_TYPE_BULK = USB_ENDPOINT_XFER_BULK
,
 LIBUSB_TRANSFER_TYPE_INTERRUPT = USB_ENDPOINT_XFER_INT
,
 LIBUSB_TRANSFER_TYPE_BULK_STREAM = USB_ENDPOINT_XFER_BULK_STREAM
 }
 | 
|  | 
| enum | libusb_transfer_flags { LIBUSB_TRANSFER_SHORT_NOT_OK = (1U << 0)
,
 LIBUSB_TRANSFER_FREE_BUFFER = (1U << 1)
,
 LIBUSB_TRANSFER_FREE_TRANSFER = (1U << 2)
,
 LIBUSB_TRANSFER_ADD_ZERO_PACKET = (1U << 3)
 }
 | 
|  | 
|  | 
| const char * | libusb_strerror (int code) | 
|  | 
| int | libusb_init (libusb_context **ctx) | 
|  | 
| void | libusb_exit (libusb_context *ctx) | 
|  | 
| void | libusb_set_debug (libusb_context *ctx, int level) | 
|  | 
| const char * | libusb_error_name (int errcode) | 
|  | 
| ssize_t | libusb_get_device_list (libusb_context *ctx, libusb_device ***list) | 
|  | 
| void | libusb_free_device_list (libusb_device **list, int unref_devices) | 
|  | 
| int | libusb_get_device_descriptor (libusb_device *dev, struct libusb_device_descriptor *desc) | 
|  | 
| int | libusb_open (libusb_device *dev, libusb_device_handle **dev_handle) | 
|  | 
| libusb_device * | libusb_get_device (libusb_device_handle *dev_handle) | 
|  | 
| libusb_device_handle * | libusb_open_device_with_vid_pid (libusb_context *ctx, uint16_t vendor_id, uint16_t product_id) | 
|  | 
| void | libusb_close (libusb_device_handle *dev_handle) | 
|  | 
| uint8_t | libusb_get_device_address (libusb_device *dev) | 
|  | 
| uint8_t | libusb_get_bus_number (libusb_device *dev) | 
|  | 
| uint8_t | libusb_get_port_number (libusb_device *dev) | 
|  | 
| libusb_device * | libusb_get_parent (libusb_device *dev) | 
|  | 
| int | libusb_release_interface (libusb_device_handle *dev_handle, int interface_number) | 
|  | 
| int | libusb_claim_interface (libusb_device_handle *dev_handle, int interface_number) | 
|  | 
| struct libusb_transfer * | libusb_alloc_transfer (int iso_packets) | 
|  | 
| void | libusb_free_transfer (struct libusb_transfer *transfer) | 
|  | 
| int | libusb_submit_transfer (struct libusb_transfer *transfer) | 
|  | 
| int | libusb_cancel_transfer (struct libusb_transfer *transfer) | 
|  | 
| int | libusb_control_transfer (libusb_device_handle *dev_handle, uint8_t bRequestType, uint8_t bRequest, uint16_t wValue, uint16_t wIndex, unsigned char *data, uint16_t wLength, unsigned int timeout) | 
|  | 
| int | libusb_bulk_transfer (libusb_device_handle *dev_handle, unsigned char endpoint, unsigned char *data, int length, int *actual_length, unsigned int timeout) | 
|  | 
| int | libusb_interrupt_transfer (libusb_device_handle *dev_handle, unsigned char endpoint, unsigned char *data, int length, int *actual_length, unsigned int timeout) | 
|  | 
| int | libusb_hotplug_register_callback (libusb_context *ctx, libusb_hotplug_event events, libusb_hotplug_flag flags, int vendor_id, int product_id, int dev_class, libusb_hotplug_callback_fn cb_fn, void *user_data, libusb_hotplug_callback_handle *callback_handle) | 
|  | 
| void | libusb_hotplug_deregister_callback (libusb_context *ctx, libusb_hotplug_callback_handle callback_handle) | 
|  | 
| int | libusb_get_string_descriptor_ascii (libusb_device_handle *dev_handle, uint8_t desc_index, unsigned char *data, int length) | 
|  | 
| int | libusb_get_config_descriptor (libusb_device *dev, uint8_t config_index, struct libusb_config_descriptor **config) | 
|  | 
| int | libusb_get_config_descriptor_by_value (libusb_device *dev, uint8_t value, struct libusb_config_descriptor **config) | 
|  | 
| int | libusb_get_active_config_descriptor (libusb_device *dev, struct libusb_config_descriptor **config) | 
|  | 
| void | libusb_free_config_descriptor (struct libusb_config_descriptor *config) | 
|  | 
| int | libusb_get_descriptor (libusb_device_handle *dev_handle, uint8_t desc_type, uint8_t desc_index, unsigned char *data, int length) | 
|  | 
| int | libusb_get_string_descriptor (libusb_device_handle *dev_handle, uint8_t desc_index, uint16_t langid, unsigned char *data, int length) | 
|  | 
| int | libusb_set_interface_alt_setting (libusb_device_handle *dev_handle, int interface_number, int alternate_setting) | 
|  | 
| int | libusb_get_ss_endpoint_companion_descriptor (struct libusb_context *ctx, const struct libusb_endpoint_descriptor *endpoint, struct libusb_ss_endpoint_companion_descriptor **ep_comp) | 
|  | 
| void | libusb_free_ss_endpoint_companion_descriptor (struct libusb_ss_endpoint_companion_descriptor *ep_comp) | 
|  | 
| int | libusb_get_next_timeout (libusb_context *ctx, struct timeval *tv) | 
|  | 
| int | libusb_has_capability (uint32_t capability) | 
|  | 
| int | libusb_attach_kernel_driver (libusb_device_handle *dev_handle, int interface_number) | 
|  | 
| int | libusb_detach_kernel_driver (libusb_device_handle *dev_handle, int interface_number) | 
|  | 
| int | libusb_kernel_driver_active (libusb_device_handle *dev_handle, int interface_number) | 
|  | 
| libusb_device * | libusb_ref_device (libusb_device *dev) | 
|  | 
| void | libusb_unref_device (libusb_device *dev) | 
|  | 
| int | libusb_get_max_packet_size (libusb_device *dev, unsigned char endpoint) | 
|  | 
| int | libusb_get_device_speed (libusb_device *dev) | 
|  | 
| int | libusb_set_configuration (libusb_device_handle *dev_handle, int configuration) | 
|  | 
| int | libusb_get_configuration (libusb_device_handle *dev_handle, int *config) | 
|  | 
| int | libusb_handle_events_timeout_completed (libusb_context *ctx, struct timeval *tv, int *completed) | 
|  | 
| int | libusb_handle_events_completed (libusb_context *ctx, int *completed) | 
|  | 
| int | libusb_handle_events_timeout (libusb_context *ctx, struct timeval *tv) | 
|  | 
| int | libusb_handle_events (libusb_context *ctx) | 
|  | 
| const struct libusb_pollfd ** | libusb_get_pollfds (libusb_context *ctx) | 
|  | 
| void | libusb_free_pollfds (const struct libusb_pollfd **pollfds) | 
|  | 
| void | vsf_linux_libusb_startup (void) | 
|  | 
| int | libusb_reset_device (libusb_device_handle *dev_handle) | 
|  | 
| int | libusb_clear_halt (libusb_device_handle *dev_handle, unsigned char endpoint) | 
|  | 
| int | __libusb_set_option_va (libusb_context *ctx, enum libusb_option option, va_list ap) | 
|  | 
| int | libusb_set_option (libusb_context *ctx, enum libusb_option option,...) | 
|  | 
| int | usb_find_devices (void) | 
|  | 
| struct usb_bus * | usb_get_busses (void) | 
|  | 
| int | usb_get_driver_np (usb_dev_handle *dev, int interface, char *name, unsigned int namelen) | 
|  | 
| int | usb_detach_kernel_driver_np (usb_dev_handle *dev, int interface) | 
|  | 
| usb_dev_handle * | usb_open (struct usb_device *dev) | 
|  | 
| int | usb_close (usb_dev_handle *dev) | 
|  | 
| int | usb_bulk_write (usb_dev_handle *dev, int ep, char *bytes, int size, int timeout) | 
|  | 
| int | usb_bulk_read (usb_dev_handle *dev, int ep, char *bytes, int size, int timeout) | 
|  | 
| int | usb_interrupt_write (usb_dev_handle *dev, int ep, char *bytes, int size, int timeout) | 
|  | 
| int | usb_interrupt_read (usb_dev_handle *dev, int ep, char *bytes, int size, int timeout) | 
|  |