Структура KSQUERYBUFFER (ks.h)

Структура KSQUERYBUFFER используется при запросе незавершенных буферов, доступных для события с KSEVENT_TYPE_QUERYBUFFER.

Синтаксис

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

Члены

Event

Указывает описание исходного события с установленным флагом KSEVENT_TYPE_QUERYBUFFER вместо флага KSEVENT_TYPE_ENABLEBUFFERED .

EventData

Указатель на структуру KSEVENTDATA . Это тот же указатель, который предоставляется на AVStrMiniAddEvent во время включения события. Этот указатель используется в качестве уникального идентификатора при поиске события так же, как и при отключении события.

Reserved

Не используется, и установите значение 0.

Комментарии

Если KSEVENT_TYPE_ENABLEBUFFERED использовалась для включения события, которое также буферизует данные, то данные, созданные событием, можно запрашивать с помощью этого метода. Описание запрашиваемого события предоставляется в качестве первого параметра, а любой буфер предоставляется в качестве второго параметра запроса.

Необходимую длину буфера можно запросить, предоставив выходной буфер нулевой длины. Размер буфера возвращается в параметре BytesReturned с состоянием предупреждения STATUS_BUFFER_OVERFLOW.

Кроме того, запрос возвращает одно из следующих значений состояния:

Возвращаемое значение Описание
STATUS_NOT_FOUND Событие не найдено
STATUS_INVALID_PARAMETER он не буферистился
STATUS_NO_MORE_ENTRIES буферы недоступны
STATUS_BUFFER_TOO_SMALL размер буфера был недостаточным.
STATUS_SUCCESS жизнь хороша.

Требования

Требование Значение
Заголовок ks.h (включая Ks.h)

См. также раздел

KSBUFFER_ITEM

KSEVENT