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
minidriver 提供的 AVStrMiniPinCreate 回呼例程的指標。 自選。 可為 NULL 。
Close
迷你驅動程式提供的指標 AVStrMiniPinClose 回呼例程。 自選。 可為 NULL 。
Process
迷你驅動程式提供的指標 AVStrMiniPinProcess 回呼例程。 自選。 可為 NULL 。
Reset
AVStrMiniPinReset 回呼例程之 minidriver 提供的指標。 自選。 可為 NULL 。
SetDataFormat
迷你驅動程式提供的指標 AVStrMiniPinSetDataFormat 回呼例程。 自選。 可為 NULL 。
SetDeviceState
迷你驅動程式提供的指標 AVStrMiniPinSetDeviceState 回呼例程。 自選。 可為 NULL 。
Connect
迷你驅動程式提供的指標 AVStrMiniPinConnect 回呼例程。 自選。 可為 NULL 。
Disconnect
AVStrMiniPinDisconnect 回呼例程之 minidriver 提供的指標。 自選。 可為 NULL 。
Clock
KSCLOCK_DISPATCH 結構的指標。 為公開時鐘的針腳指定這個成員。 自選。 可為 NULL 。
Allocator
KSALLOCATOR_DISPATCH 結構的指標。 為能夠執行核心層級配置的針腳指定這個成員。 自選。 可為 NULL 。
言論
任何回呼指標都可以 NULL,表示迷你驅動程式不需要接收此特定分派的通知。
如果 minidriver 需要判斷它是否已收到信號以進入特定狀態(例如KSSTATE_RUN),則比較 KSPIN成員 DeviceState 的值,KSSTATE_RUN 不是一個可靠的方法。 DeviceState 是指針腳已發出信號進入的狀態,而不是管道。 若要可靠地執行上述內容,請改為在此結構的 SetDeviceState 回呼中建立變數,然後檢查此變數以做出判斷。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 適用於 Microsoft Windows XP 和更新版本的作系統,以及 Microsoft DirectX 8.0 和更新版本。 |
標頭 | ks.h (包括 Ks.h) |