structure WDF_USB_DEVICE_SELECT_CONFIG_PARAMS (wdfusb.h)

[S’applique à KMDF et UMDF]

La structure WDF_USB_DEVICE_SELECT_CONFIG_PARAMS spécifie les paramètres de configuration du périphérique USB.

Syntaxe

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;

Membres

Size

Taille, en octets, de cette structure.

Type

Valeur de type WdfUsbTargetDeviceSelectConfigType qui spécifie le type de configuration sélectionné ou indique que la configuration actuelle est en cours de configuration.

Types

Types.Descriptor

Types.Descriptor.ConfigurationDescriptor

Si le pilote définit le membre Type sur WdfUsbTargetDeviceSelectConfigTypeInterfacesDescriptor, ce membre contient un pointeur fourni par le pilote vers une structure de USB_CONFIGURATION_DESCRIPTOR qui spécifie un descripteur de configuration. Si ce pointeur a la valeur NULL, l’infrastructure utilise la première configuration de l’appareil. Pour plus d’informations sur la sélection d’une configuration USB, consultez la section Remarques de WdfUsbTargetDeviceSelectConfig.

Types.Descriptor.InterfaceDescriptors

Si le pilote définit Type sur WdfUsbTargetDeviceSelectConfigTypeInterfacesDescriptor, ce membre contient un pointeur fourni par le pilote vers un tableau de structures USB_INTERFACE_DESCRIPTOR qui représentent les interfaces à sélectionner pour la configuration.

Types.Descriptor.NumInterfaceDescriptors

Si le pilote définit Type sur WdfUsbTargetDeviceSelectConfigTypeInterfacesDescriptor, ce membre contient le nombre d’éléments qui se trouvent dans le tableau d’interface vers lequel Types.Descriptor.InterfaceDescriptors pointe.

Types.Urb

Types.Urb.Urb

Si le pilote définit Type sur WdfUsbTargetDeviceSelectConfigTypeUrb, ce membre spécifie une structure URB initialisée par le pilote que l’infrastructure utilise pour configurer l’appareil.

Types.SingleInterface

Types.SingleInterface.NumberConfiguredPipes

Si le pilote définit Type sur WdfUsbTargetDeviceSelectConfigTypeSingleInterface, l’infrastructure fournit le nombre de canaux configurés pour l’interface.

Types.SingleInterface.ConfiguredUsbInterface

Si le pilote définit Type sur WdfUsbTargetDeviceSelectConfigTypeSingleInterface, l’infrastructure fournit un handle à un objet d’interface USB qui représente l’interface configurée.

Types.MultiInterface

Types.MultiInterface.NumberInterfaces

Si le pilote définit Type sur WdfUsbTargetDeviceSelectConfigTypeInterfacesPairs, ce membre spécifie le nombre d’éléments qui se trouvent dans le tableau Types.MultiInterface.Pairs .

Types.MultiInterface.Pairs

Si le pilote définit Type sur WdfUsbTargetDeviceSelectConfigTypeInterfacesPairs, ce membre spécifie un pointeur vers un tableau de structures WDF_USB_INTERFACE_SETTING_PAIR qui identifient les interfaces à sélectionner.

Types.MultiInterface.NumberOfConfiguredInterfaces

Si le pilote définit Type sur WdfUsbTargetDeviceSelectConfigTypeInterfacesPairs ou WdfUsbTargetDeviceSelectConfigTypeMultiInterface, l’infrastructure fournit le nombre d’interfaces configurées pour l’appareil.

Remarques

La structure WDF_USB_DEVICE_SELECT_CONFIG_PARAMS est utilisée comme entrée dans WdfUsbTargetDeviceSelectConfig.

Pour initialiser une structure WDF_USB_DEVICE_SELECT_CONFIG_PARAMS , utilisez l’une des fonctions suivantes :

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

Si le pilote définit le membre Type sur WdfUsbTargetDeviceSelectConfigTypeInterfacesDescriptor, il peut modifier la configuration du périphérique USB. Toutes les autres valeurs utilisent la configuration actuelle du périphérique USB.

Configuration requise

Condition requise Valeur
Version KMDF minimale 1.0
Version UMDF minimale 2.0
En-tête wdfusb.h (inclure Wdfusb.h)

Voir aussi

USB_CONFIGURATION_DESCRIPTOR

USB_INTERFACE_DESCRIPTOR

WDF_USB_INTERFACE_SETTING_PAIR

WdfUsbTargetDeviceSelectConfigType