다음을 통해 공유


DXGKDDI_VIDPN_ACQUIRETARGETMODESET 콜백 함수(d3dkmddi.h)

pfnAcquireTargetModeSet 함수는 지정된 VidPN 개체에 포함된 특정 대상 모드 집합 개체에 대한 핸들을 반환합니다.

구문

DXGKDDI_VIDPN_ACQUIRETARGETMODESET DxgkddiVidpnAcquiretargetmodeset;

NTSTATUS DxgkddiVidpnAcquiretargetmodeset(
  [in]  IN_CONST_D3DKMDT_HVIDPN hVidPn,
  [in]  IN_CONST_D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId,
  [out] OUT_PD3DKMDT_HVIDPNTARGETMODESET phVidPnTargetModeSet,
  [out] DEREF_OUT_CONST_PPDXGK_VIDPNTARGETMODESET_INTERFACE ppVidPnTargetModeSetInterface
)
{...}

매개 변수

[in] hVidPn

VidPN 개체에 대한 핸들입니다. VidPN 관리자는 이전에 DxgkDdiEnumVidPnCofuncModality, DxgkDdiIsSupportedVidPn 또는 DxgkDdiRecommendFunctionalVidPn을 호출하여 디스플레이 미니포트 드라이버에 이 핸들을 제공했습니다.

[in] VidPnTargetId

VidPN 개체와 연결된 비디오 현재 대상 중 하나를 식별하는 정수입니다.

[out] phVidPnTargetModeSet

요청된 대상 모드 집합 개체에 대한 핸들을 수신하는 변수에 대한 포인터입니다.

[out] ppVidPnTargetModeSetInterface

DXGK_VIDPNTARGETMODESET_INTERFACE 구조체에 대한 포인터를 수신하는 변수에 대한 포인터입니다. 구조체에는 디스플레이 미니포트 드라이버가 대상 모드 집합 개체를 검사하고 변경하기 위해 호출할 수 있는 함수에 대한 포인터가 포함되어 있습니다.

반환 값

pfnAcquireTargetModeSet 함수는 다음 값 중 하나를 반환합니다.

반환 코드 설명
STATUS_SUCCESS 함수가 성공했습니다.
STATUS_GRAPHICS_INVALID_VIDPN hVidPn에 제공된 핸들이 잘못되었습니다.
STATUS_GRAPHICS_INVALID_VIDEO_PRESENT_TARGET VidPnTargetId에 제공된 식별자가 잘못되었습니다.

설명

VidPN 대상 식별자는 디스플레이 미니포트 드라이버에 의해 할당됩니다. 디스플레이 미니포트 드라이버에 의해 구현된 DxgkDdiQueryChildRelations는 각각 식별자가 포함된 DXGK_CHILD_DESCRIPTOR 구조의 배열을 반환합니다.

대상 모드 집합 개체 핸들 사용을 마쳤으면 pfnReleaseTargetModeSet을 호출하여 핸들을 해제해야 합니다. 대상 모드 집합 개체는 참조 횟수가 계산되므로 핸들을 여러 번 획득하는 경우 동일한 횟수를 해제해야 합니다.

ppVidPnTargetModeSetInterface에서 반환된 DXGK_VIDPNTARGETMODESET_INTERFACE 구조체의 수명은 운영 체제에서 소유합니다. 이 소유권 체계를 사용하여 운영 체제는 인터페이스의 클라이언트를 중단하지 않고 런타임에 최신 구현으로 전환할 수 있습니다.

D3DDDI_VIDEO_PRESENT_TARGET_ID 데이터 형식은 D3dukmdt.h에 정의되어 있습니다.

D3DKMDT_HVIDPN 및 D3DKMDT_HVIDPNTARGETMODESET 데이터 형식은 D3dkmdt.h에 정의되어 있습니다.

요구 사항

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

추가 정보

VidPN 대상 모드 집합 인터페이스

pfnAssignTargetModeSet

pfnCreateNewTargetModeSet

pfnReleaseTargetModeSet