KSPIN_DISPATCH 구조체(ks.h)
KSPIN_DISPATCH 구조는 클라이언트가 핀 이벤트 알림을 받기 위해 등록할 수 있는 콜백을 설명합니다.
통사론
typedef struct _KSPIN_DISPATCH {
PFNKSPINIRP Create;
PFNKSPINIRP Close;
PFNKSPIN Process;
PFNKSPINVOID Reset;
PFNKSPINSETDATAFORMAT SetDataFormat;
PFNKSPINSETDEVICESTATE SetDeviceState;
PFNKSPIN Connect;
PFNKSPINVOID Disconnect;
const KSCLOCK_DISPATCH *Clock;
const KSALLOCATOR_DISPATCH *Allocator;
} KSPIN_DISPATCH, *PKSPIN_DISPATCH;
회원
Create
미니 드라이버 제공 AVStrMiniPinCreate 콜백 루틴에 대한 포인터입니다. 선택적. NULL 수 있습니다.
Close
미니 드라이버 제공 AVStrMiniPinClose 콜백 루틴에 대한 포인터입니다. 선택적. NULL 수 있습니다.
Process
미니 드라이버 제공 AVStrMiniPinProcess 콜백 루틴에 대한 포인터입니다. 선택적. NULL 수 있습니다.
Reset
미니 드라이버 제공 AVStrMiniPinReset 콜백 루틴에 대한 포인터입니다. 선택적. NULL 수 있습니다.
SetDataFormat
미니 드라이버 제공 AVStrMiniPinSetDataFormat 콜백 루틴에 대한 포인터입니다. 선택적. NULL 수 있습니다.
SetDeviceState
미니 드라이버 제공 AVStrMiniPinSetDeviceState 콜백 루틴에 대한 포인터입니다. 선택적. NULL 수 있습니다.
Connect
미니 드라이버 제공 AVStrMiniPinConnect 콜백 루틴에 대한 포인터입니다. 선택적. NULL 수 있습니다.
Disconnect
미니 드라이버 제공 AVStrMiniPinDisconnect 콜백 루틴에 대한 포인터입니다. 선택적. NULL 수 있습니다.
Clock
KSCLOCK_DISPATCH 구조체에 대한 포인터입니다. 시계를 노출하는 핀에 대해 이 멤버를 지정합니다. 선택적. NULL 수 있습니다.
Allocator
KSALLOCATOR_DISPATCH 구조체에 대한 포인터입니다. 커널 수준 할당을 수행할 수 있는 핀에 이 멤버를 지정합니다. 선택적. NULL 수 있습니다.
발언
모든 콜백 포인터는 NULL 수 있습니다. 이는 미니 드라이버가 이 특정 디스패치에 대한 알림을 받을 필요가 없음을 나타냅니다.
미니 드라이버가 특정 상태(예: KSSTATE_RUN)로 이동하라는 신호를 받았는지 여부를 결정해야 하는 경우 KSPINDeviceState 멤버의 값을 KSSTATE_RUN 비교하는 것은 신뢰할 수 있는 방법이 아닙니다. DeviceState 파이프가 아니라 핀이 이동하도록 신호를 받은 상태를 나타냅니다. 위의 작업을 안정적으로 수행하려면 대신 이 구조체의 SetDeviceState 콜백에 변수를 만든 다음 이 변수를 확인하여 결정합니다.
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Microsoft Windows XP 이상 운영 체제 및 Microsoft DirectX 8.0 이상 버전에서 사용할 수 있습니다. |
헤더 | ks.h(Ks.h 포함) |