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


функция обратного вызова PFND3DDDI_SETMARKER (d3dumddi.h)

Уведомляет драйвер отображения в пользовательском режиме, что он должен создать новую метку времени, если любая работа GPU завершена с момента последнего вызова pfnSetMarker. При необходимости реализованы модели драйвера windows (WDDM) 1.3 и более поздних версий, работающих на оборудовании Microsoft Direct3D Уровня 9. (См. требования в улучшения производительности отрисовки Direct3D.) Для более расширенного оборудования драйверы должны реализовать функцию SetMarker.

Синтаксис

PFND3DDDI_SETMARKER Pfnd3dddiSetmarker;

HRESULT Pfnd3dddiSetmarker(
  HANDLE hDevice
)
{...}

Параметры

hDevice

Дескриптор устройства отображения (графический контекст).

Возвращаемое значение

Возвращает S_OK или соответствующий результат ошибки, если функция не завершена успешно.

Замечания

Если тип события маркера из параметра Type функции pfnSetMarkerMod e не D3DDDIMT_NONE, драйвер отображения пользовательского режима должен выполнить эту процедуру с каждым вызовом pfnSetMarker:

  1. Увеличьте значение APISequenceNumber члена структуры D3DDDICB_LOGUMDMARKER.
  2. Определите, какие контексты, связанные с интерфейсом драйвера устройств с одним потоком (DDI), отрисовывает отправленные вызовы с последним вызовом pfnSetMarker. Для каждого такого контекста:
    1. Если буфер команд для контекста пуст, ничего не делать.
    2. Иначе:
      • Убедитесь, что в буфере журнала контекста доступно больше памяти. При необходимости сброс буфера.
      • Добавьте еще одну запись в буфер порядкового номера API контекста, который содержит низкие 32 биты текущего значения APISequenceNumber.
      • Пример и запись меток времени, подходящих для текущего типа события маркера.
    3. Данные отслеживания обновлений, которые будут использоваться при следующем вызове pfnSetMark er.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 8.1,WDDM 1.3 и более поздних версий
минимальный поддерживаемый сервер Windows Server 2012 R2
целевая платформа Настольный
заголовка d3dumddi.h (include D3d10umddi.h)

См. также

SetMarker

pfnSetMarkerMode