Partager via


IPortWavePciStream ::TerminatePacket, méthode (portcls.h)

La méthode TerminatePacket met fin au paquet actuellement mappé.

Syntaxe

NTSTATUS TerminatePacket();

Valeur de retour

TerminatePacket retourne STATUS_SUCCESS si l’appel a réussi. Sinon, la méthode retourne un code d’erreur approprié.

Remarques

Cette méthode est principalement utilisée pour les situations de capture dans lesquelles les paquets d’E/S doivent se terminer à des points spécifiques du flux (par exemple, pour synchroniser avec des images vidéo). La mémoire tampon de données d’une broche de capture sur un périphérique audio se compose d’un ou plusieurs paquets d’E/S. Chaque paquet d’E/S est la partie de la mémoire tampon de données attachée à un IRP de mappage particulier. Par défaut, alors qu’un flux de capture est dans l’état KSSTATE_RUN, le contenu d’un paquet d’E/S devient disponible pour le client uniquement lorsque le dernier mappage dans le paquet a été rempli. La méthode TerminatePacket rend un paquet partiellement rempli immédiatement disponible pour le client sans attendre d’autres données de capture.

La modification de l’état d’un flux de capture de KSSTATE_RUN en KSSTATE_STOP met automatiquement fin au paquet d’E/S actuel.

Exigences

Exigence Valeur
plateforme cible Universel
d’en-tête portcls.h (include Portcls.h)
IRQL <=DISPATCH_LEVEL