PCPIN_DESCRIPTOR Struktur (portcls.h)
Die PCPIN_DESCRIPTOR Struktur beschreibt eine Pinfactory.
Syntax
typedef struct {
ULONG MaxGlobalInstanceCount;
ULONG MaxFilterInstanceCount;
ULONG MinFilterInstanceCount;
const PCAUTOMATION_TABLE *AutomationTable;
KSPIN_DESCRIPTOR KsPinDescriptor;
} PCPIN_DESCRIPTOR, *PPCPIN_DESCRIPTOR;
Angehörige
MaxGlobalInstanceCount
Gibt die globale maximale Anzahl von Male an, mit denen dieser Pintyp instanziiert werden kann. Das globale Maximum zählt die Anzahl der Pininstanzen, die der Adaptertreiber über alle Instanzen des Filters hinweg unterstützen kann. Die Anzahl kann auf Null 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 von Male an, mit denen der Pin in einer einzelnen Instanz des Filters instanziiert werden kann. Die Anzahl kann auf Null 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 die Pin in einer Instanz des Filters instanziiert werden muss. Dieses Element ist eine bestimmte untere Grenze 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- werden, um anzugeben, dass keine Automatisierung unterstützt wird. Die Automatisierungstabelle gibt die Handler für die Eigenschaften und Ereignisse an, die zur Pininstanz gehören.
KsPinDescriptor
Beschreibt die Pin-Factory. Dieses Element ist eine Struktur vom Typ KSPIN_DESCRIPTOR. Eine Pinfactory kann Nullschnittstellen und null Mittel aufweisen. Die Liste der Schnittstellen wird in allen Fällen ignoriert. Die Standardmediumliste wird standardmäßig auf eine Liste mit nur Geräte-E/A (KSMEDIUM_STANDARD_DEVIO) festgelegt.
Bemerkungen
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 MaxGlobalInstanceCount, MaxFilterInstanceCountund MinFilterInstanceCount Member sind maximale und minimale Anzahlen, die die Ressourceneinschränkungen und funktionalen Anforderungen des Pins beschreiben. Ein automatisch initialisiertes 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, die Liste der verfügbaren Pinressourcen dynamisch zu überarbeiten, da Pins zugewiesen und freigegeben werden.
Der wert MaxGlobalInstanceCount ist ähnlich wie folgt:
- Der PinCount Methode GlobalPossible Aufrufparameters.
- Der wert der KSPROPERTY_PIN_GLOBALCINSTANCES Eigenschaft (PossibleCount Member der KSPIN_CINSTANCES Struktur).
- Der PinCount Methode FilterPossible Aufrufparameters.
- Der wert der KSPROPERTY_PIN_CINSTANCES Eigenschaft (PossibleCount Member der KSPIN_CINSTANCES Struktur).
- Der FilterNecessary--Aufrufparameter der PinCount-Methode.
- Der wert der KSPROPERTY_PIN_NECESSARYINSTANCES Eigenschaft.
Ein einfaches Codebeispiel, das zeigt, wie die PCPIN_DESCRIPTOR Struktur verwendet wird, finden Sie unter Verfügbarmachen der Filtertopologie.
Weitere Informationen finden Sie unter Pin Factories.
Anforderungen
Anforderung | Wert |
---|---|
Header- | portcls.h (include Portcls.h) |
Siehe auch
KSPROPERTY_PIN_GLOBALCINSTANCES