USB_BUS_INTERFACE_USBDI_V0構造体 (usbbusif.h)
USB_BUS_INTERFACE_USBDI_V0構造は、USB クライアントが IRP を割り当てずにハブ ドライバーに直接呼び出せるように、USB ハブ ドライバーによって提供されます。
構文
typedef struct _USB_BUS_INTERFACE_USBDI_V0 {
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;
} USB_BUS_INTERFACE_USBDI_V0, *PUSB_BUS_INTERFACE_USBDI_V0;
メンバー
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 メンバーの値によって異なります。 Level が 0 の場合、このルーチンはバス帯域幅情報を返します。 Level が 1 の場合は、バス帯域幅情報とホスト コントローラーのシンボリック名が返されます。 このルーチンは、usbd.sys によって提供される USBD_QueryBusInformation 関数を置き換えます。 このルーチンの詳細については、「 QueryBusInformation」を参照してください。
注釈
これらのインターフェイスに対してクエリを実行する方法については、「 USB インターフェイスのクエリ」を参照してください。 この構造体のルーチンの呼び出し元は、IRQL <= DISPATCH_LEVELで実行できます。
要件
要件 | 値 |
---|---|
Header | usbbusif.h (Usbbusif.h を含む) |