struttura PCEVENT_ITEM (portcls.h)
La struttura PCEVENT_ITEM viene usata per descrivere un evento supportato da un particolare filtro, pin o nodo.
Sintassi
typedef struct {
const GUID *Set;
ULONG Id;
ULONG Flags;
PCPFNEVENT_HANDLER Handler;
} PCEVENT_ITEM, *PPCEVENT_ITEM;
Membri
Set
Specifica il set di eventi. Questo membro è un puntatore a un GUID che identifica in modo univoco il set di eventi. Vedere l'elenco dei GUID del set di eventi in i set di eventi driver audio.
Id
Specifica l'ID evento. Questo membro identifica un elemento dell'evento all'interno del set di eventi. Se il set di eventi contiene N elementi, gli ID evento validi sono numeri interi compresi nell'intervallo da 0 a N-1.
Flags
Specifica il tipo di evento. Questo membro è impostato su uno dei valori seguenti:
PCEVENT_ITEM_FLAG_ENABLE
Indica che la notifica degli eventi deve essere abilitata per questo tipo di evento. Il driver deve continuare la notifica degli eventi fino a quando il client non lo disabilita in modo esplicito.
PCEVENT_ITEM_FLAG_ONESHOT
Indica che la notifica dell'evento deve essere abilitata solo per l'occorrenza successiva di questo evento. Il client non (e non deve) disabilitare l'evento dopo che si è verificato.
PCEVENT_ITEM_FLAG_BASICSUPPORT
Se il client specifica questo flag, il driver restituisce STATUS_SUCCESS se supporta l'evento e un codice di errore in caso contrario.
Handler
Puntatore alla routine del gestore eventi del driver miniport. Questo membro è un puntatore a funzione di tipo PCPFNEVENT_HANDLER, definito come segue:
typedef NTSTATUS (*PCPFNEVENT_HANDLER)
(
IN PPCEVENT_REQUEST EventRequest
);
Quando si chiama la routine gestore, il chiamante passa un singolo parametro di chiamata, ovvero un puntatore a una struttura PCEVENT_REQUEST allocata dal chiamante.
Osservazioni
La struttura PCEVENT_ITEM specifica un particolare elemento evento in una tabella di automazione. La struttura PCAUTOMATION_TABLE punta a una matrice di strutture PCEVENT_ITEM.
Nell'audio WDM, la destinazione per una richiesta di evento è un'istanza di pin o un nodo su un pin. Un'istanza di filtro non può essere la destinazione di una richiesta di evento.
Fabbisogno
Requisito | Valore |
---|---|
intestazione | portcls.h (include Portcls.h) |