WUDF_INTERRUPT_CONFIG struttura (wudfinterrupt.h)
[Avviso: UMDF 2 è la versione più recente di UMDF e sostituisce UMDF 1. Tutti i nuovi driver UMDF devono essere scritti usando UMDF 2. Nessuna nuova funzionalità viene aggiunta a UMDF 1 ed è disponibile un supporto limitato per UMDF 1 nelle versioni più recenti di Windows 10. I driver di Windows universali devono usare UMDF 2. Per altre informazioni, vedere Introduzione con UMDF.]
La struttura WUDF_INTERRUPT_CONFIG contiene informazioni di configurazione per un interruzione del dispositivo.
Sintassi
typedef struct _WUDF_INTERRUPT_CONFIG {
ULONG Size;
WDF_TRI_STATE ShareVector;
BOOLEAN AutomaticSerialization;
PFN_WUDF_INTERRUPT_ISR OnInterruptIsr;
PFN_WUDF_INTERRUPT_ENABLE OnInterruptEnable;
PFN_WUDF_INTERRUPT_DISABLE OnInterruptDisable;
PFN_WUDF_INTERRUPT_WORKITEM OnInterruptWorkItem;
PCM_PARTIAL_RESOURCE_DESCRIPTOR InterruptRaw;
PCM_PARTIAL_RESOURCE_DESCRIPTOR InterruptTranslated;
} WUDF_INTERRUPT_CONFIG, *PWUDF_INTERRUPT_CONFIG;
Members
Size
Dimensione, in byte, della struttura.
ShareVector
Valore WDF_TRI_STATE tipizzato. Se questo valore è WdfTrue, il vettore di interruzione può essere condiviso. Se il valore è WdfFalse, il vettore di interruzione non può essere condiviso. Se il valore è WdfDefault e l'interruzione viene attivata a livello, il gestore di Plug and Play usa il valore del driver del bus. Se il valore è WdfDefault e l'interruzione non viene attivata a livello, il vettore di interruzione non può essere condiviso.
AutomaticSerialization
Valore booleano che, se TRUE, indica che il framework sincronizza l'esecuzione della funzione di callback onInterruptWorkItem dell'oggetto interrupt con altre funzioni di callback che usano la funzionalità di sincronizzazione del callback del framework. Per ulteriori informazioni, vedere la sezione Osservazioni.
OnInterruptIsr
Puntatore alla funzione di callback onInterruptIsr del driver o NULL.
OnInterruptEnable
Puntatore alla funzione di callback OnInterruptEnable del driver o NULL.
OnInterruptDisable
Puntatore alla funzione di callback OnInterruptDisable del driver o NULL.
OnInterruptWorkItem
Puntatore alla funzione di callback OnInterruptWorkItem del driver o NULL.
InterruptRaw
Puntatore alla struttura CM_PARTIAL_RESOURCE_DESCRIPTOR che descrive le risorse non elaborate assegnate al sistema all'interruzione. Questo membro viene usato solo se l'interruzione viene creata nel callback onPrepareHardware .
InterruptTranslated
Puntatore alla struttura CM_PARTIAL_RESOURCE_DESCRIPTOR che descrive le risorse tradotte assegnate al sistema all'interruzione. Questo membro viene usato solo se l'interruzione viene creata nel callback onPrepareHardware .
Commenti
La struttura WUDF_INTERRUPT_CONFIG viene usata come input per IWDFDevice3::CreateInterrupt.
Per inizializzare una struttura WUDF_INTERRUPT_CONFIG , il driver deve prima chiamare WUDF_INTERRUPT_CONFIG_INIT e quindi compilare membri della struttura che WUDF_INTERRUPT_CONFIG_INIT non inizializza.
Prima di impostare AutomaticSerialization su TRUE, il driver deve chiamare IWDFDeviceInitialize::SetLockingConstraint con il parametro LockType impostato su WdfDeviceLevel.
Il driver deve includere Wudfwdm.h, che contiene la definizione di CM_PARTIAL_RESOURCE_DESCRIPTOR.
UMDF supporta interruzioni basate su riga e interruzioni basate su riga in tutti i sistemi operativi supportati dal framework. Poiché questi tipi di risorse di interruzione non sono condivisi, un driver che li usa deve impostare il membro ShareVector di questa struttura su WdfFalse o WdfUseDefault. Se il driver specifica un valore ShareVector non valido, il driver non viene avviato.
Requisiti
Requisito | Valore |
---|---|
Versione UMDF minima | 1.11 |
Intestazione | wudfinterrupt.h |