estrutura USB_BUS_INTERFACE_USBDI_V0 (usbbusif.h)

A estrutura USB_BUS_INTERFACE_USBDI_V0 é fornecida pelo driver do hub USB para permitir que os clientes USB façam chamadas diretas para o driver do hub sem alocar IRPs.

Sintaxe

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;

Membros

Size

Especifica o tamanho em bytes do buffer que contém os ponteiros da interface.

Version

Indica, na entrada, a versão da interface. Esse membro deve ter um dos seguintes valores:

Valor Significado
USB_BUSIF_USBDI_VERSION_0 Versão 0 da interface.
USB_BUSIF_USBDI_VERSION_1 Versão 1 da interface.
USB_BUSIF_USBDI_VERSION_2 Versão 2 da interface.
USB_BUSIF_USBDI_VERSION_3 Versão 3 da interface.

BusContext

Contém informações que descrevem o barramento USB e o driver de barramento USB que expõe essa interface. Essa é uma entidade opaca que o chamador deve passar para as rotinas de interface.

InterfaceReference

Ponteiro para uma rotina que incrementa o número de referências a essa interface. Para obter mais informações sobre essa rotina, consulte InterfaceReference.

InterfaceDereference

Ponteiro para uma rotina que diminui o número de referências a essa interface. Para obter mais informações sobre essa rotina, consulte InterfaceDereference.

GetUSBDIVersion

Ponteiro para uma rotina que retorna o número de versão da interface USB, o número de versão da especificação USB que define a interface, juntamente com as informações de funcionalidades do controlador de host. Essa rotina retorna a versão mais alta da interface USBDI compatível com o driver de porta. Para obter mais informações sobre essa rotina, consulte GetUSBDIVersion.

QueryBusTime

Ponteiro para uma rotina que retorna o número de quadro USB atual de 32 bits. Essa rotina substitui a função USBD_QueryBusTime fornecida por usbd.sys. Para obter mais informações sobre essa rotina, consulte QueryBusTime.

SubmitIsoOutUrb

Reservado. Não use.

QueryBusInformation

Ponteiro para uma rotina que retorna informações sobre o barramento. As informações retornadas dependem do valor do membro Level . Se Level for 0, essa rotina retornará informações de largura de banda do barramento. Se Level for 1, ele retornará informações de largura de banda do barramento e o nome simbólico do controlador de host. Essa rotina substitui a função USBD_QueryBusInformation fornecida por usbd.sys. Para obter mais informações sobre essa rotina, consulte QueryBusInformation.

Comentários

Para obter informações sobre como consultar essas interfaces, consulte Consultando interfaces USB. Os chamadores das rotinas nessa estrutura podem estar em execução em IRQL <= DISPATCH_LEVEL.

Requisitos

Requisito Valor
Cabeçalho usbbusif.h (inclua Usbbusif.h)

Confira também

Rotinas de interface do motorista de barramento para drivers cliente USB

Estruturas USB