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 |