Struttura KSQUERYBUFFER (ks.h)

La struttura KSQUERYBUFFER viene usata durante l'esecuzione di query per i buffer in sospeso disponibili in un evento con KSEVENT_TYPE_QUERYBUFFER.

Sintassi

typedef struct {
  KSEVENT      Event;
  PKSEVENTDATA EventData;
  PVOID        Reserved;
} KSQUERYBUFFER, *PKSQUERYBUFFER;

Members

Event

Specifica la descrizione dell'evento originale, con il flag KSEVENT_TYPE_QUERYBUFFER impostato anziché il flag KSEVENT_TYPE_ENABLEBUFFERED .

EventData

Puntatore a una struttura KSEVENTDATA . Si tratta dello stesso puntatore fornito ad AVStrMiniAddEvent all'ora di abilitazione dell'evento. Questo puntatore viene usato come identificatore univoco nell'individuazione dell'evento, proprio come viene usato durante la disabilitazione dell'evento.

Reserved

Non usato e impostato su zero.

Commenti

Se KSEVENT_TYPE_ENABLEBUFFERED è stato usato per abilitare un evento che memorizza nel buffer anche i dati, è possibile eseguire query sui dati generati dall'evento usando questo metodo. La descrizione dell'evento su cui viene eseguita la query viene fornita come primo parametro e qualsiasi buffer viene fornito come secondo parametro per la query.

È possibile eseguire query sulla lunghezza del buffer fornendo un buffer di output di lunghezza zero. La dimensione del buffer viene restituita nel parametro BytesReturned , con stato di avviso di STATUS_BUFFER_OVERFLOW.

In alternativa, la query restituisce uno dei valori di stato seguenti:

Valore restituito Descrizione
STATUS_NOT_FOUND evento non trovato
STATUS_INVALID_PARAMETER non era memorizzato nel buffer
STATUS_NO_MORE_ENTRIES nessun buffer disponibile
STATUS_BUFFER_TOO_SMALL dimensioni del buffer insufficienti.
STATUS_SUCCESS la vita è buona.

Requisiti

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

Vedi anche

KSBUFFER_ITEM

KSEVENT