KsAcquireCachedMdl, fonction (ks.h)
Cette fonction est utilisée pour acquérir le MDL mis en cache par le pilote de port KS. La fonction est utilisée par un pilote en mode noyau pour acquérir la MDL pour un exemple fourni par pipeline généré par un pilote Avstream.
Syntaxe
KSDDKAPI NTSTATUS KsAcquireCachedMdl(
PIRP Irp,
REFGUID Guid,
PFNKSCANCELPINNEDMDL CancelRoutine,
PVOID CancelContext,
PMDL *MdlAddr,
PVOID *ReleaseContext
);
Paramètres
Irp
IRP passé à partir du mode utilisateur contenant l’exemple de mémoire tampon en mode utilisateur.
Guid
GUID extrait de l’élément d’attribut MFSampleExtension_MDLCacheCookie du IMFSample transmis par le pipeline.
CancelRoutine
Annuler la routine, une fonction de rappel fournie par le pilote de miniport Avstream. Cette fonction est appelée lorsque l’état de la broche qui génère l’exemple passe à l’état STOP. La signature de la routine d’annulation est la suivante :
_IRQL_requires_max_(DISPATCH_LEVEL)
typedef
VOID
(*PFNKSCANCELPINNEDMDL)(
_In_ GUID,
_In_ PVOID,
_In_ PVOID
);
GUID
GUID transmis dans la fonction KsAcquireCachedMdl par le pilote de miniport Avstream.
PVOID
Annulez le contexte fourni par le pilote de miniport Avstream dans l’appel de fonction KsAcquireCachedMdl .
PVOID
Contexte de mise en production. Il s’agit de la sortie de la fonction KsAcquireCachedMdl .
CancelContext
Contexte passé au pilote Avstream dans la routine d’annulation. Ce contexte est utilisé par le pilote Avstream pour entrer dans le contexte du pilote.
MdlAddr
Valeur de retour : MDL résultante si KS trouve le MDL stocké pour l’exemple de mémoire tampon.
ReleaseContext
Valeur de retour : contexte à stocker par le pilote Avstream. Ce contexte doit être passé à KS lors de la libération de la MDL acquise par l’appel KsAcquireCachedMdl .
Valeur retournée
Retourne STATUS_SUCCESS pour les conditions de réussite.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
En-tête | ks.h (inclure Ks.h) |
Bibliothèque | Ks.lib |