IKsControl 인터페이스(ks.h)
IKsControl 인터페이스는 AVStream 필터 및 핀에 구현된 COM 스타일 인터페이스입니다. 이를 통해 커널 모드의 클라이언트가 AVStream 자동화 개체(속성, 메서드 및 이벤트)에 액세스할 수 있습니다.
이 인터페이스에 해당하는 커널 모드 에 대한 자세한 내용은 IKsControl(ksproxy.h) 커널 스트리밍 프록시 COM 인터페이스를 참조하세요.
상속
IKsControl 인터페이스는 IUnknown 인터페이스에서 상속됩니다.
메서드
IKsControl 인터페이스에는 이러한 메서드가 있습니다.
IKsControl::KsEvent IKsControl::KsEvent 메서드는 이벤트 집합에서 사용할 수 있는 다른 정의된 지원 작업과 함께 이벤트를 사용하거나 사용하지 않도록 설정합니다. |
IKsControl::KsMethod IKsControl::KsMethod 메서드는 메서드 집합에서 사용할 수 있는 다른 정의된 지원 작업과 함께 메서드를 KS 개체로 보냅니다. |
IKsControl::KsProperty IKsControl::KsProperty 메서드는 속성 집합에서 사용할 수 있는 다른 정의된 지원 작업과 함께 속성을 설정하거나 속성 정보를 검색합니다. |
설명
참고:IKsControl 인터페이스는 KSPROPERTYSETID_ExtendedCameraControl 속성 집합의 KSPROPERTY_CAMERACONTROL_EXTENDED_PROPERTY 속성과 함께 사용하면 안 됩니다. IMFExtendedCameraController를 사용하세요.
미니드라이버들은 일반적으로 KsPinGetConnectedFilterInterface 또는 KsPinGetConnectedPinInterface 호출을 통해 IKsControl 인터페이스를 획득합니다. COM 스타일 인터페이스이므로 이 인터페이스를 가져오기 위한 함수 호출은 QueryInterface 메서드를 호출하며, 이 메서드는 AddRef 메서드를 호출합니다. 따라서 미니 드라이버는 이러한 단계를 수행할 필요가 없습니다.
그러나 클라이언트가 IKsControl 인터페이스를 완료하는 즉시 Release 메서드를 호출하여 IKsControl을 해제해야 합니다.
C로 작성된 미니드라이버에서는 IKsControl 인터페이스를 C++ 추상 기본 클래스 대신 함수 테이블에 대한 포인터가 포함된 구조체로 조작합니다.
C++로 작성된 클라이언트는 다음을 수행합니다.
IKsControl *Control;
if (NT_SUCCESS (
KsPinGetConnectedPinInterface (
Pin,
IID_IKsControl,
(PVOID *)&Control) )
) {
Control -> KsProperty (...);
Control -> Release ();
}
그러나 C로 작성된 클라이언트는 대신 다음 코드를 사용합니다.
IKsControl *Control;
If (NT_SUCCESS (
KsPinGetConnectedPinInterface (
Pin,
IID_IKsControl,
(PVOID *)&Control) )
) {
Control -> lpVtbl -> KsProperty (...);
Control -> lpVtbl -> Release ();
}
자세한 내용은 AVStream 개요를 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | Windows |
헤더 | ks.h(Ks.h 포함) |