Share via


Método IDeviceTopology::GetSignalPath (devicetopology.h)

O método GetSignalPath obtém uma lista de partes no caminho do sinal que vincula duas partes, se o caminho existir.

Sintaxe

HRESULT GetSignalPath(
  [in]  IPart      *pIPartFrom,
  [in]  IPart      *pIPartTo,
  [in]  BOOL       bRejectMixedPaths,
  [out] IPartsList **ppParts
);

Parâmetros

[in] pIPartFrom

Ponteiro para a parte "de". Esse parâmetro é um ponteiro para a interface IPart da parte no início do caminho do sinal.

[in] pIPartTo

Ponteiro para a parte "para". Esse parâmetro é um ponteiro para a interface IPart da parte no final do caminho do sinal.

[in] bRejectMixedPaths

Especifica se os caminhos que contêm dados mistos devem ser rejeitados. Se bRejectMixedPaths for TRUE (diferente de zero), o método ignorará qualquer caminho de dados que contenha um mixer (ou seja, um nó de processamento que soma dois ou mais sinais de entrada). Se FALSE, o método tentará encontrar um caminho que conecte as partes "from" e "to", independentemente de o caminho contiver um mixer.

[out] ppParts

Ponteiro para uma variável de ponteiro na qual o método grava o endereço de uma instância de interface IPartsList . Essa interface encapsula a lista de partes no caminho do sinal que conecta a parte "from" à parte "to". Por meio desse método, o chamador obtém uma referência contada para a interface . O chamador é responsável por liberar a interface, quando ela não é mais necessária, chamando o método Release da interface. Se a chamada GetSignalPath falhar, *ppParts será NULL.

Valor retornado

Se o método for bem-sucedido, retornará S_OK. Se falhar, os códigos de retorno possíveis incluem, mas não se limitam a, os valores mostrados na tabela a seguir.

Código de retorno Descrição
E_POINTER
O parâmetro pIPartFrom, pIPartTo ou ppParts é NULL.
E_NOTFOUND
Nenhum caminho que vincule as duas partes foi encontrado.
E_NOINTERFACE
O parâmetro pIPartFrom ou pIPartTo não aponta para uma interface IPart válida.
E_OUTOFMEMORY
Sem memória.

Comentários

Esse método cria uma instância de interface IPartsList que contém uma lista das partes que estão ao longo do caminho de sinal especificado. As partes na lista de partes são ordenadas de acordo com suas posições relativas no caminho do sinal. A parte "para" é o primeiro item na lista e a parte "de" é o último item na lista.

Se a lista contiver n partes, as partes "para" e "from" serão identificadas pelos índices de lista 0 e n– 1, respectivamente. Para obter o número de partes em uma lista de partes, chame o método IPartsList::GetCount . Para recuperar uma parte por seu índice, chame o método IPartsList::GetPart .

Todas as partes no caminho do sinal devem fazer parte da mesma topologia do dispositivo. O caminho não pode abranger limites entre topologias de dispositivo.

Requisitos

   
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho devicetopology.h

Confira também

IDeviceTopology Interface

IPart Interface

IPartsList Interface

IPartsList::GetCount

IPartsList::GetPart