Partager via


KsPinRegisterIrpCompletionCallback, fonction (ks.h)

La fonction KsPinRegisterIrpCompletionCallback enregistre une routine de rappel définie par minidriver pour une broche spécifiée. AVStream appelle la routine fournie par minidriver lorsqu’un IRP effectue un passage autour du circuit et que le cadre associé à l’IRP est sur le point d’être recyclé ou mis hors service.

Syntaxe

void KsPinRegisterIrpCompletionCallback(
  [in] PKSPIN                Pin,
  [in] PFNKSPINIRPCOMPLETION IrpCompletion
);

Paramètres

[in] Pin

Pointeur vers la structure KSPIN pour laquelle inscrire un rappel d’achèvement.

[in] IrpCompletion

Ce paramètre fournit l’adresse d’une routine AVStrMiniPinIrpCompletion à appeler lorsqu’un IRP termine sa traversée du circuit et est sur le point d’être recyclé ou mis hors service.

Valeur de retour

None

Remarques

KsPinRegisterIrpCompletionCallback doit être appelé à l’adresse IRQL=PASSIVE_LEVEL avant que l’épingle ne passe à KSSTATE_ACQUIRE. Pour plus d’informations sur les états d’épingle, consultez KSSTATE.

Cette fonction est fréquemment appelée à partir du dispatch de création de broche. Voir KSPIN_DISPATCH.

KsPinRegisterIrpCompletionCallback n’est utile que sur les broches sources IRP et est généralement utilisé sur les broches de source de données. Pour une broche de source de données, le rappel est effectué une fois que l’IRP est retourné à la broche et est sur le point d’être recyclé. Toutefois, pour une broche de récepteur de données, le rappel n’est pas lié directement à l’achèvement IRP. AVStream effectue toujours le rappel lorsque l’IRP est retourné pour recyclage. Ce retour ne se produit pas tant que l’IRP n’a pas traversé toutes les files d’attente qui doivent utiliser les données qu’il contient. Pour plus d’informations sur les broches source/récepteur IRP et les broches source de données/récepteur, consultez les membres DataFlow et Communication de la structure KSPIN_DESCRIPTOR .

KsPinRegisterIrpCompletionCallback diffère considérablement de KsPinRegisterFrameReturnCallback en ce que cette routine ne place pas l’épingle dans un nouveau mode ; il inscrit simplement une routine de rappel.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible dans Microsoft Windows XP et les systèmes d’exploitation ultérieurs et DirectX 8.0 et versions ultérieures de DirectX.
Plateforme cible Universal
En-tête ks.h (inclure Ks.h)
Bibliothèque Ks.lib
IRQL PASSIVE_LEVEL

Voir aussi

AVStrMiniPinCreate

AVStrMiniPinIrpCompletion

KSPIN

KSPIN_DISPATCH

KSSTATE

KsPinRegisterFrameReturnCallback