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) |