DXGKDDI_VIDPNTOPOLOGY_ENUMPATHTARGETSFROMSOURCE コールバック関数 (d3dkmddi.h)
pfnEnumPathTargetsFromSource 関数は、指定されたビデオの現在のソースに関連付けられているビデオの存在ターゲットの 1 つの識別子を返します。
構文
DXGKDDI_VIDPNTOPOLOGY_ENUMPATHTARGETSFROMSOURCE DxgkddiVidpntopologyEnumpathtargetsfromsource;
NTSTATUS DxgkddiVidpntopologyEnumpathtargetsfromsource(
[in] IN_CONST_D3DKMDT_HVIDPNTOPOLOGY hVidPnTopology,
[in] IN_CONST_D3DDDI_VIDEO_PRESENT_SOURCE_ID VidPnSourceId,
[in] IN_CONST_D3DKMDT_VIDPN_PRESENT_PATH_INDEX VidPnPresentPathIndex,
[out] OUT_PD3DDDI_VIDEO_PRESENT_TARGET_ID pVidPnTargetId
)
{...}
パラメーター
[in] hVidPnTopology
VidPN トポロジ オブジェクトへのハンドル。 ディスプレイ ミニポート ドライバーは、DXGK_VIDPN_INTERFACE インターフェイスのpfnGetTopology 関数を呼び出すことによって、このハンドルを以前に取得しました。
[in] VidPnSourceId
特定のビデオ存在ソースを識別する整数。
[in] VidPnPresentPathIndex
VidPnSourceId によって識別されるソースを含むパスのセットへの 0 から始まるインデックス。
[out] pVidPnTargetId
ターゲット識別子を受け取る変数へのポインター。
戻り値
pfnEnumPathTargetsFromSource 関数は、次のいずれかの値を返します。
リターン コード | 説明 |
---|---|
STATUS_SUCCESS | 関数が正常に実行されました。 |
STATUS_GRAPHICS_INVALID_VIDPN_TOPOLOGY | hVidPnTopology で指定されたハンドルが無効です。 |
STATUS_INVALID_PARAMETER | pVidPnTargetId で指定されたポインターが有効でした。 |
注釈
VidPnPresentPathIndex は、 hVidPnTopology によって識別されるトポロジ内のすべてのパスのセットのインデックスではありません。 これは、トポロジ内のすべてのパスのサブセットへのインデックスです。具体的には、 VidPnSourceId によって識別されるソースを含むすべてのパスのサブセットです。
特定のソースに関連付けられているすべてのターゲットを (特定のトポロジで) 列挙するには、次の手順を実行します。
pfnGetNumPathsFromSource を呼び出して、対象のソースを含むパスの数 N を確認します。 これらのパスは、インデックス 0、1、..を持つインデックス付きセットと考えてください。N - 1。
インデックス 0 (N から 1) ごとに、ソース識別子とインデックスを pfnEnumPathTargetsFromSource に渡します。
トポロジはコレクション パスであり、それぞれに (ソース、ターゲット) のペアが含まれています。 特定のソースが複数のパスに表示される可能性があります。 たとえば、複製ビューの場合、1 つのソースを 2 つの異なるターゲットとペアにすることができます。
VidPN ソース識別子は、オペレーティング システムによって割り当てられます。 ディスプレイ ミニポート ドライバーによって実装される DxgkDdiStartDevice は、ディスプレイ アダプターでサポートされているビデオの現在のソースの数 N を返します。 次に、オペレーティング システムによって識別子 0、1、2、..が割り当てられます。N - 1。
VidPN ターゲット識別子は、ディスプレイ ミニポート ドライバーによって割り当てられます。 ディスプレイ ミニポート ドライバーによって実装される DxgkDdiQueryChildRelations は、識別子を含むDXGK_CHILD_DESCRIPTOR構造体の配列を返します。
D3DKMDT_HVIDPNTOPOLOGYデータ型とD3DKMDT_VIDPN_PRESENT_PATH_INDEXデータ型は D3dkmdt.h で定義されています。
D3DDDI_VIDEO_PRESENT_SOURCE_IDとD3DDDI_VIDEO_PRESENT_TARGET_IDのデータ型は D3dukmdt.h で定義されています。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista |
対象プラットフォーム | デスクトップ |
Header | d3dkmddi.h (D3dkmddi.h を含む) |
IRQL | PASSIVE_LEVEL |