Compartilhar via


DXGKDDI_VIDPNTOPOLOGY_ENUMPATHTARGETSFROMSOURCE função de retorno de chamada (d3dkmddi.h)

A função pfnEnumPathTargetsFromSource retorna o identificador de um dos destinos presentes do vídeo associados a uma fonte presente de vídeo especificada.

Sintaxe

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
)
{...}

Parâmetros

[in] hVidPnTopology

Um identificador para um objeto de topologia VidPN. O driver de miniporto de exibição obteve esse identificador anteriormente chamando a função pfnGetTopology da interface DXGK_VIDPN_INTERFACE .

[in] VidPnSourceId

Um inteiro que identifica uma fonte de vídeo específica presente.

[in] VidPnPresentPathIndex

Um índice baseado em zero no conjunto de caminhos que contêm a origem identificada por VidPnSourceId.

[out] pVidPnTargetId

Um ponteiro para uma variável que recebe o identificador de destino.

Retornar valor

A função pfnEnumPathTargetsFromSource retorna um dos seguintes valores:

Código de retorno Descrição
STATUS_SUCCESS A função foi bem-sucedida.
STATUS_GRAPHICS_INVALID_VIDPN_TOPOLOGY O identificador fornecido em hVidPnTopology era inválido.
STATUS_INVALID_PARAMETER O ponteiro fornecido em pVidPnTargetId era válido.

Comentários

VidPnPresentPathIndex não é um índice no conjunto de todos os caminhos na topologia identificada por hVidPnTopology. É um índice em um subconjunto de todos os caminhos na topologia: especificamente, o subconjunto de todos os caminhos que contêm a origem identificada por VidPnSourceId.

Para enumerar (em uma determinada topologia) todos os destinos associados a uma fonte específica, execute as etapas a seguir.

Chame pfnGetNumPathsFromSource para determinar o número N de caminhos que contêm a fonte de interesse. Pense nesses caminhos como um conjunto indexado com índices 0, 1, ... N - 1.

Para cada índice 0 embora N - 1, passe o identificador de origem e o índice para pfnEnumPathTargetsFromSource.

Uma topologia é um caminho de coleção, cada um dos quais contém um par (origem, destino). É possível que uma fonte específica apareça em mais de um caminho. Por exemplo, uma fonte pode ser emparelhada com dois destinos distintos no caso de uma exibição de clone.

Os identificadores de origem VidPN são atribuídos pelo sistema operacional. DxgkDdiStartDevice, implementado pelo driver de miniporto de exibição, retorna o número N de fontes presentes de vídeo compatíveis com o adaptador de exibição. Em seguida, o sistema operacional atribui identificadores 0, 1, 2, ... N - 1.

Os identificadores de destino VidPN são atribuídos pelo driver de miniporto de exibição. DxgkDdiQueryChildRelations, implementado pelo driver de miniporto de exibição, retorna uma matriz de estruturas DXGK_CHILD_DESCRIPTOR , cada uma contendo um identificador.

Os tipos de dados D3DKMDT_HVIDPNTOPOLOGY e D3DKMDT_VIDPN_PRESENT_PATH_INDEX são definidos em D3dkmdt.h.

Os tipos de dados D3DDDI_VIDEO_PRESENT_SOURCE_ID e D3DDDI_VIDEO_PRESENT_TARGET_ID são definidos em D3dukmdt.h.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista
Plataforma de Destino Área de Trabalho
Cabeçalho d3dkmddi.h (inclua D3dkmddi.h)
IRQL PASSIVE_LEVEL

Confira também

pfnGetNumPathsFromSource

pfnGetPathSourceFromTarget