структура WDF_USB_DEVICE_SELECT_CONFIG_PARAMS (wdfusb.h)

[Относится к KMDF и UMDF]

Структура WDF_USB_DEVICE_SELECT_CONFIG_PARAMS указывает параметры конфигурации USB-устройства.

Синтаксис

typedef struct _WDF_USB_DEVICE_SELECT_CONFIG_PARAMS {
  ULONG                              Size;
  WdfUsbTargetDeviceSelectConfigType Type;
  union {
    struct {
      PUSB_CONFIGURATION_DESCRIPTOR ConfigurationDescriptor;
      PUSB_INTERFACE_DESCRIPTOR     *InterfaceDescriptors;
      ULONG                         NumInterfaceDescriptors;
    } Descriptor;
    struct {
      PURB Urb;
    } Urb;
    struct {
      UCHAR           NumberConfiguredPipes;
      WDFUSBINTERFACE ConfiguredUsbInterface;
    } SingleInterface;
    struct {
      UCHAR                           NumberInterfaces;
      PWDF_USB_INTERFACE_SETTING_PAIR Pairs;
      UCHAR                           NumberOfConfiguredInterfaces;
    } MultiInterface;
  } Types;
} WDF_USB_DEVICE_SELECT_CONFIG_PARAMS, *PWDF_USB_DEVICE_SELECT_CONFIG_PARAMS;

Члены

Size

Размер данной структуры (в байтах).

Type

Значение типа WdfUsbTargetDeviceSelectConfigType, указывающее тип выбранной конфигурации или указывающее, что текущая конфигурация не настраивается.

Types

Types.Descriptor

Types.Descriptor.ConfigurationDescriptor

Если драйвер задает для элемента Type значение WdfUsbTargetDeviceSelectConfigTypeInterfacesDescriptor, этот элемент содержит предоставленный драйвером указатель на структуру USB_CONFIGURATION_DESCRIPTOR , задающую дескриптор конфигурации. Если этот указатель имеет значение NULL, платформа использует первую конфигурацию устройства. Дополнительные сведения о выборе конфигурации USB см. в разделе Примечания статьи WdfUsbTargetDeviceSelectConfig.

Types.Descriptor.InterfaceDescriptors

Если драйвер задает для параметра Типзначение WdfUsbTargetDeviceSelectConfigTypeInterfacesDescriptor, этот член содержит предоставленный драйвером указатель на массив USB_INTERFACE_DESCRIPTOR структур, представляющих интерфейсы, которые необходимо выбрать для конфигурации.

Types.Descriptor.NumInterfaceDescriptors

Если драйвер задает для параметра Type значение WdfUsbTargetDeviceSelectConfigTypeInterfacesDescriptor, этот элемент содержит количество элементов в массиве интерфейса, на который указывает Types.Descriptor.InterfaceDescriptors .

Types.Urb

Types.Urb.Urb

Если драйвер задает для параметра Типзначение WdfUsbTargetDeviceSelectConfigTypeUrb, этот член задает инициализированную драйвером структуру URB , используемую платформой для настройки устройства.

Types.SingleInterface

Types.SingleInterface.NumberConfiguredPipes

Если драйвер задает для параметра Типзначение WdfUsbTargetDeviceSelectConfigTypeSingleInterface, платформа предоставляет количество каналов, настроенных для интерфейса.

Types.SingleInterface.ConfiguredUsbInterface

Если драйвер задает для параметра Type значение WdfUsbTargetDeviceSelectConfigTypeSingleInterface, платформа предоставляет дескриптор для объекта интерфейса USB, представляющего настроенный интерфейс.

Types.MultiInterface

Types.MultiInterface.NumberInterfaces

Если драйвер задает для параметра Типзначение WdfUsbTargetDeviceSelectConfigTypeInterfacesPairs, этот член задает количество элементов в массиве Types.MultiInterface.Pairs .

Types.MultiInterface.Pairs

Если драйвер задает для параметра Типзначение WdfUsbTargetDeviceSelectConfigTypeInterfacesPairs, этот член указывает указатель на массив WDF_USB_INTERFACE_SETTING_PAIR структур, определяющих интерфейсы для выбора.

Types.MultiInterface.NumberOfConfiguredInterfaces

Если драйвер задает для параметра Типзначение WdfUsbTargetDeviceSelectConfigTypeInterfacesPairs или WdfUsbTargetDeviceSelectConfigTypeMultiInterface, платформа предоставляет количество интерфейсов, настроенных для устройства.

Комментарии

Структура WDF_USB_DEVICE_SELECT_CONFIG_PARAMS используется в качестве входных данных для WdfUsbTargetDeviceSelectConfig.

Чтобы инициализировать структуру WDF_USB_DEVICE_SELECT_CONFIG_PARAMS , используйте одну из следующих функций:

WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_INIT_DECONFIG

WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_INIT_SINGLE_INTERFACE

WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_INIT_MULTIPLE_INTERFACES

WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_INIT_INTERFACES_DESCRIPTORS

WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_INIT_URB

Если драйвер задает для элемента Type значение WdfUsbTargetDeviceSelectConfigTypeInterfacesDescriptor, он может изменить конфигурацию USB-устройства. Все остальные значения используют текущую конфигурацию USB-устройства.

Требования

Требование Значение
Минимальная версия KMDF 1,0
Минимальная версия UMDF 2,0
Верхняя часть wdfusb.h (включая Wdfusb.h)

См. также раздел

USB_CONFIGURATION_DESCRIPTOR

USB_INTERFACE_DESCRIPTOR

WDF_USB_INTERFACE_SETTING_PAIR

WdfUsbTargetDeviceSelectConfigType