функция обратного вызова PDD_VPORTCB_GETOUTPUTFORMATS (ddrawint.h)
Функция обратного вызова DdVideoPortGetOutputFormats определяет форматы вывода, поддерживаемые объектом VPE.
Синтаксис
PDD_VPORTCB_GETOUTPUTFORMATS PddVportcbGetoutputformats;
DWORD PddVportcbGetoutputformats(
PDD_GETVPORTOUTPUTFORMATDATA unnamedParam1
)
{...}
Параметры
unnamedParam1
Указывает на структуру DD_GETVPORTOUTPUTFORMATDATA , содержащую сведения, необходимые драйверу для возврата выходных форматов, поддерживаемых объектом VPE.
Возвращаемое значение
DdVideoPortGetOutputFormats возвращает один из следующих кодов обратного вызова:
Комментарии
Драйверы DirectDraw, поддерживающие VPE, должны реализовывать DdVideoPortGetOutputFormats
DirectDraw вызывает DdVideoPortGetOutputFormats , чтобы получить количество форматов вывода, поддерживаемых указанным объектом VPE, и описание каждого формата. DdVideoPortGetOutputFormats вызывается дважды для указанного объекта VPE:
- В первом вызове член lpddpfOutputFormats структуры DD_GETVPORTOUTPUTFORMATDATA в lpGetOutputFormats имеет значение NULL. Драйвер должен записать количество форматов вывода, поддерживаемых объектом VPE в элементе dwNumFormats DD_GETVPORTOUTPUTFORMATDATA. После возврата DirectDraw выделяет это количество структур DDPIXELFORMAT для передачи во втором вызове DdVideoPortGetOutputFormats.
- Во втором вызове lpddpfOutputFormats указывает на массив выделенных структур DDPIXELFORMAT. Драйвер должен заполнить каждую структуру описанием каждого формата вывода, который объект VPE может записать в буфер кадров. Драйвер должен возвращать только те форматы выходных данных, которые он поддерживает на основе входного формата видеоданных. Драйвер также должен возвращать количество поддерживаемых форматов вывода в dwNumFormats. Обратите внимание, что драйвер гарантирует, что буфер, в который находятся точки lpddpfOutputFormats , достаточно велик для хранения запрашиваемых сведений о формате.
Требования
Целевая платформа | Персональный компьютер |
Верхняя часть | ddrawint.h (включая Winddi.h) |