libusb.h   libusb.h 
skipping to change at line 99 skipping to change at line 99
/** Mass storage class */ /** Mass storage class */
LIBUSB_CLASS_MASS_STORAGE = 8, LIBUSB_CLASS_MASS_STORAGE = 8,
/** Hub class */ /** Hub class */
LIBUSB_CLASS_HUB = 9, LIBUSB_CLASS_HUB = 9,
/** Data class */ /** Data class */
LIBUSB_CLASS_DATA = 10, LIBUSB_CLASS_DATA = 10,
/** Class is vendor-specific */ /** Class is vendor-specific */
LIBUSB_CLASS_VENDOR_SPEC = 0xff, LIBUSB_CLASS_VENDOR_SPEC = 0xff
}; };
/** \ingroup desc /** \ingroup desc
* Descriptor types as defined by the USB specification. */ * Descriptor types as defined by the USB specification. */
enum libusb_descriptor_type { enum libusb_descriptor_type {
/** Device descriptor. See libusb_device_descriptor. */ /** Device descriptor. See libusb_device_descriptor. */
LIBUSB_DT_DEVICE = 0x01, LIBUSB_DT_DEVICE = 0x01,
/** Configuration descriptor. See libusb_config_descriptor. */ /** Configuration descriptor. See libusb_config_descriptor. */
LIBUSB_DT_CONFIG = 0x02, LIBUSB_DT_CONFIG = 0x02,
skipping to change at line 130 skipping to change at line 130
/** HID descriptor */ /** HID descriptor */
LIBUSB_DT_HID = 0x21, LIBUSB_DT_HID = 0x21,
/** HID report descriptor */ /** HID report descriptor */
LIBUSB_DT_REPORT = 0x22, LIBUSB_DT_REPORT = 0x22,
/** Physical descriptor */ /** Physical descriptor */
LIBUSB_DT_PHYSICAL = 0x23, LIBUSB_DT_PHYSICAL = 0x23,
/** Hub descriptor */ /** Hub descriptor */
LIBUSB_DT_HUB = 0x29, LIBUSB_DT_HUB = 0x29
}; };
/* Descriptor sizes per descriptor type */ /* Descriptor sizes per descriptor type */
#define LIBUSB_DT_DEVICE_SIZE 18 #define LIBUSB_DT_DEVICE_SIZE 18
#define LIBUSB_DT_CONFIG_SIZE 9 #define LIBUSB_DT_CONFIG_SIZE 9
#define LIBUSB_DT_INTERFACE_SIZE 9 #define LIBUSB_DT_INTERFACE_SIZE 9
#define LIBUSB_DT_ENDPOINT_SIZE 7 #define LIBUSB_DT_ENDPOINT_SIZE 7
#define LIBUSB_DT_ENDPOINT_AUDIO_SIZE 9 /* Audio extension */ #define LIBUSB_DT_ENDPOINT_AUDIO_SIZE 9 /* Audio extension */
#define LIBUSB_DT_HUB_NONVAR_SIZE 7 #define LIBUSB_DT_HUB_NONVAR_SIZE 7
skipping to change at line 153 skipping to change at line 153
/** \ingroup desc /** \ingroup desc
* Endpoint direction. Values for bit 7 of the * Endpoint direction. Values for bit 7 of the
* \ref libusb_endpoint_descriptor::bEndpointAddress "endpoint address" sch eme. * \ref libusb_endpoint_descriptor::bEndpointAddress "endpoint address" sch eme.
*/ */
enum libusb_endpoint_direction { enum libusb_endpoint_direction {
/** In: device-to-host */ /** In: device-to-host */
LIBUSB_ENDPOINT_IN = 0x80, LIBUSB_ENDPOINT_IN = 0x80,
/** Out: host-to-device */ /** Out: host-to-device */
LIBUSB_ENDPOINT_OUT = 0x00, LIBUSB_ENDPOINT_OUT = 0x00
}; };
#define LIBUSB_TRANSFER_TYPE_MASK 0x03 /* in bmAttr ibutes */ #define LIBUSB_TRANSFER_TYPE_MASK 0x03 /* in bmAttr ibutes */
/** \ingroup desc /** \ingroup desc
* Endpoint transfer type. Values for bits 0:1 of the * Endpoint transfer type. Values for bits 0:1 of the
* \ref libusb_endpoint_descriptor::bmAttributes "endpoint attributes" fiel d. * \ref libusb_endpoint_descriptor::bmAttributes "endpoint attributes" fiel d.
*/ */
enum libusb_transfer_type { enum libusb_transfer_type {
/** Control endpoint */ /** Control endpoint */
LIBUSB_TRANSFER_TYPE_CONTROL = 0, LIBUSB_TRANSFER_TYPE_CONTROL = 0,
/** Isochronous endpoint */ /** Isochronous endpoint */
LIBUSB_TRANSFER_TYPE_ISOCHRONOUS = 1, LIBUSB_TRANSFER_TYPE_ISOCHRONOUS = 1,
/** Bulk endpoint */ /** Bulk endpoint */
LIBUSB_TRANSFER_TYPE_BULK = 2, LIBUSB_TRANSFER_TYPE_BULK = 2,
/** Interrupt endpoint */ /** Interrupt endpoint */
LIBUSB_TRANSFER_TYPE_INTERRUPT = 3, LIBUSB_TRANSFER_TYPE_INTERRUPT = 3
}; };
/** \ingroup misc /** \ingroup misc
* Standard requests, as defined in table 9-3 of the USB2 specifications */ * Standard requests, as defined in table 9-3 of the USB2 specifications */
enum libusb_standard_request { enum libusb_standard_request {
/** Request status of the specific recipient */ /** Request status of the specific recipient */
LIBUSB_REQUEST_GET_STATUS = 0x00, LIBUSB_REQUEST_GET_STATUS = 0x00,
/** Clear or disable a specific feature */ /** Clear or disable a specific feature */
LIBUSB_REQUEST_CLEAR_FEATURE = 0x01, LIBUSB_REQUEST_CLEAR_FEATURE = 0x01,
skipping to change at line 214 skipping to change at line 214
/** Set device configuration */ /** Set device configuration */
LIBUSB_REQUEST_SET_CONFIGURATION = 0x09, LIBUSB_REQUEST_SET_CONFIGURATION = 0x09,
/** Return the selected alternate setting for the specified interfac e */ /** Return the selected alternate setting for the specified interfac e */
LIBUSB_REQUEST_GET_INTERFACE = 0x0A, LIBUSB_REQUEST_GET_INTERFACE = 0x0A,
/** Select an alternate interface for the specified interface */ /** Select an alternate interface for the specified interface */
LIBUSB_REQUEST_SET_INTERFACE = 0x0B, LIBUSB_REQUEST_SET_INTERFACE = 0x0B,
/** Set then report an endpoint's synchronization frame */ /** Set then report an endpoint's synchronization frame */
LIBUSB_REQUEST_SYNCH_FRAME = 0x0C, LIBUSB_REQUEST_SYNCH_FRAME = 0x0C
}; };
/** \ingroup misc /** \ingroup misc
* Request type bits of the * Request type bits of the
* \ref libusb_control_setup::bmRequestType "bmRequestType" field in contro l * \ref libusb_control_setup::bmRequestType "bmRequestType" field in contro l
* transfers. */ * transfers. */
enum libusb_request_type { enum libusb_request_type {
/** Standard */ /** Standard */
LIBUSB_REQUEST_TYPE_STANDARD = (0x00 << 5), LIBUSB_REQUEST_TYPE_STANDARD = (0x00 << 5),
/** Class */ /** Class */
LIBUSB_REQUEST_TYPE_CLASS = (0x01 << 5), LIBUSB_REQUEST_TYPE_CLASS = (0x01 << 5),
/** Vendor */ /** Vendor */
LIBUSB_REQUEST_TYPE_VENDOR = (0x02 << 5), LIBUSB_REQUEST_TYPE_VENDOR = (0x02 << 5),
/** Reserved */ /** Reserved */
LIBUSB_REQUEST_TYPE_RESERVED = (0x03 << 5), LIBUSB_REQUEST_TYPE_RESERVED = (0x03 << 5)
}; };
/** \ingroup misc /** \ingroup misc
* Recipient bits of the * Recipient bits of the
* \ref libusb_control_setup::bmRequestType "bmRequestType" field in contro l * \ref libusb_control_setup::bmRequestType "bmRequestType" field in contro l
* transfers. Values 4 through 31 are reserved. */ * transfers. Values 4 through 31 are reserved. */
enum libusb_request_recipient { enum libusb_request_recipient {
/** Device */ /** Device */
LIBUSB_RECIPIENT_DEVICE = 0x00, LIBUSB_RECIPIENT_DEVICE = 0x00,
/** Interface */ /** Interface */
LIBUSB_RECIPIENT_INTERFACE = 0x01, LIBUSB_RECIPIENT_INTERFACE = 0x01,
/** Endpoint */ /** Endpoint */
LIBUSB_RECIPIENT_ENDPOINT = 0x02, LIBUSB_RECIPIENT_ENDPOINT = 0x02,
/** Other */ /** Other */
LIBUSB_RECIPIENT_OTHER = 0x03, LIBUSB_RECIPIENT_OTHER = 0x03
}; };
#define LIBUSB_ISO_SYNC_TYPE_MASK 0x0C #define LIBUSB_ISO_SYNC_TYPE_MASK 0x0C
/** \ingroup desc /** \ingroup desc
* Synchronization type for isochronous endpoints. Values for bits 2:3 of t he * Synchronization type for isochronous endpoints. Values for bits 2:3 of t he
* \ref libusb_endpoint_descriptor::bmAttributes "bmAttributes" field in * \ref libusb_endpoint_descriptor::bmAttributes "bmAttributes" field in
* libusb_endpoint_descriptor. * libusb_endpoint_descriptor.
*/ */
enum libusb_iso_sync_type { enum libusb_iso_sync_type {
/** No synchronization */ /** No synchronization */
LIBUSB_ISO_SYNC_TYPE_NONE = 0, LIBUSB_ISO_SYNC_TYPE_NONE = 0,
/** Asynchronous */ /** Asynchronous */
LIBUSB_ISO_SYNC_TYPE_ASYNC = 1, LIBUSB_ISO_SYNC_TYPE_ASYNC = 1,
/** Adaptive */ /** Adaptive */
LIBUSB_ISO_SYNC_TYPE_ADAPTIVE = 2, LIBUSB_ISO_SYNC_TYPE_ADAPTIVE = 2,
/** Synchronous */ /** Synchronous */
LIBUSB_ISO_SYNC_TYPE_SYNC = 3, LIBUSB_ISO_SYNC_TYPE_SYNC = 3
}; };
#define LIBUSB_ISO_USAGE_TYPE_MASK 0x30 #define LIBUSB_ISO_USAGE_TYPE_MASK 0x30
/** \ingroup desc /** \ingroup desc
* Usage type for isochronous endpoints. Values for bits 4:5 of the * Usage type for isochronous endpoints. Values for bits 4:5 of the
* \ref libusb_endpoint_descriptor::bmAttributes "bmAttributes" field in * \ref libusb_endpoint_descriptor::bmAttributes "bmAttributes" field in
* libusb_endpoint_descriptor. * libusb_endpoint_descriptor.
*/ */
enum libusb_iso_usage_type { enum libusb_iso_usage_type {
/** Data endpoint */ /** Data endpoint */
LIBUSB_ISO_USAGE_TYPE_DATA = 0, LIBUSB_ISO_USAGE_TYPE_DATA = 0,
/** Feedback endpoint */ /** Feedback endpoint */
LIBUSB_ISO_USAGE_TYPE_FEEDBACK = 1, LIBUSB_ISO_USAGE_TYPE_FEEDBACK = 1,
/** Implicit feedback Data endpoint */ /** Implicit feedback Data endpoint */
LIBUSB_ISO_USAGE_TYPE_IMPLICIT = 2, LIBUSB_ISO_USAGE_TYPE_IMPLICIT = 2
}; };
/** \ingroup desc /** \ingroup desc
* A structure representing the standard USB device descriptor. This * A structure representing the standard USB device descriptor. This
* descriptor is documented in section 9.6.1 of the USB 2.0 specification. * descriptor is documented in section 9.6.1 of the USB 2.0 specification.
* All multiple-byte fields are represented in host-endian format. * All multiple-byte fields are represented in host-endian format.
*/ */
struct libusb_device_descriptor { struct libusb_device_descriptor {
/** Size of this descriptor (in bytes) */ /** Size of this descriptor (in bytes) */
uint8_t bLength; uint8_t bLength;
skipping to change at line 631 skipping to change at line 631
/** System call interrupted (perhaps due to signal) */ /** System call interrupted (perhaps due to signal) */
LIBUSB_ERROR_INTERRUPTED = -10, LIBUSB_ERROR_INTERRUPTED = -10,
/** Insufficient memory */ /** Insufficient memory */
LIBUSB_ERROR_NO_MEM = -11, LIBUSB_ERROR_NO_MEM = -11,
/** Operation not supported or unimplemented on this platform */ /** Operation not supported or unimplemented on this platform */
LIBUSB_ERROR_NOT_SUPPORTED = -12, LIBUSB_ERROR_NOT_SUPPORTED = -12,
/** Other error */ /** Other error */
LIBUSB_ERROR_OTHER = -99, LIBUSB_ERROR_OTHER = -99
}; };
/** \ingroup asyncio /** \ingroup asyncio
* Transfer status codes */ * Transfer status codes */
enum libusb_transfer_status { enum libusb_transfer_status {
/** Transfer completed without error. Note that this does not indica te /** Transfer completed without error. Note that this does not indica te
* that the entire amount of requested data was transferred. */ * that the entire amount of requested data was transferred. */
LIBUSB_TRANSFER_COMPLETED, LIBUSB_TRANSFER_COMPLETED,
/** Transfer failed */ /** Transfer failed */
skipping to change at line 658 skipping to change at line 658
LIBUSB_TRANSFER_CANCELLED, LIBUSB_TRANSFER_CANCELLED,
/** For bulk/interrupt endpoints: halt condition detected (endpoint /** For bulk/interrupt endpoints: halt condition detected (endpoint
* stalled). For control endpoints: control request not supported. * / * stalled). For control endpoints: control request not supported. * /
LIBUSB_TRANSFER_STALL, LIBUSB_TRANSFER_STALL,
/** Device was disconnected */ /** Device was disconnected */
LIBUSB_TRANSFER_NO_DEVICE, LIBUSB_TRANSFER_NO_DEVICE,
/** Device sent more data than requested */ /** Device sent more data than requested */
LIBUSB_TRANSFER_OVERFLOW, LIBUSB_TRANSFER_OVERFLOW
}; };
/** \ingroup asyncio /** \ingroup asyncio
* libusb_transfer.flags values */ * libusb_transfer.flags values */
enum libusb_transfer_flags { enum libusb_transfer_flags {
/** Report short frames as errors */ /** Report short frames as errors */
LIBUSB_TRANSFER_SHORT_NOT_OK = 1<<0, LIBUSB_TRANSFER_SHORT_NOT_OK = 1<<0,
/** Automatically free() transfer buffer during libusb_free_transfer () */ /** Automatically free() transfer buffer during libusb_free_transfer () */
LIBUSB_TRANSFER_FREE_BUFFER = 1<<1, LIBUSB_TRANSFER_FREE_BUFFER = 1<<1,
/** Automatically call libusb_free_transfer() after callback returns . /** Automatically call libusb_free_transfer() after callback returns .
* If this flag is set, it is illegal to call libusb_free_transfer() * If this flag is set, it is illegal to call libusb_free_transfer()
* from your transfer callback, as this will result in a double-free * from your transfer callback, as this will result in a double-free
* when this flag is acted upon. */ * when this flag is acted upon. */
LIBUSB_TRANSFER_FREE_TRANSFER = 1<<2, LIBUSB_TRANSFER_FREE_TRANSFER = 1<<2
}; };
/** \ingroup asyncio /** \ingroup asyncio
* Isochronous packet descriptor. */ * Isochronous packet descriptor. */
struct libusb_iso_packet_descriptor { struct libusb_iso_packet_descriptor {
/** Length of data to request in this packet */ /** Length of data to request in this packet */
unsigned int length; unsigned int length;
/** Amount of data that was actually transferred */ /** Amount of data that was actually transferred */
unsigned int actual_length; unsigned int actual_length;
 End of changes. 12 change blocks. 
12 lines changed or deleted 12 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/