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

Функция DxgkDdiRecommendFunctionalVidPn создает функциональный VidPN, который можно реализовать на указанном видеоадаптере.

Синтаксис

DXGKDDI_RECOMMENDFUNCTIONALVIDPN DxgkddiRecommendfunctionalvidpn;

NTSTATUS DxgkddiRecommendfunctionalvidpn(
  [in] IN_CONST_HANDLE hAdapter,
  [in] IN_CONST_PDXGKARG_RECOMMENDFUNCTIONALVIDPN_CONST pRecommendFunctionalVidPn
)
{...}

Параметры

[in] hAdapter

Дескриптор для блока контекста, связанного с видеоадаптером. Драйвер мини-порта дисплея ранее предоставлял этот дескриптор подсистеме ядра графики DirectX в выходном параметре MiniportDeviceContext функции DxgkDdiAddDevice .

[in] pRecommendFunctionalVidPn

Указатель на структуру DXGKARG_RECOMMENDFUNCTIONALVIDPN , содержащую аргументы функции. Вызывающий объект предоставляет элемент hRecommendedFunctionalVidPn , который является дескриптором пустого объекта VidPN. DxgkDdiRecommendFunctionalVidPn заполняет объект VidPN элементами функционального объекта VidPN: топологией, наборами режимов, закрепленными режимами.

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

DxgkDdiRecommendFunctionalVidPn возвращает одно из следующих значений:

Код возврата Описание
STATUS_SUCCESS Функции удалось создать функциональный VidPN.
STATUS_GRAPHICS_NO_RECOMMENDED_FUNCTIONAL_VIDPN Функции не удалось создать функциональный VidPN.
STATUS_NO_MEMORY Не удалось выполнить функцию, так как ей не удалось выделить память.

Комментарии

VidPN работает, если он удовлетворяет следующим условиям:

  • У нее есть топология, которая имеет по крайней мере один путь. (Путь — это связь между источником и целевым объектом.)
  • Каждый источник и целевой объект в топологии имеет закрепленный режим.
Задача DxgkDdiRecommendFunctionalVidPn — создать функциональный VidPN, который можно реализовать на видеоадаптере. В следующем списке приведены шаги, используемые для создания функционального VidPN.
  1. Начните с дескриптора пустого объекта VidPN. Этот дескриптор был указан в элементе hDesiredVidPnэлемента pRecommendFunctionalVidPnArg.
  2. Добавьте путь (пару "источник-целевой объект") в топологию VidPN.
  3. Создайте новый набор режимов источника и добавьте в набор один режим источника. Назначьте исходный режим, заданный источнику в пути. Закрепите исходный режим.
  4. Создайте новый набор целевых режимов и добавьте в набор один целевой режим. Назначьте целевой режим, заданный для целевого объекта в пути. Закрепите целевой режим.
Сведения о добавлении путей, добавлении наборов режимов, назначении режимов и режимах закрепления см. в разделе Объекты и интерфейсы VidPN.

DxgkDdiRecommendFunctionalVidPn должен быть доступным для страниц.

Требования

Требование Значение
Минимальная версия клиента Windows Vista
Целевая платформа Персональный компьютер
Верхняя часть d3dkmddi.h
IRQL PASSIVE_LEVEL