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 (E/S) 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 retournée
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 des exemples de média 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 a effectué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 l’épingle 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 puisse ê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.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | ksproxy.h (inclure Ksproxy.h) |