объединение WDF_USB_CONTROL_SETUP_PACKET (wdfusb.h)
[Относится к KMDF и UMDF]
Структура WDF_USB_CONTROL_SETUP_PACKET описывает пакет настройки для передачи элементов управления ПО USB.
Синтаксис
typedef union _WDF_USB_CONTROL_SETUP_PACKET {
struct {
union {
struct {
BYTE Recipient : 2;
BYTE Reserved : 3;
BYTE Type : 2;
BYTE Dir : 1;
} Request;
BYTE Byte;
} bm;
BYTE bRequest;
union {
struct {
BYTE LowByte;
BYTE HiByte;
} Bytes;
USHORT Value;
} wValue;
union {
struct {
BYTE LowByte;
BYTE HiByte;
} Bytes;
USHORT Value;
} wIndex;
USHORT wLength;
} Packet;
struct {
BYTE Bytes[8];
} Generic;
} WDF_USB_CONTROL_SETUP_PACKET, *PWDF_USB_CONTROL_SETUP_PACKET;
Члены
Packet
Packet.bm
Packet.bm.Request
Packet.bm.Request.Recipient
Битовое поле, заданное WDF_USB_BMREQUEST_RECIPIENT типизированным значением.
Packet.bm.Request.Reserved
Зарезервированное битовое поле. Не используйте этот элемент.
Packet.bm.Request.Type
Битовое поле, заданное WDF_USB_BMREQUEST_TYPE типизированным значением.
Packet.bm.Request.Dir
Битовое поле, заданное WDF_USB_BMREQUEST_DIRECTION типизированным значением.
Packet.bm.Byte
Растровое изображение размером байтов, содержащее битовые поля Request.Recipient, Request.Reserved, Request.Type и Request.Dir . Используйте этот элемент в качестве альтернативы указанию отдельных битового поля.
Packet.bRequest
Тип запроса. Константы типа запроса определены в usb100.h. Дополнительные сведения о типах запросов см. в спецификации USB.
Packet.wValue
Packet.wValue.Bytes
Packet.wValue.Bytes.LowByte
Низкий байт 2-байтового значения запроса. Дополнительные сведения об указании wValue см. в спецификации USB.
Packet.wValue.Bytes.HiByte
Высокий байт 2-байтового значения, зависящее от запроса.
Packet.wValue.Value
2-байтовое значение, содержащее значения Bytes.LowByte и Bytes.HiByte . Используйте этот элемент в качестве альтернативы указанию отдельных низкобайтовых и высокобайтовых значений.
Packet.wIndex
Packet.wIndex.Bytes
Packet.wIndex.Bytes.LowByte
Низкий байт 2-байтового значения запроса. Дополнительные сведения об указании wValue см. в спецификации USB.
Packet.wIndex.Bytes.HiByte
Высокий байт 2-байтового значения, зависящее от запроса.
Packet.wIndex.Value
2-байтовое значение, содержащее значения Bytes.LowByte и Bytes.HiByte . Используйте этот элемент в качестве альтернативы указанию отдельных низкобайтовых и высокобайтовых значений.
Packet.wLength
Количество передаваемых байтов, если применимо. Дополнительные сведения об этом значении см. в спецификации USB. Платформа задает это значение.
Generic
Generic.Bytes[8]
8-байтовое значение, представляющее весь пакет установки. Этот элемент можно использовать в качестве альтернативы указанию отдельных элементов структуры.
Комментарии
Структура WDF_USB_CONTROL_SETUP_PACKET используется в качестве входных данных для методов WdfUsbTargetDeviceSendControlTransferSynchronously и WdfUsbTargetDeviceFormatRequestForControlTransfer .
Чтобы инициализировать структуру WDF_USB_CONTROL_SETUP_PACKET , драйвер должен вызвать одну из следующих функций:
Требования
Требование | Значение |
---|---|
Минимальная версия KMDF | 1,0 |
Минимальная версия UMDF | 2,0 |
Верхняя часть | wdfusb.h (включая Wdfusb.h) |