DXGKDDI_VIDPNTOPOLOGY_GETPATHSOURCEFROMTARGET callback function (d3dkmddi.h)

The pfnGetPathSourceFromTarget function returns the identifier of the video present source that is associated with a specified video present target.

Syntax

DXGKDDI_VIDPNTOPOLOGY_GETPATHSOURCEFROMTARGET DxgkddiVidpntopologyGetpathsourcefromtarget;

NTSTATUS DxgkddiVidpntopologyGetpathsourcefromtarget(
  [in]  IN_CONST_D3DKMDT_HVIDPNTOPOLOGY hVidTopology,
  [in]  IN_CONST_D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId,
  [out] OUT_PD3DDDI_VIDEO_PRESENT_SOURCE_ID pVidPnSourceId
)
{...}

Parameters

[in] hVidTopology

A handle to a VidPN topology object. The display miniport driver previously obtained this handle by calling the pfnGetTopology function of the DXGK_VIDPN_INTERFACE interface.

[in] VidPnTargetId

An integer that identifies a particular video present source.

[out] pVidPnSourceId

A pointer to a variable that receives the identifier of the video present source.

Return value

The pfnGetPathSourceFromTarget function returns one of the following values:

Return code Description
STATUS_SUCCESS The function succeeded.
STATUS_GRAPHICS_INVALID_VIDPN_TOPOLOGY The handle supplied in hVidPnTopology was invalid.
STATUS_INVALID_PARAMETER The pointer supplied in pVidPnSourceId was in valid.

Remarks

A topology is a collection paths, each of which contains a (source, target) pair. A particular target belongs to at most one path, so given a target ID, there is at most one source associated with that target.

VidPN source identifiers are assigned by the operating system. DxgkDdiStartDevice, implemented by the display miniport driver, returns the number N of video present sources supported by the display adapter. Then the operating system assigns identifiers 0, 1, 2, ... N - 1.

VidPN target identifiers are assigned by the display miniport driver. DxgkDdiQueryChildRelations, implemented by the display miniport driver, returns an array of DXGK_CHILD_DESCRIPTOR structures, each of which contains an identifier.

The D3DKMDT_HVIDPNTOPOLOGY data type is defined in D3dkmdt.h.

The D3DDDI_VIDEO_PRESENT_SOURCE_ID D3DDDI_VIDEO_PRESENT_TARGET_ID data types are defined in D3dukmdt.h.

Requirements

Requirement Value
Minimum supported client Windows Vista
Target Platform Desktop
Header d3dkmddi.h (include D3dkmddi.h)
IRQL PASSIVE_LEVEL

See also

pfnEnumPathTargetsFromSource