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
드라이버가 Type 을 WdfUsbTargetDeviceSelectConfigTypeInterfacesDescriptor로 설정하는 경우 이 멤버는 구성에 대해 선택할 인터페이스를 나타내는 USB_INTERFACE_DESCRIPTOR 구조체 배열에 대한 드라이버 제공 포인터를 포함합니다.
Types.Descriptor.NumInterfaceDescriptors
드라이버가 Type 을 WdfUsbTargetDeviceSelectConfigTypeInterfacesDescriptor로 설정하는 경우 이 멤버는 Types.Descriptor.InterfaceDescriptors 가 가리키는 인터페이스 배열에 있는 요소의 수를 포함합니다.
Types.Urb
Types.Urb.Urb
드라이버가 Type 을 WdfUsbTargetDeviceSelectConfigTypeUrb으로 설정하는 경우 이 멤버는 프레임워크가 디바이스를 구성하는 데 사용하는 드라이버 초기화된 URB 구조를 지정합니다.
Types.SingleInterface
Types.SingleInterface.NumberConfiguredPipes
드라이버가 Type 을 WdfUsbTargetDeviceSelectConfigTypeSingleInterface로 설정하는 경우 프레임워크는 인터페이스에 대해 구성된 파이프 수를 제공합니다.
Types.SingleInterface.ConfiguredUsbInterface
드라이버가 Type 을 WdfUsbTargetDeviceSelectConfigTypeSingleInterface로 설정하는 경우 프레임워크는 구성된 인터페이스를 나타내는 USB 인터페이스 개체에 대한 핸들을 제공합니다.
Types.MultiInterface
Types.MultiInterface.NumberInterfaces
드라이버가 Type 을 WdfUsbTargetDeviceSelectConfigTypeInterfacesPairs로 설정하는 경우 이 멤버는 Types.MultiInterface.Pairs 배열에 있는 요소 수를 지정합니다.
Types.MultiInterface.Pairs
드라이버가 Type 을 WdfUsbTargetDeviceSelectConfigTypeInterfacesPairs로 설정하는 경우 이 멤버는 선택할 인터페이스를 식별하는 WDF_USB_INTERFACE_SETTING_PAIR 구조체 배열에 대한 포인터를 지정합니다.
Types.MultiInterface.NumberOfConfiguredInterfaces
드라이버가 Type 을 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 포함) |