USB_BUS_INTERFACE_USBDI_V2構造体 (usbbusif.h)
USB_BUS_INTERFACE_USBDI_V2 構造体は、USB クライアントが IRP を割り当てずにハブ ドライバーを直接呼び出せるように、USB ハブ ドライバーによって提供されます。
構文
typedef struct _USB_BUS_INTERFACE_USBDI_V2 {
USHORT Size;
USHORT Version;
PVOID BusContext;
PINTERFACE_REFERENCE InterfaceReference;
PINTERFACE_DEREFERENCE InterfaceDereference;
PUSB_BUSIFFN_GETUSBDI_VERSION GetUSBDIVersion;
PUSB_BUSIFFN_QUERY_BUS_TIME QueryBusTime;
PUSB_BUSIFFN_SUBMIT_ISO_OUT_URB SubmitIsoOutUrb;
PUSB_BUSIFFN_QUERY_BUS_INFORMATION QueryBusInformation;
PUSB_BUSIFFN_IS_DEVICE_HIGH_SPEED IsDeviceHighSpeed;
PUSB_BUSIFFN_ENUM_LOG_ENTRY EnumLogEntry;
} USB_BUS_INTERFACE_USBDI_V2, *PUSB_BUS_INTERFACE_USBDI_V2;
メンバーズ
Size
インターフェイス ポインターを保持するバッファーのサイズをバイト単位で指定します。
Version
入力時にインターフェイスのバージョンを示します。 このメンバーが取得できる値は次のとおりです。
価値 | 意味 |
---|---|
USB_BUSIF_USBDI_VERSION_0 | インターフェイスのバージョン 0。 |
USB_BUSIF_USBDI_VERSION_1 | インターフェイスのバージョン 1。 |
USB_BUSIF_USBDI_VERSION_2 | インターフェイスのバージョン 2。 |
USB_BUSIF_USBDI_VERSION_3 | インターフェイスのバージョン 3。 |
BusContext
USB バスと、このインターフェイスを公開する USB バス ドライバーについて説明する情報が含まれています。 これは、呼び出し元がインターフェイス ルーチンに渡す必要がある不透明なエンティティです。
InterfaceReference
このインターフェイスへの参照の数をインクリメントするルーチンへのポインター。 このルーチンの詳細については、InterfaceReferenceを参照してください。
InterfaceDereference
このインターフェイスへの参照の数をデクリメントするルーチンへのポインター。 このルーチンの詳細については、「InterfaceDereference」を参照してください。
GetUSBDIVersion
USB インターフェイスのバージョン番号、インターフェイスを定義する USB 仕様のバージョン番号、およびホスト コントローラーの機能情報を返すルーチンへのポインター。 このルーチンは、ポート ドライバーでサポートされている最高の USBDI インターフェイス バージョンを返します。 このルーチンの詳細については、「GetUSBDIVersion を参照してください。
QueryBusTime
現在の 32 ビット USB フレーム番号を返すルーチンへのポインター。 このルーチンは、usbd.sysによって提供される USBD_QueryBusTime 関数を置き換えます。 このルーチンの詳細については、「QueryBusTime」を参照してください。
SubmitIsoOutUrb
引っ込み思案。 使用しないでください。
QueryBusInformation
バスに関する情報を取得するルーチンへのポインター。 返される情報は、Level メンバーの値によって異なります。 レベル が 0 の場合、このルーチンはバス帯域幅情報を返します。 レベル が 1 の場合は、バス帯域幅情報とホスト コントローラーのシンボリック名が返されます。 このルーチンは、usbd.sysによって提供される USBD_QueryBusInformation 関数を置き換えます。 このルーチンの詳細については、「QueryBusInformation」を参照してください。
IsDeviceHighSpeed
USB デバイスが高速で動作しているかどうかを判断するルーチンへのポインター。 このルーチンは、USB デバイスが高速 USB 2.0 準拠デバイスで動作している場合、TRUE を返します。 それ以外の場合 FALSE を返します。 このルーチンの詳細については、「IsDeviceHighSpeed を参照してください。
EnumLogEntry
引っ込み思案。 使用しないでください。
備考
IsDeviceHighSpeed ルーチンは、デバイスが高速操作に対応しているかどうかではなく、実際に高速で動作しているかどうかを示します。
この構造体のルーチンは、IRQL >= DISPATCH_LEVELで呼び出し可能である必要があります。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Microsoft Windows XP 以降のオペレーティング システムで使用できます。 |
ヘッダー | usbbusif.h (Usbbusif.h を含む) |
関連項目
USB クライアント ドライバー の バス ドライバー インターフェイス ルーチン