структура DD_MORESURFACECAPS (ddrawint.h)
Структура DD_MORESURFACECAPS определяет дополнительные возможности поверхности драйвера в дополнение к тем, которые описаны в DDCORECAPS.
Синтаксис
typedef struct _DD_MORESURFACECAPS {
DWORD dwSize;
DDSCAPSEX ddsCapsMore;
struct {
DDSCAPSEX ddsCapsEx;
DDSCAPSEX ddsCapsExAlt;
} tagNTExtendedHeapRestrictions;
tagNTExtendedHeapRestrictions ddsExtendedHeapRestrictions[1];
} *PDD_MORESURFACECAPS, DD_MORESURFACECAPS;
Члены
dwSize
Задает размер структуры DD_MORESURFACECAPS. Структура DD_MORESURFACECAPS имеет переменный размер. В элементе массива этой структуры должны быть точно DD_HALINFO.vmiData.dwNumHeaps копии структуры ddsExtendedHeapRestrictions . Общий размер структуры DD_MORESURFACECAPS таким образом:
dwSize =
sizeof(DD_MORESURFACECAPS) +
(DD_HALINFO.vmiData.dwNumHeaps - 1) * sizeof(DDSCAPSEX) * 2
Это вычисление учитывает минимальный размер структуры DD_MORESURFACECAPS, которая включает только один элемент массива ddsExtendedHeapRestrictions . Любые дополнительные элементы массива ddsExtendedHeapRestrictions должны учитываться путем добавления размеров оставшихся элементов массива. То есть путем сложения произведения числа оставшихся структур ddsExtendedHeapRestrictions умножает размер каждой из них.
ddsCapsMore
Задает структуру DDSCAPSEX, которая предоставляет расширения для ddcaps.ddsCaps , описывающие типы расширенных поверхностей, которые может создать драйвер. Когда структура DDCAPS возвращается в приложение, это структура DDSCAPS2 , изготовленная из DDCAPS.ddsCaps и DD_MORESURFACECAPS.ddsCapsMore. Структура DDSCAPSEX аналогична структуре DDSCAPS2 без элемента dwCaps .
tagNTExtendedHeapRestrictions
tagNTExtendedHeapRestrictions.ddsCapsEx
tagNTExtendedHeapRestrictions.ddsCapsExAlt
ddsExtendedHeapRestrictions[1]
Задает структуру, содержащую два элемента. Эти элементы заполняются драйверами с поддержкой Microsoft DirectX 6.0 (и драйверами, соответствующими более поздним версиям DirectX), чтобы ограничить кучи видеопамяти, предоставляемые Microsoft DirectDraw, определенными наборами битов DDSCAPS_Xxx . Версия DirectDraw определяется с помощью DDVERSIONINFO, которая определена в файле ddrawi.h. Элементы ddsCapsEx и ddsCapsExAlt структуры DD_MORESURFACECAPS точно аналогичны элементам ddsCaps и ddsCapsAlt структур VIDEOMEMORY, перечисленным в элементе VIDMEMINFO.pvmListDD_HALINFO.vmiData.
ddsCapsEx
Указывает структуру DDSCAPSEX, в которой драйвер возвращает возможности, для которых этот блок памяти не может использоваться.
ddsCapsExAlt
Задает структуру DDSCAPSEX, в которой драйвер возвращает возможности, для которых этот блок памяти не может использоваться, если на первом проходе не найдена другая память.
Комментарии
Эта структура содержит биты caps, добавленные в структуру DDCAPS.ddsCaps в DirectX 6.0. Описание структуры DDCAPS см. в документации по пакету SDK directDraw.
Примечание для Microsoft Windows 98/Me: DD_MORESURFACECAPS — это определение для Windows 2000 и более поздних версий. Драйверы под управлением Windows 98/Me используют имя DDMORESURFACECAPS, псевдоним которого указан в файле dx95type.h.
Требования
Верхняя часть | ddrawint.h (включая Winddi.h) |