A cross-platform user library to access USB devices
Data Fields
libusb_config_descriptor Struct Reference

A structure representing the standard USB configuration descriptor. More...

#include <libusb.h>

Data Fields

uint8_t bLength
 Size of this descriptor (in bytes)
 
uint8_t bDescriptorType
 Descriptor type. More...
 
uint16_t wTotalLength
 Total length of data returned for this configuration.
 
uint8_t bNumInterfaces
 Number of interfaces supported by this configuration.
 
uint8_t bConfigurationValue
 Identifier value for this configuration.
 
uint8_t iConfiguration
 Index of string descriptor describing this configuration.
 
uint8_t bmAttributes
 Configuration characteristics.
 
uint8_t MaxPower
 Maximum power consumption of the USB device from this bus in this configuration when the device is fully operation. More...
 
const struct libusb_interfaceinterface
 Array of interfaces supported by this configuration. More...
 
const unsigned char * extra
 Extra descriptors. More...
 
int extra_length
 Length of the extra descriptors, in bytes. More...
 

Detailed Description

A structure representing the standard USB configuration descriptor.

This descriptor is documented in section 9.6.3 of the USB 3.0 specification. All multiple-byte fields are represented in host-endian format.

Field Documentation

uint8_t libusb_config_descriptor::bDescriptorType

Descriptor type.

Will have value libusb_descriptor_type::LIBUSB_DT_CONFIG LIBUSB_DT_CONFIG in this context.

uint8_t libusb_config_descriptor::MaxPower

Maximum power consumption of the USB device from this bus in this configuration when the device is fully operation.

Expressed in units of 2 mA when the device is operating in high-speed mode and in units of 8 mA when the device is operating in super-speed mode.

const struct libusb_interface* libusb_config_descriptor::interface

Array of interfaces supported by this configuration.

The length of this array is determined by the bNumInterfaces field.

const unsigned char* libusb_config_descriptor::extra

Extra descriptors.

If libusb encounters unknown configuration descriptors, it will store them here, should you wish to parse them.

int libusb_config_descriptor::extra_length

Length of the extra descriptors, in bytes.


The documentation for this struct was generated from the following file: