структура PCPIN_DESCRIPTOR (portcls.h)
Структура PCPIN_DESCRIPTOR описывает фабрику контактов.
Синтаксис
typedef struct {
ULONG MaxGlobalInstanceCount;
ULONG MaxFilterInstanceCount;
ULONG MinFilterInstanceCount;
const PCAUTOMATION_TABLE *AutomationTable;
KSPIN_DESCRIPTOR KsPinDescriptor;
} PCPIN_DESCRIPTOR, *PPCPIN_DESCRIPTOR;
Члены
MaxGlobalInstanceCount
Указывает глобальное максимальное количество раз, когда можно создавать экземпляры этого типа контактов. Глобальный максимум подсчитывает количество экземпляров контактов, которые драйвер адаптера может поддерживать во всех экземплярах фильтра. Значение счетчика может быть равно нулю, чтобы указать, что экземпляр контакта не может быть создан. Значение ULONG(-1) указывает, что экземпляр контакта можно создавать любое количество раз. Любое другое значение указывает определенное количество раз, когда можно создать экземпляр контакта.
MaxFilterInstanceCount
Указывает максимальное количество раз, когда можно создавать экземпляр контакта в одном экземпляре фильтра. Значение счетчика может быть равно нулю, чтобы указать, что экземпляр контакта не может быть создан. Значение ULONG(-1) указывает, что экземпляр контакта можно создавать любое количество раз. Любое другое значение указывает определенное количество раз, когда можно создать экземпляр контакта.
MinFilterInstanceCount
Указывает минимальное количество раз, когда необходимо создать экземпляр контакта в экземпляре фильтра. Этот элемент является определенной нижней границей числа экземпляров контакта, которые должны существовать, чтобы фильтр мог функционировать.
AutomationTable
Указатель на таблицу автоматизации. Этот элемент является указателем на структуру типа PCAUTOMATION_TABLE. Указатель может иметь значение NULL , чтобы указать, что автоматизация не поддерживается. В таблице автоматизации указываются обработчики свойств и событий, принадлежащих экземпляру pin.
KsPinDescriptor
Описывает фабрику контактов. Этот элемент является структурой типа KSPIN_DESCRIPTOR. Фабрика контактов может иметь ноль интерфейсов и нулевых сред. Список интерфейсов игнорируется во всех случаях. По умолчанию в стандартном списке используется список, содержащий только устройства ввода-вывода (KSMEDIUM_STANDARD_DEVIO).
Комментарии
Эта структура используется для описания каждой фабрики контактов, реализуемой драйвером мини-порта. Структура PCFILTER_DESCRIPTOR драйвера содержит указатель на массив PCPIN_DESCRIPTOR структур. Количество элементов в массиве равно количеству фабрик контактов в фильтре.
Элементы MaxGlobalInstanceCount, MaxFilterInstanceCount и MinFilterInstanceCount — это максимальное и минимальное количество, описывающее ограничения ресурсов и функциональные требования контакта. Автоматически инициализированный массив PCPIN_DESCRIPTOR может представлять только статическую оценку доступных ресурсов контактов. Метод IPinCount::P inCount предоставляет драйверу средства для динамического изменения списка доступных ресурсов контактов по мере выделения и освобождения контактов.
Значение MaxGlobalInstanceCount аналогично значению:
- Параметр вызова GlobalPossible метода PinCount.
- Значение свойства KSPROPERTY_PIN_GLOBALCINSTANCES (элемент PossibleCount структуры KSPIN_CINSTANCES).
- Параметр вызова FilterPossible метода PinCount.
- Значение свойства KSPROPERTY_PIN_CINSTANCES (элемент PossibleCount структуры KSPIN_CINSTANCES).
- Параметр вызова FilterNecessary метода PinCount.
- Значение свойства KSPROPERTY_PIN_NECESSARYINSTANCES .
Простой пример кода, демонстрирующий использование структуры PCPIN_DESCRIPTOR , см. в разделе Предоставление топологии фильтра.
Дополнительные сведения см. в разделе Pin Factories.
Требования
Требование | Значение |
---|---|
Заголовок | portcls.h (включая Portcls.h) |
См. также раздел
KSPROPERTY_PIN_GLOBALCINSTANCES