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

ドライバーが TypeWdfUsbTargetDeviceSelectConfigTypeInterfacesDescriptor に設定した場合、このメンバーには、構成で選択するインターフェイスを表す USB_INTERFACE_DESCRIPTOR 構造体の配列へのドライバー指定のポインターが含まれます。

Types.Descriptor.NumInterfaceDescriptors

ドライバーが TypeWdfUsbTargetDeviceSelectConfigTypeInterfacesDescriptor に設定した場合、このメンバーには Types.Descriptor.InterfaceDescriptors が指すインターフェイス配列内にある要素の数が含まれます。

Types.Urb

Types.Urb.Urb

ドライバーが TypeWdfUsbTargetDeviceSelectConfigTypeUrb に設定した場合、このメンバーは、フレームワークがデバイスの構成に使用するドライバー初期化 URB 構造体を指定します。

Types.SingleInterface

Types.SingleInterface.NumberConfiguredPipes

ドライバーが WdfUsbTargetDeviceSelectConfigTypeSingleInterfaceType を設定する場合、フレームワークはインターフェイス用に構成されているパイプの数を提供します。

Types.SingleInterface.ConfiguredUsbInterface

ドライバーが TypeWdfUsbTargetDeviceSelectConfigTypeSingleInterface に設定した場合、フレームワークは、構成されたインターフェイスを表す USB インターフェイス オブジェクトへのハンドルを提供します。

Types.MultiInterface

Types.MultiInterface.NumberInterfaces

ドライバーが TypeWdfUsbTargetDeviceSelectConfigTypeInterfacesPairs に設定した場合、このメンバーは Types.MultiInterface.Pairs 配列内の要素の数を指定します。

Types.MultiInterface.Pairs

ドライバーが TypeWdfUsbTargetDeviceSelectConfigTypeInterfacesPairs に設定した場合、このメンバーは、選択するインターフェイスを識別する WDF_USB_INTERFACE_SETTING_PAIR 構造体の配列へのポインターを指定します。

Types.MultiInterface.NumberOfConfiguredInterfaces

ドライバーが TypeWdfUsbTargetDeviceSelectConfigTypeInterfacesPairs または 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
Header wdfusb.h (Wdfusb.h を含む)

こちらもご覧ください

USB_CONFIGURATION_DESCRIPTOR

USB_INTERFACE_DESCRIPTOR

WDF_USB_INTERFACE_SETTING_PAIR

WdfUsbTargetDeviceSelectConfigType