Метод IDeviceTopology::GetSignalPath (devicetopology.h)
Метод GetSignalPath получает список частей в пути сигнала, который связывает две части, если путь существует.
Синтаксис
HRESULT GetSignalPath(
[in] IPart *pIPartFrom,
[in] IPart *pIPartTo,
[in] BOOL bRejectMixedPaths,
[out] IPartsList **ppParts
);
Параметры
[in] pIPartFrom
Указатель на часть from. Этот параметр является указателем на интерфейс IPart части в начале пути сигнала.
[in] pIPartTo
Указатель на часть "на". Этот параметр является указателем на интерфейс IPart части в конце пути сигнала.
[in] bRejectMixedPaths
Указывает, следует ли отклонять пути, содержащие смешанные данные. Если параметр bRejectMixedPaths имеет значение TRUE (ненулевое), метод игнорирует любой путь к данным, содержащий микшер (то есть узел обработки, который суммирует два или более входных сигнала). Если значение FALSE, метод попытается найти путь, соединяющий части "from" и "to", независимо от того, содержит ли путь микшер.
[out] ppParts
Указатель на переменную указателя, в которую метод записывает адрес экземпляра интерфейса IPartsList . Этот интерфейс инкапсулирует список частей в пути сигнала, который соединяет часть "от" с частью "к". С помощью этого метода вызывающий объект получает подсчитываемую ссылку на интерфейс. Вызывающий объект отвечает за освобождение интерфейса, когда он больше не нужен, путем вызова метода Release интерфейса. Если вызов GetSignalPath завершается сбоем, *ppParts имеет значение NULL.
Возвращаемое значение
Если метод завершается успешно, возвращает значение S_OK. В случае сбоя возможные коды возврата включают, но не ограничиваются ими, значения, показанные в следующей таблице.
Код возврата | Описание |
---|---|
|
Параметр pIPartFrom, pIPartTo или ppParts имеет значение NULL. |
|
Путь, связывающий две части, не найден. |
|
Параметр pIPartFrom или pIPartTo не указывает на допустимый интерфейс IPart . |
|
Недостаточно памяти. |
Комментарии
Этот метод создает экземпляр интерфейса IPartsList , содержащий список частей, лежащих вдоль указанного пути сигнала. Части в списке деталей упорядочены в соответствии с их относительными положениями в пути сигнала. Часть "to" является первым элементом в списке, а часть "from" — последним элементом в списке.
Если список содержит n частей, части "to" и "from" определяются индексами списка 0 и n–1 соответственно. Чтобы получить количество частей в списке частей, вызовите метод IPartsList::GetCount . Чтобы получить часть по индексу, вызовите метод IPartsList::GetPart .
Все части в пути сигнала должны быть частью одной топологии устройства. Путь не может охватывать границы между топологиями устройств.
Требования
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | devicetopology.h |