Condividi tramite


Funzione KsPinDataIntersection (ks.h)

La funzione KsPinDataIntersection gestisce la proprietà KSPROPERTY_PIN_DATAINTERSECTION tramite una funzione di callback ed esegue gran parte della convalida iniziale dei parametri passati. KsPinDataIntersection chiama il minidriver definito KStrIntersectHandler funzione di callback con ogni intervallo di dati potenziale dopo la corrispondenza all'elenco di intervalli di dati assegnati alla factory di pin.

Sintassi

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
);

Parametri

[in] Irp

Specifica l'IRP che descrive la richiesta di proprietà.

[in] Pin

Specifica la proprietà specifica su cui viene eseguita una query.

[out, optional] Data

Specifica i dati specifici della proprietà pin.

[in] DescriptorsCount

Specifica il numero di strutture del descrittore.

[in] Descriptor

Specifica il puntatore all'elenco di strutture di informazioni di aggiunta.

[in] IntersectHandler

Specifica il minidriver definito KStrIntersectHandler funzione di callback per confrontare un intervallo di dati.

Valore restituito

La funzione KsPinDataIntersection restituisce STATUS_SUCCESS se viene trovato un intervallo corrispondente, STATUS_NO_MATCH se non è stato trovato alcun intervallo corrispondente o un errore specifico della proprietà gestita. Il minidriver definito KStrIntersectHandler gestore di intersezione fornito a KsPinDataIntersection viene chiamato con ogni intervallo di dati fornito dal chiamante fino a quando non viene trovata una corrispondenza o si verifica un errore.

Si noti che il minidriver definito KStrIntersectHandler funzione di callback ha un proprio set di valori restituiti.

Osservazioni

Una corrispondenza può verificarsi in tre condizioni: se il formato principale dell'intervallo passato è un carattere jolly o corrisponde a un intervallo factory di pin, se il formato secondario è un carattere jolly o corrisponde e se l'identificatore è un carattere jolly o corrisponde. Poiché la dimensione dell'intervallo di dati può essere variabile, non viene convalidata oltre il controllo che sia almeno la dimensione di una struttura di KSDATARANGE.

Fabbisogno

Requisito Valore
piattaforma di destinazione Universale
intestazione ks.h (include Ks.h)
libreria Ks.lib

Vedere anche

KSDATARANGE

KStrIntersectHandler