IKsInterfaceHandler ::KsCompleteIo, méthode (ksproxy.h)
La méthode KsCompleteIo nettoie les en-têtes étendus et libère des exemples multimédias une fois l’entrée et la sortie terminées.
Syntaxe
HRESULT KsCompleteIo(
[in, out] PKSSTREAM_SEGMENT StreamSegment
);
Paramètres
[in, out] StreamSegment
Pointeur vers une structure KSSTREAM_SEGMENT qui contient des informations d’en-tête pour qu’un segment de flux se termine.
Valeur de retour
Retourne NOERROR en cas de réussite ; sinon, retourne un code d’erreur.
Remarques
La méthode KsCompleteIo ignore la mémoire allouée, met à jour les exemples multimédias et décrémente le nombre d’éléments d’attente pour le proxy.
La méthode KsCompleteIo doit déterminer le type d’opération d’E/S que la méthode IKsInterfaceHandler ::KsProcessMediaSamples terminée à partir du membre IoOperation de la structure KSSTREAM_SEGMENT. Si l’opération d’E/S lisait des données à partir d’un flux (KsIoOperation_Read du type énuméré KSIOOPERATION), KsCompleteIo effectue les actions suivantes pour remettre l’exemple d’une broche de sortie à la broche d’entrée connectée :
- Reflète les informations d’en-tête de flux dans l’interface IMediaSample.
- Appelle la méthode IKsPin ::KsDeliver de la broche de sortie pour remettre l’exemple. KsDeliver libère l’exemple afin que lors de la mise en file d’attente des mémoires tampons sur l’appareil, l’exemple peut être récupéré s’il s’agit du dernier exemple. La broche d’entrée termine ensuite les E/S et il est sûr de libérer l’exemple.
Exigences
Exigence | Valeur |
---|---|
plateforme cible | Bureau |
d’en-tête | ksproxy.h (include Ksproxy.h) |