WDF_USB_INTERFACE_SELECT_SETTING_PARAMS_INIT_URB function (wdfusb.h)

[Applies to KMDF and UMDF]

The WDF_USB_INTERFACE_SELECT_SETTING_PARAMS_INIT_URB function initializes a WDF_USB_INTERFACE_SELECT_SETTING_PARAMS structure so that a driver can select a USB interface by specifying a URB.

Syntax

void WDF_USB_INTERFACE_SELECT_SETTING_PARAMS_INIT_URB(
  [out] PWDF_USB_INTERFACE_SELECT_SETTING_PARAMS Params,
  [in]  PURB                                     Urb
);

Parameters

[out] Params

A pointer to a driver-allocated WDF_USB_INTERFACE_SELECT_SETTING_PARAMS structure.

[in] Urb

A pointer to a URB structure.

Return value

None

Remarks

The WDF_USB_INTERFACE_SELECT_SETTING_PARAMS_INIT_URB function zeros the WDF_USB_INTERFACE_SELECT_SETTING_PARAMS structure and sets its Size member to the size of the structure. It also sets the Type member to WdfUsbInterfaceSelectSettingTypeUrb and sets the Types.Urb.Urb member to the value that is specified by Urb pointer.

To initialize a WDF_USB_INTERFACE_SELECT_SETTING_PARAMS structure, your driver must call one of the following functions:

Examples

The following code example initializes a URB structure and then uses the structure as input to WdfUsbInterfaceSelectSetting.

WDF_USB_INTERFACE_SELECT_SETTING_PARAMS  selectSettingParams;
URB  urb;
NTSTATUS  Status;

//
// Initialize the URB structure here.
//
...

//
// Initialize the WDF_USB_INTERFACE_SELECT_SETTING_PARAMS 
// structure and call WdfUsbInterfaceSelectSetting.
//
WDF_USB_INTERFACE_SELECT_SETTING_PARAMS_INIT_URB(
                                      &selectSettingParams,
                                      &urb
                                      );

Status = WdfUsbInterfaceSelectSetting(
                                      UsbInterface,
                                      WDF_NO_OBJECT_ATTRIBUTES,
                                      &selectSettingParams
                                      );

Requirements

Requirement Value
Target Platform Universal
Minimum KMDF version 1.0
Minimum UMDF version 2.0
Header wdfusb.h (include Wdfusb.h)

See also

URB

WDF_USB_INTERFACE_SELECT_SETTING_PARAMS

WDF_USB_INTERFACE_SELECT_SETTING_PARAMS_INIT_DESCRIPTOR

WDF_USB_INTERFACE_SELECT_SETTING_PARAMS_INIT_SETTING