struttura USB_BUS_INTERFACE_USBDI_V2 (usbbusif.h)

La struttura USB_BUS_INTERFACE_USBDI_V2 viene fornita dal driver dell'hub USB per consentire ai client USB di effettuare chiamate dirette al driver hub senza allocare i provider di integrazione.

Sintassi

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;

Members

Size

Specifica le dimensioni in byte del buffer che contiene i puntatori di interfaccia.

Version

Indica, all'input, la versione dell'interfaccia. I valori che questo membro può accettare sono i seguenti.

Valore Significato
USB_BUSIF_USBDI_VERSION_0 Versione 0 dell'interfaccia.
USB_BUSIF_USBDI_VERSION_1 Versione 1 dell'interfaccia.
USB_BUSIF_USBDI_VERSION_2 Versione 2 dell'interfaccia.
USB_BUSIF_USBDI_VERSION_3 Versione 3 dell'interfaccia.

BusContext

Contiene informazioni che descrivono il bus USB e il driver del bus USB che espone questa interfaccia. Si tratta di un'entità opaca che il chiamante deve passare alle routine di interfaccia.

InterfaceReference

Puntatore a una routine che incrementa il numero di riferimenti a questa interfaccia. Per altre informazioni su questa routine, vedere InterfaceReference.

InterfaceDereference

Puntatore a una routine che decrementa il numero di riferimenti a questa interfaccia. Per altre informazioni su questa routine, vedere InterfaceDereference.

GetUSBDIVersion

Puntatore a una routine che restituisce il numero di versione dell'interfaccia USB, il numero di versione della specifica USB che definisce l'interfaccia, insieme alle informazioni sulle funzionalità del controller host. Questa routine restituisce la versione più recente dell'interfaccia USBDI supportata dal driver della porta. Per altre informazioni su questa routine, vedere GetUSBDIVersion.

QueryBusTime

Puntatore a una routine che restituisce il numero di frame USB a 32 bit corrente. Questa routine sostituisce la funzione USBD_QueryBusTime fornita da usbd.sys. Per altre informazioni su questa routine, vedere QueryBusTime.

SubmitIsoOutUrb

Riservato. Non usare.

QueryBusInformation

Puntatore a una routine che recupera informazioni sul bus. Le informazioni restituite dipendono dal valore del membro Level . Se Level è 0, questa routine restituisce informazioni sulla larghezza di banda del bus. Se Level è 1, restituisce le informazioni sulla larghezza di banda del bus e il nome simbolico del controller host. Questa routine sostituisce la funzione USBD_QueryBusInformation fornita da usbd.sys. Per altre informazioni su questa routine, vedere QueryBusInformation.

IsDeviceHighSpeed

Puntatore a una routine che determina se il dispositivo USB funziona ad alta velocità. Questa routine restituisce TRUE se il dispositivo USB opera a velocità elevata del dispositivo conforme a USB 2.0. Restituisce FALSE in caso contrario. Per altre informazioni su questa routine, vedere IsDeviceHighSpeed.

EnumLogEntry

Riservato. Non usare.

Commenti

La routine IsDeviceHighSpeed non indica se un dispositivo è in grado di eseguire operazioni ad alta velocità, ma se funziona effettivamente ad alta velocità.

Le routine in questa struttura devono essere chiamabili in IRQL >= DISPATCH_LEVEL.

Requisiti

   
Client minimo supportato Disponibile in Microsoft Windows XP e nei sistemi operativi successivi.
Intestazione usbbusif.h (include Usbbusif.h)

Vedi anche

Routine dell'interfaccia del driver bus per i driver client USB

Strutture USB