union (wdfusb.h) のWDF_USB_CONTROL_SETUP_PACKET
[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
Bytes.LowByte と Bytes.HiByte の値を含む 2 バイトの値。 このメンバーは、個々の低バイト値と高バイト値を指定する代わりに使用します。
Packet.wIndex
Packet.wIndex.Bytes
Packet.wIndex.Bytes.LowByte
2 バイトの要求固有値の下位バイト。 wValue の指定の詳細については、USB 仕様を参照してください。
Packet.wIndex.Bytes.HiByte
2 バイトの要求固有値の高バイト。
Packet.wIndex.Value
Bytes.LowByte と Bytes.HiByte の値を含む 2 バイトの値。 このメンバーは、個々の低バイト値と高バイト値を指定する代わりに使用します。
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 |
Header | wdfusb.h (Wdfusb.h を含む) |