Поделиться через


перечисление D3DKMDT_GDISURFACETYPE (d3dkmdt.h)

Перечисление D3DKMDT_GDISURFACETYPE указывает тип блокируемой поверхности, используемой диспетчером окон рабочего стола (DWM) для перенаправления.

Синтаксис

typedef enum _D3DKMDT_GDISURFACETYPE {
  D3DKMDT_GDISURFACE_INVALID,
  D3DKMDT_GDISURFACE_TEXTURE,
  D3DKMDT_GDISURFACE_STAGING_CPUVISIBLE,
  D3DKMDT_GDISURFACE_STAGING,
  D3DKMDT_GDISURFACE_LOOKUPTABLE,
  D3DKMDT_GDISURFACE_EXISTINGSYSMEM,
  D3DKMDT_GDISURFACE_TEXTURE_CPUVISIBLE,
  D3DKMDT_GDISURFACE_TEXTURE_CROSSADAPTER,
  D3DKMDT_GDISURFACE_TEXTURE_CPUVISIBLE_CROSSADAPTER
} D3DKMDT_GDISURFACETYPE;

Константы

 
D3DKMDT_GDISURFACE_INVALID
Драйвер не должен видеть это значение.
D3DKMDT_GDISURFACE_TEXTURE
Указывает, что поверхность имеет следующие свойства:



  • Он имеет одноуровневую текстуру.



  • Он не отображается ЦП, а диспетчер памяти видео создаст его как общую поверхность.



  • Он открывается драйвером пользовательского режима и используется в качестве текстуры во время композиции DWM.



  • Он используется драйвером пользовательского режима в качестве целевого объекта отрисовки для отрисовки DirectX.



  • Он используется в качестве исходной или целевой поверхности в операциях с аппаратным ускорением GDI.


D3DKMDT_GDISURFACE_STAGING_CPUVISIBLE
Указывает, что поверхность имеет следующие свойства:



  • Он отображается ЦП и будет широко использоваться ЦП. Выделение должно быть линейным форматом и в сегменте диафрагмы gpu с поддержкой кэша.



  • Он используется в качестве исходной поверхности в операциях с аппаратным ускорением GDI.



  • Он используется в качестве целевой поверхности в операциях GDI bitblt (только для копирования).



  • Его шаг должен быть возвращен драйвером минипорта дисплея.



  • Его значение шага и адрес поверхности должны быть выровнены по значению AlignmentShift член структуры DXGK_PRESENTATIONCAPS (то есть DXGK_DRIVERCAPS->PresentationCaps.AlignmentShift).


D3DKMDT_GDISURFACE_STAGING
Указывает, что поверхность имеет следующие свойства:



  • Он не отображается ЦП.



  • Он используется в качестве исходной или целевой поверхности в операциях с аппаратным ускорением GDI.



  • Он используется в качестве исходной или целевой поверхности в операциях GDI bitblt (только для копирования).


D3DKMDT_GDISURFACE_LOOKUPTABLE
Указывает, что поверхность имеет следующие свойства:



  • Он не отображается ЦП.



  • Он используется только во время обработки команд, указанных ClearTypeBlend и OpCode. DXGK_GDIOP_BITBLT (только для копирования) членов структуры DXGK_RENDERKM_COMMAND.



  • Формат определяется значением D3DDDIFMT_A8 перечисления D3DDDIFORMAT.



  • Выделение гамма-подстановки создается один раз и никогда не изменяется после инициализации. Выделение инициализируется в формате D3DDDIFMT_A8 путем выдачи команды DXGK_RENDERKM_COMMAND—>Opcode.DXGK_GDIOP_BITBLT из области D3DKMDT_GDISURFACE_STAGING_CPUVISIBLE.


D3DKMDT_GDISURFACE_EXISTINGSYSMEM
Указывает, что поверхность имеет следующие свойства:



  • Он виден ЦП. Выделение должно быть линейным форматом и в сегменте диафрагмы gpu с поддержкой кэша.



  • Его значение шага и адрес поверхности должны быть выровнены по значению AlignmentShift член структуры DXGK_PRESENTATIONCAPS (то есть DXGK_DRIVERCAPS->PresentationCaps.AlignmentShift).



  • Адрес поверхности передается драйверу.



  • Это значение используется так же, как и значение D3DKMDT_GDISURFACE_STAGING_CPUVISIBLE.


D3DKMDT_GDISURFACE_TEXTURE_CPUVISIBLE
Зарезервировано для использования системы. Не используйте это значение в драйвере.

Поддерживается начиная с Windows 8.
D3DKMDT_GDISURFACE_TEXTURE_CROSSADAPTER
Указывает, что поверхность имеет следующие свойства:



  • Он не отображается цП, а диспетчер памяти видео создаст его в качестве общей межадаптерной поверхности.



  • Его шаг должен быть возвращен драйвером минипорта дисплея в Pitch член структуры D3DKMDT_GDISURFACEDATA.



  • Шаг и высота должны иметь необходимое выравнивание для ресурса кросс-адаптера. Вы можете использовать константы D3DKMT_CROSS_ADAPTER_RESOURCE_PITCH_ALIGNMENT и D3DKMT_CROSS_ADAPTER_RESOURCE_HEIGHT_ALIGNMENT, чтобы убедиться, что драйвер возвращает правильный шаг и высоту для ресурса кроссплатформенного адаптера. Эти константы определены в D3dukmdt.h.



Поддерживается начиная с Windows 8.1.
D3DKMDT_GDISURFACE_TEXTURE_CPUVISIBLE_CROSSADAPTER
Зарезервировано для использования системы. Не используйте это значение в драйвере.

Поддерживается начиная с Windows 8.1.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 7
заголовка d3dkmdt.h

См. также

D3DDDIFORMAT

D3DKMDT_GDISURFACEDATA

DXGK_DRIVERCAPS

DXGK_PRESENTATIONCAPS

DXGK_RENDERKM_COMMAND