Struttura DI MAPPING (usb.h)
La struttura ODBC viene usata dai driver client USB per descrivere i blocchi di richiesta USB (URB) che inviano richieste allo stack di driver USB. La struttura URB definisce un formato per tutti i comandi possibili che possono essere inviati a un dispositivo USB.
Sintassi
typedef struct _URB {
union {
#if ...
_URB_HEADER UrbHeader;
#else
struct _URB_HEADER UrbHeader;
#endif
#if ...
_URB_SELECT_INTERFACE UrbSelectInterface;
#else
struct _URB_SELECT_INTERFACE UrbSelectInterface;
#endif
#if ...
_URB_SELECT_CONFIGURATION UrbSelectConfiguration;
#else
struct _URB_SELECT_CONFIGURATION UrbSelectConfiguration;
#endif
#if ...
_URB_PIPE_REQUEST UrbPipeRequest;
#else
struct _URB_PIPE_REQUEST UrbPipeRequest;
#endif
#if ...
_URB_FRAME_LENGTH_CONTROL UrbFrameLengthControl;
#else
struct _URB_FRAME_LENGTH_CONTROL UrbFrameLengthControl;
#endif
#if ...
_URB_GET_FRAME_LENGTH UrbGetFrameLength;
#else
struct _URB_GET_FRAME_LENGTH UrbGetFrameLength;
#endif
#if ...
_URB_SET_FRAME_LENGTH UrbSetFrameLength;
#else
struct _URB_SET_FRAME_LENGTH UrbSetFrameLength;
#endif
#if ...
_URB_GET_CURRENT_FRAME_NUMBER UrbGetCurrentFrameNumber;
#else
struct _URB_GET_CURRENT_FRAME_NUMBER UrbGetCurrentFrameNumber;
#endif
#if ...
_URB_CONTROL_TRANSFER UrbControlTransfer;
#else
struct _URB_CONTROL_TRANSFER UrbControlTransfer;
#endif
#if ...
_URB_CONTROL_TRANSFER_EX UrbControlTransferEx;
#else
struct _URB_CONTROL_TRANSFER_EX UrbControlTransferEx;
#endif
#if ...
_URB_BULK_OR_INTERRUPT_TRANSFER UrbBulkOrInterruptTransfer;
#else
struct _URB_BULK_OR_INTERRUPT_TRANSFER UrbBulkOrInterruptTransfer;
#endif
#if ...
_URB_ISOCH_TRANSFER UrbIsochronousTransfer;
#else
struct _URB_ISOCH_TRANSFER UrbIsochronousTransfer;
#endif
#if ...
_URB_CONTROL_DESCRIPTOR_REQUEST UrbControlDescriptorRequest;
#else
struct _URB_CONTROL_DESCRIPTOR_REQUEST UrbControlDescriptorRequest;
#endif
#if ...
_URB_CONTROL_GET_STATUS_REQUEST UrbControlGetStatusRequest;
#else
struct _URB_CONTROL_GET_STATUS_REQUEST UrbControlGetStatusRequest;
#endif
#if ...
_URB_CONTROL_FEATURE_REQUEST UrbControlFeatureRequest;
#else
struct _URB_CONTROL_FEATURE_REQUEST UrbControlFeatureRequest;
#endif
#if ...
_URB_CONTROL_VENDOR_OR_CLASS_REQUEST UrbControlVendorClassRequest;
#else
struct _URB_CONTROL_VENDOR_OR_CLASS_REQUEST UrbControlVendorClassRequest;
#endif
#if ...
_URB_CONTROL_GET_INTERFACE_REQUEST UrbControlGetInterfaceRequest;
#else
struct _URB_CONTROL_GET_INTERFACE_REQUEST UrbControlGetInterfaceRequest;
#endif
#if ...
_URB_CONTROL_GET_CONFIGURATION_REQUEST UrbControlGetConfigurationRequest;
#else
struct _URB_CONTROL_GET_CONFIGURATION_REQUEST UrbControlGetConfigurationRequest;
#endif
#if ...
_URB_OS_FEATURE_DESCRIPTOR_REQUEST UrbOSFeatureDescriptorRequest;
#else
struct _URB_OS_FEATURE_DESCRIPTOR_REQUEST UrbOSFeatureDescriptorRequest;
#endif
#if ...
_URB_OPEN_STATIC_STREAMS UrbOpenStaticStreams;
#else
struct _URB_OPEN_STATIC_STREAMS UrbOpenStaticStreams;
#endif
#if ...
_URB_GET_ISOCH_PIPE_TRANSFER_PATH_DELAYS UrbGetIsochPipeTransferPathDelays;
#else
struct _URB_GET_ISOCH_PIPE_TRANSFER_PATH_DELAYS UrbGetIsochPipeTransferPathDelays;
#endif
};
} URB, *PURB;
Members
UrbHeader
Fornisce informazioni di base sulla richiesta inviata al driver del controller host. Per altre informazioni, vedere _URB_HEADER.
UrbSelectInterface
Definisce il formato di un comando di interfaccia seleziona per un dispositivo USB. Per altre informazioni, vedere _URB_SELECT_INTERFACE.
UrbSelectConfiguration
Definisce il formato di un comando di configurazione seleziona per un dispositivo USB. Per altre informazioni, vedere _URB_SELECT_CONFIGURATION.
UrbPipeRequest
Definisce il formato per un comando per una pipe in un endpoint USB. Per altre informazioni, vedere _URB_PIPE_REQUEST.
UrbFrameLengthControl
Deprecato nei sistemi operativi Windows 2000 e versioni successive e non è supportato da Microsoft. Non usare.
UrbGetFrameLength
Deprecato nei sistemi operativi Windows 2000 e versioni successive e non è supportato da Microsoft. Non usare.
UrbSetFrameLength
Deprecato nei sistemi operativi Windows 2000 e versioni successive e non è supportato da Microsoft. Non usare.
UrbGetCurrentFrameNumber
Definisce il formato per un comando per ottenere il numero di frame corrente in un bus USB. Per altre informazioni, vedere _URB_GET_CURRENT_FRAME_NUMBER.
UrbControlTransfer
Definisce il formato per un comando per trasmettere o ricevere dati in una pipe di controllo. Per altre informazioni, vedere _URB_CONTROL_TRANSFER.
UrbControlTransferEx
Definisce il formato per un comando per trasmettere o ricevere dati in una pipe di controllo. Per altre informazioni, vedere _URB_CONTROL_TRANSFER_EX.
Definisce il formato per un comando per trasmettere o ricevere dati in una pipe di controllo.
UrbBulkOrInterruptTransfer
Definisce il formato per un comando per trasmettere o ricevere dati in una pipe bulk o per ricevere dati da una pipe di interruzione. Per altre informazioni, vedere _URB_BULK_OR_INTERRUPT_TRANSFER.
UrbIsochronousTransfer
Definisce il formato di un trasferimento isochronoo a un dispositivo USB. Per altre informazioni, vedere _URB_ISOCH_TRANSFER.
UrbControlDescriptorRequest
Definisce il formato per un comando per recuperare o impostare descrittori in un dispositivo USB. Per altre informazioni, vedere _URB_CONTROL_DESCRIPTOR_REQUEST.
UrbControlGetStatusRequest
Definisce il formato per un comando per ottenere lo stato da un dispositivo, un'interfaccia o un endpoint. Per altre informazioni, vedere _URB_CONTROL_GET_STATUS_REQUEST.
UrbControlFeatureRequest
Definisce il formato per un comando per impostare o cancellare le funzionalità definite da USB in un dispositivo, un'interfaccia o un endpoint. Per altre informazioni, vedere _URB_CONTROL_FEATURE_REQUEST.
UrbControlVendorClassRequest
Definisce il formato per un comando da inviare o ricevere una richiesta specifica del fornitore o della classe in un dispositivo, un'interfaccia, un endpoint o un'altra destinazione definita dal dispositivo. Per altre informazioni, vedere _URB_CONTROL_VENDOR_OR_CLASS_REQUEST.
UrbControlGetInterfaceRequest
Definisce il formato per un comando per ottenere l'impostazione dell'interfaccia alternativa corrente per un'interfaccia selezionata. Per altre informazioni, vedere _URB_CONTROL_GET_INTERFACE_REQUEST.
UrbControlGetConfigurationRequest
Definisce il formato per un comando per ottenere la configurazione corrente per un dispositivo. Per altre informazioni, vedere _URB_CONTROL_GET_CONFIGURATION_REQUEST.
UrbOSFeatureDescriptorRequest
Definisce il formato per un comando per richiedere un descrittore del sistema operativo Microsoft. Per altre informazioni, vedere _URB_OS_FEATURE_DESCRIPTOR_REQUEST.
UrbOpenStaticStreams
Definisce il formato per un comando per aprire i flussi in un endpoint bulk di un dispositivo USB 3.0. Per altre informazioni, vedere _URB_OPEN_STATIC_STREAMSe Come aprire e chiudere i flussi statici in un endpoint bulk USB.
UrbGetIsochPipeTransferPathDelays
Definisce il formato per un comando per recuperare ritardi associati alla programmazione di trasferimento isochronous nel controller host e al completamento del trasferimento in modo che il driver client possa garantire che il dispositivo ottenga i pacchetti isochronous in tempo. Per altre informazioni, vedere _URB_GET_ISOCH_PIPE_TRANSFER_PATH_DELAYS.
Commenti
Per informazioni sui codici di funzione da impostare in ogni struttura, vedere _URB_HEADER.
Requisiti
Requisito | Valore |
---|---|
Intestazione | usb.h (include Usb.h) |