структура WDF_USB_REQUEST_COMPLETION_PARAMS (wdfusb.h)
[Применимо к KMDF и UMDF]
Структура WDF_USB_REQUEST_COMPLETION_PARAMS содержит параметры, связанные с завершением запроса ввода-вывода для USB-устройства.
Синтаксис
typedef struct _WDF_USB_REQUEST_COMPLETION_PARAMS {
USBD_STATUS UsbdStatus;
WDF_USB_REQUEST_TYPE Type;
union {
struct {
WDFMEMORY Buffer;
USHORT LangID;
UCHAR StringIndex;
UCHAR RequiredSize;
} DeviceString;
struct {
WDFMEMORY Buffer;
WDF_USB_CONTROL_SETUP_PACKET SetupPacket;
ULONG Length;
} DeviceControlTransfer;
struct {
WDFMEMORY Buffer;
} DeviceUrb;
struct {
WDFMEMORY Buffer;
size_t Length;
size_t Offset;
} PipeWrite;
struct {
WDFMEMORY Buffer;
size_t Length;
size_t Offset;
} PipeRead;
struct {
WDFMEMORY Buffer;
} PipeUrb;
} Parameters;
} WDF_USB_REQUEST_COMPLETION_PARAMS, *PWDF_USB_REQUEST_COMPLETION_PARAMS;
Члены
UsbdStatus
USBD_STATUS типизированное значение состояния, возвращаемое целевым объектом ввода-вывода.
Type
WDF_USB_REQUEST_TYPE тип значения, идентифицирующее тип запроса.
Parameters
Parameters.DeviceString
Parameters.DeviceString.Buffer
Если драйвер вызвал WdfUsbTargetDeviceFormatRequestForString, этот член содержит предоставленный драйвером дескриптор объекта памяти, который получает строку Юникода.
Parameters.DeviceString.LangID
Если драйвер вызвал WdfUsbTargetDeviceFormatRequestForString, этот элемент содержит предоставленный драйвером идентификатор языка.
Parameters.DeviceString.StringIndex
Если драйвер вызвал WdfUsbTargetDeviceFormatRequestForString, этот член содержит предоставленный драйвером строковый индекс.
Parameters.DeviceString.RequiredSize
Если драйвер вызвал любой метод, который получает строки Юникода устройства (за исключением WdfUsbTargetDeviceFormatRequestForUrb), этот элемент содержит требуемый размер буфера, который указывает Parameters.DeviceString.Buffer .
Если драйвер называется WdfUsbTargetDeviceFormatRequestForUrb, он может получить требуемое значение размера из URB, дескриптор которого находится в Parameters.DeviceUrb.Buffer.
Parameters.DeviceControlTransfer
Parameters.DeviceControlTransfer.Buffer
Если драйвер вызвал WdfUsbTargetDeviceFormatRequestForControlTransfer, этот элемент содержит предоставленный драйвером дескриптор объекта памяти, который получает входные или выходные данные.
Parameters.DeviceControlTransfer.SetupPacket
Если драйвер вызвал WdfUsbTargetDeviceFormatRequestForControlTransfer, этот элемент содержит адрес структуры WDF_USB_CONTROL_SETUP_PACKET , предоставленной драйвером.
Parameters.DeviceControlTransfer.Length
Если драйвер вызвал любой метод, отправляющий передачу элемента управления (за исключением WdfUsbTargetDeviceFormatRequestForUrb), этот элемент содержит количество отправленных или полученных байтов.
Если драйвер с именем WdfUsbTargetDeviceFormatRequestForUrb, он может получить значение длины из URB, дескриптор которого находится в Parameters.DeviceUrb.Buffer.
Parameters.DeviceUrb
Parameters.DeviceUrb.Buffer
Если драйвер вызвал WdfUsbTargetDeviceFormatRequestForUrb, этот элемент содержит предоставленный драйвером дескриптор объекта памяти, который содержит структуру URB .
Parameters.PipeWrite
Parameters.PipeWrite.Buffer
Если драйвер вызвал WdfUsbTargetPipeFormatRequestForWrite, этот член содержит предоставленный драйвером дескриптор объекта памяти, записанного в канал.
Parameters.PipeWrite.Length
Если драйвер вызвал любой метод , который выполняет запись в канал (за исключением WdfUsbTargetDeviceFormatRequestForUrb), этот элемент содержит количество отправленных байтов.
Если драйвер с именем WdfUsbTargetDeviceFormatRequestForUrb, он может получить значение длины из URB, дескриптор которого находится в Parameters.PipeUrb.Buffer.
Parameters.PipeWrite.Offset
Если драйвер вызвал WdfUsbTargetPipeFormatRequestForWrite, этот элемент содержит предоставленное драйвером смещение буфера.
Parameters.PipeRead
Parameters.PipeRead.Buffer
Если драйвер вызвал WdfUsbTargetPipeFormatRequestForRead, этот элемент содержит предоставленный драйвером дескриптор объекта памяти, который содержит данные, считанные из канала.
Parameters.PipeRead.Length
Если драйвер вызвал любой метод, который считывает данные из канала , отправляет передачу управления (за исключением WdfUsbTargetDeviceFormatRequestForUrb), этот элемент содержит количество полученных байтов.
Если драйвер с именем WdfUsbTargetDeviceFormatRequestForUrb, он может получить значение длины из URB, дескриптор которого находится в Parameters.PipeUrb.Buffer.
Parameters.PipeRead.Offset
Если драйвер вызвал WdfUsbTargetPipeFormatRequestForRead, этот элемент содержит предоставленное драйвером смещение буфера.
Parameters.PipeUrb
Parameters.PipeUrb.Buffer
Если драйвер вызвал WdfUsbTargetPipeFormatRequestForUrb, этот элемент содержит предоставленный драйвером дескриптор объекта памяти, который содержит структуру URB .
Комментарии
Структура WDF_USB_REQUEST_COMPLETION_PARAMS является членом структуры WDF_REQUEST_COMPLETION_PARAMS .
Требования
Требование | Значение |
---|---|
Минимальная версия KMDF | 1,0 |
Минимальная версия UMDF | 2,0 |
Верхняя часть | wdfusb.h (включая Wdfusb.h) |