KsStreamPointerClone, fonction (ks.h)
La fonction KsStreamPointerClone crée un clone d’un pointeur de flux donné.
Syntaxe
KSDDKAPI NTSTATUS KsStreamPointerClone(
[in] PKSSTREAM_POINTER StreamPointer,
[in, optional] PFNKSSTREAMPOINTER CancelCallback,
[in] ULONG ContextSize,
[out] PKSSTREAM_POINTER *CloneStreamPointer
);
Paramètres
[in] StreamPointer
Pointeur vers une structure KSSTREAM_POINTER représentant le pointeur de flux à cloner.
[in, optional] CancelCallback
Optionnel. Pointeur vers un minidriver fourni AVStrMiniCancelCallback routine. AVStream appelle cette routine si l’IRP associé à CloneStreamPointer est annulé.
[in] ContextSize
Ce paramètre indique le nombre d’octets d’informations de contexte minidriver dont le pointeur de flux de clone obtenu doit avoir. Si ce n’est pas différent de zéro, le nombre demandé d’octets est alloué immédiatement après le pointeur de flux retourné, et le champ Context de CloneStreamPointer pointe vers la mémoire allouée.
[out] CloneStreamPointer
Pointeur vers un pointeur vers une structure KSSTREAM_POINTER. Une fois l’opération de clonage terminée, cloneStreamPointer contient un pointeur vers l’adresse du pointeur de flux cloné.
Valeur de retour
KsStreamPointerClone retourne STATUS_SUCCESS, indiquant que l’opération de clonage s’est terminée normalement, ou un code d’erreur approprié.
Remarques
Le clone résultant fait initialement référence à la même trame de données que le pointeur de flux d’origine et se trouve dans le même état (verrouillé ou déverrouillé). L’ajout d’un pointeur de flux clone faisant référence à une trame de données incrémente le nombre de références sur cette image particulière. Notez que le cadre en question, et par conséquent, l’IRP auquel appartient le cadre n’est pas terminé tant que le nombre de références ne passe pas à zéro.
Vous pouvez utiliser le paramètre ContextSize de cet appel pour réduire les appels d’allocation.
Voir également pointeurs de flux.
Exigences
Exigence | Valeur |
---|---|
client minimum 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 | Universel |
d’en-tête | ks.h (include Ks.h) |
bibliothèque | Ks.lib |
IRQL | <=DISPATCH_LEVEL |