Condividi tramite


KSEVENT_ITEM struttura (ks.h)

La struttura KSEVENT_ITEM descrive il supporto di un minidriver per un evento specifico all'interno di un set di eventi.

Sintassi

typedef struct {
  ULONG            EventId;
  ULONG            DataInput;
  ULONG            ExtraEntryData;
  PFNKSADDEVENT    AddHandler;
  PFNKSREMOVEEVENT RemoveHandler;
  PFNKSHANDLER     SupportHandler;
} KSEVENT_ITEM, *PKSEVENT_ITEM;

Members

EventId

Specifica l'ID univoco dell'evento all'interno del set di eventi.

DataInput

Specifica le dimensioni in byte dei dati dell'evento. I dati dell'evento iniziano con una struttura KSEVENTDATA che descrive come il client deve ricevere una notifica quando si verifica l'evento, facoltativamente seguito da eventuali parametri aggiuntivi che specificano quando si verifica l'evento. Deve essere almeno sizeof(KSEVENTDATA).

ExtraEntryData

Specifica le dimensioni in byte di qualsiasi memoria aggiuntiva che il sistema deve allocare per ogni richiesta di abilitazione per questo evento. Il driver usa questa memoria per archiviare i dati necessari per tenere traccia della richiesta di evento. La memoria viene allocata direttamente dopo la struttura di KSEVENT_ENTRY della richiesta di abilitazione dell'evento.

AddHandler

Puntatore a una routine di callback AVStrMiniAddEvent fornita da minidriver. Non usato dal driver della classe di flusso. Solo per i minidriver AVStream.

RemoveHandler

Puntatore a una routine di callback AVStrMiniRemoveEvent fornita da minidriver. Non usato dal driver della classe di flusso. Solo per i minidriver AVStream.

SupportHandler

Non usato dal driver della classe di flusso.

Commenti

Un minidriver che specifica i membri AddHandler e RemoveHandler e non pulisce correttamente gli eventi possono causare una perdita di risorse (memoria/handle).

Requisiti

Requisito Valore
Intestazione ks.h (include Ks.h)

Vedi anche

IOCTL_KS_DISABLE_EVENT

KSEVENTDATA

KSEVENT_ENTRY

KsDefaultAddEventHandler