KsPinDataIntersection, fonction (ks.h)
La fonction KsPinDataIntersection gère la propriété KSPROPERTY_PIN_DATAINTERSECTION via une fonction de rappel et effectue une grande partie de la validation initiale des paramètres passés. KsPinDataIntersection appelle la fonction de rappel KStrIntersectHandler définie par minidriver avec chaque plage de données potentielle après l’avoir mise en correspondance avec la liste des plages de données attribuées à cette fabrique de broches.
Syntaxe
KSDDKAPI NTSTATUS KsPinDataIntersection(
[in] PIRP Irp,
[in] PKSP_PIN Pin,
[out, optional] PVOID Data,
[in] ULONG DescriptorsCount,
[in] const KSPIN_DESCRIPTOR *Descriptor,
[in] PFNKSINTERSECTHANDLER IntersectHandler
);
Paramètres
[in] Irp
Spécifie l’IRP qui décrit la demande de propriété.
[in] Pin
Spécifie la propriété spécifique en cours d’interrogation.
[out, optional] Data
Spécifie les données spécifiques à la propriété de broche.
[in] DescriptorsCount
Spécifie le nombre de structures de descripteur.
[in] Descriptor
Spécifie le pointeur vers la liste des structures d’informations de broche.
[in] IntersectHandler
Spécifie la fonction de rappel KStrIntersectHandler définie par minidriver pour comparer une plage de données.
Valeur retournée
La fonction KsPinDataIntersection retourne STATUS_SUCCESS si une plage correspondante est trouvée, STATUS_NO_MATCH si aucune plage correspondante n’a été trouvée ou une erreur spécifique à la propriété gérée. Le gestionnaire d’intersection KStrIntersectHandler défini par minidriver fourni à KsPinDataIntersection est appelé avec chaque plage de données fournie par l’appelant jusqu’à ce qu’une correspondance soit trouvée ou qu’une erreur se produise.
Notez que la fonction de rappel KStrIntersectHandler définie par minidriver a son propre jeu de valeurs de retour.
Remarques
Une correspondance peut se produire dans trois conditions : si le format principal de la plage passée est un caractère générique ou correspond à une plage de fabrique de broches, si le sous-format est un caractère générique ou correspond, et si le spécificateur est un caractère générique ou correspond. Étant donné que la taille de la plage de données peut être variable, elle n’est pas validée au-delà de la vérification qu’elle correspond au moins à la taille d’une structure KSDATARANGE .
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
En-tête | ks.h (inclure Ks.h) |
Bibliothèque | Ks.lib |