Partager via


structure KSPIN_DISPATCH (ks.h)

La structure KSPIN_DISPATCH décrit les rappels pour lesquels les clients peuvent s’inscrire afin de recevoir la notification des événements d’épingle.

Syntaxe

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;

Membres

Create

Pointeur vers un minidriver fourni AVStrMiniPinCreate routine de rappel. Optionnel. Peut être NULL .

Close

Pointeur vers un minidriver fourni AVStrMiniPinClose routine de rappel. Optionnel. Peut être NULL .

Process

Pointeur vers un minidriver fourni AVStrMiniPinProcess routine de rappel. Optionnel. Peut être NULL .

Reset

Pointeur vers une routine de rappel fournie par minidriver AVStrMiniPinReset. Optionnel. Peut être NULL .

SetDataFormat

Pointeur vers un minidriver fourni AVStrMiniPinSetDataFormat routine de rappel. Optionnel. Peut être NULL .

SetDeviceState

Pointeur vers un minidriver fourni AVStrMiniPinSetDeviceState routine de rappel. Optionnel. Peut être NULL .

Connect

Pointeur vers un minidriver fourni AVStrMiniPinConnect routine de rappel. Optionnel. Peut être NULL .

Disconnect

Pointeur vers un minidriver fourni AVStrMiniPinDisconnect routine de rappel. Optionnel. Peut être NULL .

Clock

Pointeur vers une structure KSCLOCK_DISPATCH. Spécifiez ce membre pour une broche qui expose une horloge. Optionnel. Peut être NULL .

Allocator

Pointeur vers une structure KSALLOCATOR_DISPATCH. Spécifiez ce membre pour une broche capable d’effectuer une allocation au niveau du noyau. Optionnel. Peut être NULL .

Remarques

L’un des pointeurs de rappel peut être NULL, ce qui indique que le minidriver n’a pas besoin de recevoir de notification pour cette distribution particulière.

Si le minidriver doit déterminer s’il a été signalé pour accéder à un état spécifique (par exemple KSSTATE_RUN), la comparaison de la valeur du membre DeviceState de KSPIN à KSSTATE_RUN n’est pas une méthode fiable pour ce faire. DeviceState fait référence à l’état auquel la broche a été signalée pour aller, et non le canal. Pour effectuer les opérations ci-dessus de manière fiable, créez plutôt une variable dans l'SetDeviceState rappel de cette structure, puis vérifiez cette variable pour effectuer la détermination.

Exigences

Exigence Valeur
client minimum pris en charge Disponible dans Microsoft Windows XP et les systèmes d’exploitation ultérieurs et dans Microsoft DirectX 8.0 et versions ultérieures.
d’en-tête ks.h (include Ks.h)

Voir aussi

KSALLOCATOR_DISPATCH

KSCLOCK_DISPATCH

KSPIN

KsCompletePendingRequest