DirectShow DirectShow 레퍼런스 인터페이스 IKsPropertySet Get [목차열람] [주소복사] [슬롯비우기] |
Microsoft DirectX 9.0 |
Get 메서드는, 프로퍼티 세트 GUID 및 프로퍼티 ID 로 식별되는 프로퍼티를 얻어온다.
구문
HRESULT Get(
REFGUID guidPropSet,
DWORD dwPropID,
LPVOID pInstanceData,
DWORD cbInstanceData,
LPVOID pPropData,
DWORD cbPropData,
DWORD *pcbReturned
);
파라미터
guidPropSet
[in] 프로퍼티 세트의 GUID 를 지정한다.
dwPropID
[in] 프로퍼티 세트내에서의 프로퍼티의 식별자를 지정한다.
pInstanceData
[in] 프로퍼티에 대응하는 인스턴스 데이터를 보관 유지하는 바이트의 배열의 포인터.
cbInstanceData
[in] pInstanceData 로 지정되는 배열의 사이즈를 지정한다.
pPropData
[out] 프로퍼티 데이터를 받는 바이트의 배열의 포인터.
cbPropData
[in] pPropData 로 지정되는 배열의 사이즈를 지정한다.
pcbReturned
[out] 메서드가 pPropData 배열에 의해 돌려준 바이트수를 받는 변수의 포인터.
반환값
HRESULT 값을 돌려준다. 가능한 값은 다음과 같다.
값 | 설명 |
S_OK | 성공. |
E_PROP_SET_UNSUPPORTED | 프로퍼티 세트가 지원하지 않는다. |
E_PROP_ID_UNSUPPORTED | 지정된 프로퍼티 세트로 그 프로퍼티 ID 가 지원하지 않는다. |
주의
주 dsound.h 헤더 파일에는 이 이름으로 다른 인터페이스가 존재하고 있다. 이러한 인터페이스 끼리에게 호환성은 없다. WDM 드라이버와 사용자 모드 구성 요소의 사이에 프로퍼티를 건네주는 경우는 IKsControl 인터페이스 (자세한 것은 DirectShow DDK 의 문서를 참조)를 사용하는 것을 추천한다.
프로퍼티를 얻어오려면, 이 메서드가 데이터를 설정하는 버퍼를 할당하는 것. 필요한 버퍼 사이즈를 판단하려면 ,pPropData 에 NULL,cbPropData 에 0 을 지정한다. 필요한 버퍼 사이즈가 pcbReturned 에 반환된다.
샘플 코드
다음의 예에서는,AMPROPERTY_PIN_CATEGORY 프로퍼티를 취득해, 핀에 그 핀 카테고리를 조회하고 있다 ( 「핀 프로퍼티 세트」를 참조할것).
IKsPropertySet *pKs;
GUID guid;
DWORD cbBytes;
/* IksProperty 세트의 핀을 조회한다 (가리키지 않았다). */
pKs->Get(AMPROPSETID_Pin, AMPROPERTY_PIN_CATEGORY, NULL, 0, &guid,
sizeof(GUID), &cbBytes);
pKs->Release();
참조