다음을 통해 공유


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

"to" 부분에 대한 포인터입니다. 이 매개 변수는 신호 경로 끝에 있는 파트의 IPart 인터페이스에 대한 포인터입니다.

[in] bRejectMixedPaths

혼합 데이터가 포함된 경로를 거부할지 여부를 지정합니다. bRejectMixedPathsTRUE(0이 아닌 경우) 메서드는 믹서가 포함된 데이터 경로(즉, 둘 이상의 입력 신호를 합산하는 처리 노드)를 무시합니다. FALSE이면 메서드는 경로에 믹서가 포함되어 있는지 여부에 관계없이 "from" 및 "to" 부분을 연결하는 경로를 찾으려고 합니다.

[out] ppParts

메서드가 instance IPartsList 인터페이스의 주소를 쓰는 포인터 변수에 대한 포인터입니다. 이 인터페이스는 "from" 부분을 "to" 파트에 연결하는 신호 경로의 파트 목록을 캡슐화합니다. 이 메서드를 통해 호출자는 인터페이스에 대한 계산된 참조를 가져옵니다. 호출자는 인터페이스의 Release 메서드를 호출하여 더 이상 필요하지 않은 경우 인터페이스를 해제 할 책임이 있습니다. GetSignalPath 호출이 실패하면 *ppPartsNULL입니다.

반환 값

메서드가 성공하면 S_OK가 반환되고, 실패할 경우 가능한 반환 코드는 다음 표에 표시된 값을 포함하지만 이에 국한되지 않습니다.

반환 코드 설명
E_POINTER
pIPartFrom, pIPartTo 또는 ppParts 매개 변수는 NULL입니다.
E_NOTFOUND
두 부분을 연결하는 경로를 찾을 수 없습니다.
E_NOINTERFACE
매개 변수 pIPartFrom 또는 pIPartTo 는 유효한 IPart 인터페이스를 가리키지 않습니다.
E_OUTOFMEMORY
메모리가 부족합니다.

설명

이 메서드는 지정된 신호 경로를 따라 있는 부분 목록을 포함하는 IPartsList 인터페이스 instance 만듭니다. 부품 목록의 파트는 신호 경로의 상대 위치에 따라 정렬됩니다. "to" 부분은 목록의 첫 번째 항목이고 "from" 부분은 목록의 마지막 항목입니다.

목록에 n 개의 파트가 포함된 경우 "to" 및 "from" 파트는 각각 목록 인덱스 0 및 n– 1로 식별됩니다. 파트 목록의 파트 수를 얻으려면 IPartsList::GetCount 메서드를 호출합니다. 인덱스로 파트를 검색하려면 IPartsList::GetPart 메서드를 호출합니다.

신호 경로의 파트는 모두 동일한 디바이스 토폴로지의 일부여야 합니다. 경로는 디바이스 토폴로지 간의 경계를 넘을 수 없습니다.

요구 사항

   
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 devicetopology.h

추가 정보

IDeviceTopology 인터페이스

IPart 인터페이스

IPartsList 인터페이스

IPartsList::GetCount

IPartsList::GetPart