Condividi tramite


Funzione KsGenerateDataEvent (ks.h)

La funzione KsGenerateDataEvent genera una delle notifiche degli eventi standard quando viene fornita una struttura di immissione di eventi e dati di callback. Ciò consente a un dispositivo di determinare quando devono essere generate le notifiche degli eventi, ma usare ancora questa funzione helper per eseguire la notifica effettiva.

Sintassi

KSDDKAPI NTSTATUS KsGenerateDataEvent(
  [in] PKSEVENT_ENTRY EventEntry,
  [in] ULONG          DataSize,
  [in] PVOID          Data
);

Parametri

[in] EventEntry

Specifica la struttura della voce di evento che fa riferimento ai dati dell'evento. Le informazioni vengono utilizzate per determinare il tipo di notifica da eseguire. Se il tipo di notifica non è uno degli standard predefiniti, viene restituito un errore. Nel caso di un singolo evento non ricorsiva, questa voce non sarà valida quando viene restituita dalla funzione. Pertanto, qualsiasi codice che enumera un elenco di eventi deve preincrementare per acquisire l'evento successivo nell'elenco prima di passare questo evento alla funzione.

[in] DataSize

Specifica le dimensioni in byte del parametro Data passato.

[in] Data

Punta ai dati da passare al callback del client. Questi dati vengono copiati in uno degli slot di buffer preallocati configurati quando l'evento è stato abilitato. Le dimensioni dei dati devono essere inferiori a quelle originariamente allocate oppure l'evento avrà esito negativo.

Valore restituito

La funzione KsGenerateDataEvent restituisce STATUS_SUCCESS in caso di esito positivo o se ha esito negativo restituisce un'eccezione o un errore di memoria.

Commenti

Si presuppone che il blocco dell'elenco eventi sia stato acquisito prima che venga chiamata questa funzione. Questa funzione può comportare una chiamata a RemoveHandler per la voce dell'evento. Pertanto, la funzione non deve essere chiamata a un livello superiore al livello IRQ del blocco oppure la funzione Remove deve essere in grado di gestire la chiamata a un livello IRQ di questo tipo.

Questa funzione è specificamente per gli eventi che passano di nuovo i dati tramite un callback a un client.

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Intestazione ks.h (include Ks.h)
Libreria Ks.lib

Vedi anche

KSBUFFER_ITEM