libusb_interface_descriptor

A structure representing the standard USB interface descriptor. This descriptor is documented in section 9.6.5 of the USB 3.0 specification. All multiple-byte fields are represented in host-endian format.

Members

Variables

bAlternateSetting
ubyte bAlternateSetting;

Value used to select this alternate setting for this interface

bDescriptorType
ubyte bDescriptorType;

Descriptor type. Will have value * \ref libusb_descriptor_type::LIBUSB_DT_INTERFACE LIBUSB_DT_INTERFACE * in this context.

bInterfaceClass
ubyte bInterfaceClass;

USB-IF class code for this interface. See \ref libusb_class_code.

bInterfaceNumber
ubyte bInterfaceNumber;

Number of this interface

bInterfaceProtocol
ubyte bInterfaceProtocol;

USB-IF protocol code for this interface, qualified by the * bInterfaceClass and bInterfaceSubClass values

bInterfaceSubClass
ubyte bInterfaceSubClass;

USB-IF subclass code for this interface, qualified by the * bInterfaceClass value

bLength
ubyte bLength;

Size of this descriptor (in bytes)

bNumEndpoints
ubyte bNumEndpoints;

Number of endpoints used by this interface (excluding the control * endpoint).

endpoint
libusb_endpoint_descriptor* endpoint;

Array of endpoint descriptors. This length of this array is determined * by the bNumEndpoints field.

extra
char* extra;

Extra descriptors. If libusbx encounters unknown interface descriptors, * it will store them here, should you wish to parse them.

extra_length
int extra_length;

Length of the extra descriptors, in bytes.

iInterface
ubyte iInterface;

Index of string descriptor describing this interface

Meta