次の方法で共有


USBFN_EVENT列挙 (usbfnbase.h)

クラス ドライバーに送信される通知を定義します。

構文

typedef enum _USBFN_EVENT {
  UsbfnEventMinimum,
  UsbfnEventAttach,
  UsbfnEventReset,
  UsbfnEventDetach,
  UsbfnEventSuspend,
  UsbfnEventResume,
  UsbfnEventSetupPacket,
  UsbfnEventConfigured,
  UsbfnEventUnConfigured,
  UsbfnEventPortType,
  UsbfnEventBusTearDown,
  UsbfnEventSetInterface,
  UsbfnEventMaximum
} USBFN_EVENT, *PUSBFN_EVENT;

定数

 
UsbfnEventMinimum
この列挙体の最小値。
UsbfnEventAttach
VBUS の電源が入る。 アクションは必要ありません。
UsbfnEventReset
USBFN が USB リセットを完了しました。 以前に構成されている場合、クラス ドライバーは状態をリセットする必要があります。 転送要求は取り消されます。
UsbfnEventDetach
VBUS の電源が切れた。
以前に構成した場合、クラス ドライバーは
状態をリセットします。 転送要求は取り消されます。
通知の BusSpeed フィールドが適切に設定されます。
UsbfnEventSuspend
バス上に 3 ミリ秒の SOF パケットがありません。
クラス ドライバーがリモート ウェイク アップを発行する場合は、
ドライバーは、IOCTL_INTERNAL_USBFN_SIGNAL_REMOTE_WAKEUP または IOCTL_INTERNAL_USBFN_TRANSFER_INを使用する必要があります。
UsbfnEventResume
USBFN が中断から以前の状態に再開しました。
UsbfnEventSetupPacket
USBFN がセットアップ パケットを受信しました。
bmRequestType.Type BMREQUEST_CLASSに設定され、
bmRequestType.Recipient をBMREQUEST_TO_INTERFACEに設定
USBFN がセットアップ パケットをクラス ドライバーに転送しました
wIndex.LowByte で指定

セットアップ パケットは、次の SetupPacket フィールドで使用できます。
出来事。 コントロール転送にデータ ステージが必要ない場合は、次の操作を行います。
クラス ドライバーは次のように応答する必要があります
IOCTL_INTERNAL_USBFN_CONTROL_STATUS_HANDSHAKE_OUT.
データ ステージが必要な場合、クラス ドライバーは次のように応答する必要があります。
1 つ以上の IOCTL_INTERNAL_USBFN_TRANSFER_IN または IOCTL_INTERNAL_USBFN_TRANSFER_OUT、その後に
IOCTL_INTERNAL_USBFN_CONTROL_STATUS_HANDSHAKE_IN または反対の IOCTL_INTERNAL_USBFN_CONTROL_STATUS_HANDSHAKE_OUT
方向。
UsbfnEventConfigured
USBFN は、SET_CONFIGURATIONセットアップ パケットを受信しました。 移転
クラス ドライバーからの要求が許可されるようになりました。
通知の ConfigurationValue は、wValue.W に設定されます。
UsbfnEventUnConfigured
USBFN は、次のSET_CONFIGURATIONセットアップ パケットを受信しました。
wValue.W 0 に設定されます。 以前に構成した場合、クラス ドライバーは
状態をリセットします。 転送要求は取り消されます。
UsbfnEventPortType
廃止。
UsbfnEventBusTearDown
廃止。
UsbfnEventSetInterface
USBFN は、SET_INTERFACEセットアップ パケットを受信しました。 このメッセージを受信した場合
クラス ドライバーが新しいエンドポイント セットを照会する必要がある通知
インターフェイスの場合は 〗。
UsbfnEventMaximum
この列挙体の最小値。

必要条件

要件 価値
ヘッダー usbfnbase.h