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) に移動するように通知されているかどうかを判断する必要がある場合は、KSPIN の DeviceState メンバーの値を KSSTATE_RUNと比較することは、これを行う信頼性の高い方法ではありません。 DeviceState は、パイプではなく、ピンが通知された状態を指します。 上記を確実に実行するには、代わりに、この構造体の SetDeviceState コールバックに変数を作成し、この変数をチェックして決定を行います。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Microsoft Windows XP 以降のオペレーティング システムおよび Microsoft DirectX 8.0 以降のバージョンで使用できます。 |
Header | ks.h (Ks.h を含む) |