Compartilhar via


Estrutura KSQUERYBUFFER (ks.h)

A estrutura KSQUERYBUFFER é usada ao consultar buffers pendentes disponíveis em um evento com KSEVENT_TYPE_QUERYBUFFER.

Sintaxe

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

Membros

Event

Especifica a descrição do evento original, com o sinalizador KSEVENT_TYPE_QUERYBUFFER definido em vez do sinalizador KSEVENT_TYPE_ENABLEBUFFERED .

EventData

Um ponteiro para uma estrutura KSEVENTDATA . Esse é o mesmo ponteiro fornecido para AVStrMiniAddEvent no momento da habilitação do evento. Esse ponteiro é usado como o identificador exclusivo na localização do evento, assim como é usado ao desabilitar o evento.

Reserved

Não usado e definido como zero.

Comentários

Se KSEVENT_TYPE_ENABLEBUFFERED foi usado para habilitar um evento que também armazena dados em buffer, os dados produzidos pelo evento podem ser consultados usando esse método. A descrição do evento que está sendo consultado é fornecida como o primeiro parâmetro e qualquer buffer é fornecido como o segundo parâmetro para a consulta.

O comprimento do buffer necessário pode ser consultado fornecendo um buffer de saída de comprimento zero. O tamanho do buffer é retornado no parâmetro BytesReturned, com um aviso status de STATUS_BUFFER_OVERFLOW.

Como alternativa, a consulta retorna um dos seguintes valores de status:

Valor Retornado Descrição
STATUS_NOT_FOUND evento não foi encontrado
STATUS_INVALID_PARAMETER ele não estava sendo armazenado em buffer
STATUS_NO_MORE_ENTRIES nenhum buffer estava disponível
STATUS_BUFFER_TOO_SMALL O tamanho do buffer era insuficiente.
STATUS_SUCCESS A vida é boa.

Requisitos

Requisito Valor
Cabeçalho ks.h (inclua Ks.h)

Confira também

KSBUFFER_ITEM

KSEVENT