PCPIN_DESCRIPTOR-Struktur (portcls.h)
Die PCPIN_DESCRIPTOR-Struktur beschreibt eine Pin Factory.
Syntax
typedef struct {
ULONG MaxGlobalInstanceCount;
ULONG MaxFilterInstanceCount;
ULONG MinFilterInstanceCount;
const PCAUTOMATION_TABLE *AutomationTable;
KSPIN_DESCRIPTOR KsPinDescriptor;
} PCPIN_DESCRIPTOR, *PPCPIN_DESCRIPTOR;
Member
MaxGlobalInstanceCount
Gibt an, wie oft dieser Pintyp global maximal instanziiert werden kann. Das globale Maximum zählt die Anzahl von Pininstanzen, die der Adaptertreiber für alle Instanzen des Filters unterstützen kann. Die Anzahl kann auf 0 festgelegt werden, um anzugeben, dass der Pin nicht instanziiert werden kann. Ein Wert von ULONG(-1) gibt an, dass der Pin beliebig oft instanziiert werden kann. Jeder andere Wert gibt an, wie oft der Pin instanziiert werden kann.
MaxFilterInstanceCount
Gibt die maximale Anzahl an, mit der der Pin auf einer einzelnen instance des Filters instanziiert werden kann. Die Anzahl kann auf 0 festgelegt werden, um anzugeben, dass der Pin nicht instanziiert werden kann. Ein Wert von ULONG(-1) gibt an, dass der Pin beliebig oft instanziiert werden kann. Jeder andere Wert gibt an, wie oft der Pin instanziiert werden kann.
MinFilterInstanceCount
Gibt die Mindestanzahl an, mit der der Pin auf einer instance des Filters instanziiert werden muss. Dieses Element ist eine eindeutige Untergrenze für die Anzahl der Instanzen eines Pins, die vorhanden sein müssen, damit ein Filter funktionieren kann.
AutomationTable
Zeiger auf die Automatisierungstabelle. Dieses Element ist ein Zeiger auf eine Struktur vom Typ PCAUTOMATION_TABLE. Der Zeiger kann NULL sein, um anzugeben, dass keine Automatisierung unterstützt wird. Die Automatisierungstabelle gibt die Handler für die Eigenschaften und Ereignisse an, die zum Instance der Anheftung gehören.
KsPinDescriptor
Beschreibt die Pin factory. Dieses Element ist eine Struktur vom Typ KSPIN_DESCRIPTOR. Eine Pin factory kann null Schnittstellen und null Medien aufweisen. Die Liste der Schnittstellen wird in allen Fällen ignoriert. Die Standard-Mittlere Liste ist standardmäßig eine Liste, die nur Geräte-E/A (KSMEDIUM_STANDARD_DEVIO) enthält.
Hinweise
Diese Struktur wird verwendet, um jede der Pin-Fabriken zu beschreiben, die ein Miniporttreiber implementiert. Die PCFILTER_DESCRIPTOR-Struktur des Treibers enthält einen Zeiger auf ein Array von PCPIN_DESCRIPTOR Strukturen. Die Anzahl der Elemente im Array entspricht der Anzahl der Pin-Fabriken im Filter.
Die Member MaxGlobalInstanceCount, MaxFilterInstanceCount und MinFilterInstanceCount sind maximale und minimale Anzahlen, die die Ressourceneinschränkungen und funktionalen Anforderungen des Pins beschreiben. Ein autoinitialisiertes PCPIN_DESCRIPTOR Array kann nur eine statische Schätzung der verfügbaren Pinressourcen darstellen. Die IPinCount::P inCount-Methode bietet dem Treiber eine Möglichkeit, seine Liste der verfügbaren Pinressourcen dynamisch zu überarbeiten, wenn Pins zugewiesen und freigegeben werden.
Der MaxGlobalInstanceCount-Wert ähnelt in der Bedeutung:
- Der GlobalPossible-Aufrufparameter der PinCount-Methode.
- Der KSPROPERTY_PIN_GLOBALCINSTANCES -Eigenschaftswert (das Element "PossibleCount " der KSPIN_CINSTANCES-Struktur).
- Der FilterPossible-Aufrufparameter der PinCount-Methode.
- Der KSPROPERTY_PIN_CINSTANCES -Eigenschaftswert (das Element "PossibleCount" der KSPIN_CINSTANCES-Struktur).
- Der FilterNecessary-Aufrufparameter derPinCount-Methode.
- Der KSPROPERTY_PIN_NECESSARYINSTANCES-Eigenschaftswert .
Ein einfaches Codebeispiel, das zeigt, wie die PCPIN_DESCRIPTOR-Struktur verwendet wird, finden Sie unter Verfügbarmachen der Filtertopologie.
Weitere Informationen finden Sie unter Anheften von Fabriken.
Anforderungen
Anforderung | Wert |
---|---|
Header | portcls.h (include Portcls.h) |
Weitere Informationen
KSPROPERTY_PIN_GLOBALCINSTANCES