USB_BUS_INTERFACE_USBDI_V3 结构由 USB 中心驱动程序提供,允许 USB 客户端在不分配 IRP 的情况下直接调用中心驱动程序。
语法
typedef struct _USB_BUS_INTERFACE_USBDI_V3 {
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;
PUSB_BUSIFFN_QUERY_BUS_TIME_EX QueryBusTimeEx;
PUSB_BUSIFFN_QUERY_CONTROLLER_TYPE QueryControllerType;
} USB_BUS_INTERFACE_USBDI_V3, *PUSB_BUS_INTERFACE_USBDI_V3;
成员
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
指向检索有关总线信息的例程的指针。 返回的信息取决于 级别 成员的值。 如果 级别 为 0,则此例程返回总线带宽信息。 如果 级别 为 1,它将返回总线带宽信息和主机控制器的符号名称。 此例程替换 usbd.sys提供的 USBD_QueryBusInformation 函数。 有关此例程的详细信息,请参阅 QueryBusInformation。
IsDeviceHighSpeed
指向确定 USB 设备是否以高速运行的例程的指针。 如果 USB 设备以高速 USB 2.0 兼容设备运行,则此例程将返回 true。 否则返回 FALSE。 有关此例程的详细信息,请参阅 IsDeviceHighSpeed。
EnumLogEntry
保留。 请勿使用。
QueryBusTimeEx
未实现此例程。
QueryControllerType
指向一个例程的指针,该例程返回有关 USB 设备所附加到的 USB 主机控制器的信息。 有关此例程的详细信息,请参阅 QueryControllerType。
言论
IsDeviceHighSpeed 例程并不指示设备是否能够高速作,但是否实际上是以高速运行。
此结构中的例程必须在 IRQL >= DISPATCH_LEVEL调用。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows Vista 和更高版本的作系统。 |
标头 | usbbusif.h (包括 Usbbusif.h) |
另请参阅
USB 客户端驱动程序 的 总线驱动程序接口例程