Структура 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) |