다음을 통해 공유


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

디스플레이 어댑터와 연결된 컨텍스트 블록에 대한 핸들입니다. 디스플레이 미니포트 드라이버는 이전에 DxgkDdiAddDevice 함수의 MiniportDeviceContext 출력 매개 변수에서 DirectX 그래픽 커널 하위 시스템에 이 핸들을 제공했습니다.

[in] pRecommendFunctionalVidPn

함수 인수를 포함하는 DXGKARG_RECOMMENDFUNCTIONALVIDPN 구조체에 대한 포인터입니다. 호출자는 빈 VidPN 개체에 대한 핸들인 hRecommendedFunctionalVidPn 멤버를 제공합니다. DxgkDdiRecommendFunctionalVidPn 은 VidPN 개체를 기능 VidPN의 요소(토폴로지, 모드 집합, 고정 모드)로 채웁니다.

반환 값

DxgkDdiRecommendFunctionalVidPn은 다음 값 중 하나를 반환합니다.

반환 코드 설명
STATUS_SUCCESS 함수는 기능 VidPN을 만드는 데 성공했습니다.
STATUS_GRAPHICS_NO_RECOMMENDED_FUNCTIONAL_VIDPN 함수가 기능 VidPN을 만들 수 없습니다.
STATUS_NO_MEMORY 함수가 메모리를 할당할 수 없어 실패했습니다.

설명

VidPN은 다음 조건을 충족하는 경우 작동합니다.

  • 경로가 하나 이상 있는 토폴로지입니다. 경로는 원본과 대상 간의 연결입니다.
  • 토폴로지의 모든 원본과 대상에는 고정 모드가 있습니다.
DxgkDdiRecommendFunctionalVidPn의 작업은 디스플레이 어댑터에서 구현할 수 있는 기능 VidPN을 만드는 것입니다. 다음 목록에서는 기능 VidPN을 만드는 데 사용되는 단계를 제공합니다.
  1. 빈 VidPN 개체에 대한 핸들로 시작합니다. 이 핸들은 pRecommendFunctionalVidPnArghDesiredVidPn 멤버에 제공되었습니다.
  2. VidPN의 토폴로지에 경로(원본-대상 쌍)를 추가합니다.
  3. 새 소스 모드 집합을 만들고 하나의 소스 모드를 집합에 추가합니다. 경로의 원본에 설정된 소스 모드를 할당합니다. 원본 모드를 고정합니다.
  4. 새 대상 모드 집합을 만들고 집합에 하나의 대상 모드를 추가합니다. 경로의 대상에 설정된 대상 모드를 할당합니다. 대상 모드를 고정합니다.
경로를 추가하고, 모드 집합을 추가하고, 모드를 할당하고, 모드를 고정하는 방법에 대한 자세한 내용은 VidPN 개체 및 인터페이스를 참조하세요.

DxgkDdiRecommendFunctionalVidPn 을 페이징 가능으로 만들어야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista
대상 플랫폼 데스크톱
머리글 d3dkmddi.h
IRQL PASSIVE_LEVEL