структура USB_BUS_INTERFACE_USBDI_V1 (usbbusif.h)
Структура USB_BUS_INTERFACE_USBDI_V1 предоставляется драйвером USB-концентратора, чтобы позволить USB-клиентам выполнять прямые вызовы к драйверу концентратора без выделения ip-адресов.
Синтаксис
typedef struct _USB_BUS_INTERFACE_USBDI_V1 {
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;
} USB_BUS_INTERFACE_USBDI_V1, *PUSB_BUS_INTERFACE_USBDI_V1;
Члены
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_QueryBusTime, предоставляемую usbd.sys. Дополнительные сведения об этой подпрограмме см. в разделе QueryBusTime.
SubmitIsoOutUrb
Скрытный. Не используйте.
QueryBusInformation
Указатель на подпрограмму, которая получает сведения о шине. Возвращаемые сведения зависят от значения элемента уровня . Если уровень равен 0, эта подпрограмма возвращает сведения о пропускной способности шины. Если уровень равен 1, он возвращает сведения о пропускной способности шины и символическое имя контроллера узла. Эта подпрограмма заменяет функцию USBD_QueryBusInformation, предоставляемую usbd.sys. Дополнительные сведения об этой подпрограмме см. в QueryBusInformation.
IsDeviceHighSpeed
Указатель на подпрограмму, которая определяет, работает ли USB-устройство с высокой скоростью. Эта подпрограмма возвращает TRUE, если USB-устройство работает с высокой скоростью (устройство, совместимое с USB 2.0). В противном случае эта подпрограмма возвращает FALSE. Дополнительные сведения об этой подпрограмме см. в разделе IsDeviceHighSpeed.
Замечания
Элемент IsDeviceHighSpeed не указывает, может ли устройство работать с высокой скоростью, а скорее работает ли оно на самом деле на высокой скорости.
Подпрограммы в этой структуре должны вызываться в IRQL >= DISPATCH_LEVEL.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно в Microsoft Windows XP и более поздних операционных системах. |
заголовка | usbbusif.h (include Usbbusif.h) |
См. также
подпрограммы интерфейса драйвера шины для драйверов USB-клиента