struttura PCPIN_DESCRIPTOR (portcls.h)
La struttura PCPIN_DESCRIPTOR descrive una factory di pin.
Sintassi
typedef struct {
ULONG MaxGlobalInstanceCount;
ULONG MaxFilterInstanceCount;
ULONG MinFilterInstanceCount;
const PCAUTOMATION_TABLE *AutomationTable;
KSPIN_DESCRIPTOR KsPinDescriptor;
} PCPIN_DESCRIPTOR, *PPCPIN_DESCRIPTOR;
Members
MaxGlobalInstanceCount
Specifica il numero massimo globale di istanze di questo tipo di pin. Il numero massimo globale conta il numero di istanze del pin che il driver dell'adattatore può supportare in tutte le istanze del filtro. Il conteggio può essere impostato su zero per indicare che non è possibile creare un'istanza del pin. Un valore di ULONG(-1) indica che è possibile creare un'istanza del pin per qualsiasi numero di volte. Qualsiasi altro valore indica un numero specifico di volte in cui è possibile creare un'istanza del pin.
MaxFilterInstanceCount
Specifica il numero massimo di istanze del pin in una singola istanza del filtro. Il conteggio può essere impostato su zero per indicare che non è possibile creare un'istanza del pin. Un valore di ULONG(-1) indica che è possibile creare un'istanza del pin per qualsiasi numero di volte. Qualsiasi altro valore indica un numero specifico di volte in cui è possibile creare un'istanza del pin.
MinFilterInstanceCount
Specifica il numero minimo di volte in cui è necessario creare un'istanza del pin in un'istanza del filtro. Questo membro è un limite inferiore definito sul numero di istanze di un pin che deve esistere affinché un filtro possa funzionare.
AutomationTable
Puntatore alla tabella di automazione. Questo membro è un puntatore a una struttura di tipo PCAUTOMATION_TABLE. Il puntatore può essere NULL per indicare che non è supportata alcuna automazione. La tabella di automazione specifica i gestori per le proprietà e gli eventi appartenenti all'istanza del pin.
KsPinDescriptor
Descrive la factory di pin. Questo membro è una struttura di tipo KSPIN_DESCRIPTOR. Una factory di pin può avere zero interfacce e zero medie. L'elenco di interfacce viene ignorato in tutti i casi. L'elenco standard-medio verrà usato per impostazione predefinita in un elenco contenente solo l'I/O del dispositivo (KSMEDIUM_STANDARD_DEVIO).
Commenti
Questa struttura viene usata per descrivere ogni pin factory implementata da un driver miniport. La struttura PCFILTER_DESCRIPTOR del driver contiene un puntatore a una matrice di strutture PCPIN_DESCRIPTOR . Il numero di elementi nella matrice è uguale al numero di pin factory nel filtro.
I membri MaxGlobalInstanceCount, MaxFilterInstanceCount e MinFilterInstanceCount sono conteggi massimi e minimi che descrivono le restrizioni delle risorse e i requisiti funzionali del pin. Una matrice di PCPIN_DESCRIPTOR inizializzata automaticamente può presentare solo una stima statica delle risorse pin disponibili. Il metodo IPinCount::P inCount consente al driver di rivedere dinamicamente l'elenco delle risorse pin disponibili man mano che i pin vengono allocati e liberati.
Il valore MaxGlobalInstanceCount è simile al seguente:
- Parametro di chiamata GlobalPossible del metodo PinCount.
- Valore della proprietà KSPROPERTY_PIN_GLOBALCINSTANCES (membro PossibleCount della struttura KSPIN_CINSTANCES).
- Parametro di chiamata FilterPossible del metodo PinCount.
- Valore della proprietà KSPROPERTY_PIN_CINSTANCES (membro PossibleCount della struttura KSPIN_CINSTANCES).
- Parametro di chiamata FilterNecessary del metodo PinCount.
- Valore della proprietà KSPROPERTY_PIN_NECESSARYINSTANCES .
Per un semplice esempio di codice che mostra come viene usata la struttura PCPIN_DESCRIPTOR , vedere Esposizione della topologia filtro.
Per altre informazioni, vedere Pin Factory.
Requisiti
Requisito | Valore |
---|---|
Intestazione | portcls.h (include Portcls.h) |
Vedi anche
KSPROPERTY_PIN_GLOBALCINSTANCES