структура HW_STREAM_INFORMATION (strmini.h)
Структура HW_STREAM_INFORMATION описывает семантику потоковой передачи ядра, поддерживаемую отдельными потоками, как часть структуры HW_STREAM_DESCRIPTOR .
Синтаксис
typedef struct _HW_STREAM_INFORMATION {
ULONG NumberOfPossibleInstances;
KSPIN_DATAFLOW DataFlow;
BOOLEAN DataAccessible;
ULONG NumberOfFormatArrayEntries;
PKSDATAFORMAT *StreamFormatsArray;
PVOID ClassReserved[4];
ULONG NumStreamPropArrayEntries;
PKSPROPERTY_SET StreamPropertiesArray;
ULONG NumStreamEventArrayEntries;
PKSEVENT_SET StreamEventsArray;
GUID *Category;
GUID *Name;
ULONG MediumsCount;
const KSPIN_MEDIUM *Mediums;
BOOLEAN BridgeStream;
ULONG Reserved[2];
} HW_STREAM_INFORMATION, *PHW_STREAM_INFORMATION;
Члены
NumberOfPossibleInstances
Указывает количество возможных экземпляров этого потока, которые можно открыть.
DataFlow
Направление, в которое могут перемещаться данные в этом потоке. Для однонаправленного потока данных DataFlow имеет значение KSPIN_DATAFLOW_IN или KSPIN_DATAFLOW_OUT.
DataAccessible
Указывает значение TRUE , если потоковые данные доступны драйверу класса.
NumberOfFormatArrayEntries
Количество записей в массиве, начинающегося с адреса в элементе StreamFormatsArray .
StreamFormatsArray
Указатель на начало массива диапазонов данных, поддерживаемых этим потоком. (Имя этого элемента обманчиво. Этот элемент указывает на массив структур KSDATARANGE , а не на структуры KSDATAFORMAT.)
ClassReserved[4]
Зарезервировано для использования драйвером класса. Не используйте.
NumStreamPropArrayEntries
Количество записей в массиве, начинающегося с адреса в элементе StreamPropertiesArray .
StreamPropertiesArray
Указатель на начало массива наборов свойств, поддерживаемых этим потоком.
NumStreamEventArrayEntries
Число записей в массиве, начинающегося с адреса в поле StreamEventsArray .
StreamEventsArray
Указатель на начало массива наборов событий, поддерживаемых данным потоком.
Category
Указывает GUID категории контактов.
Name
Указывает GUID локализованного имени строки Юникода для типа закрепления, хранящегося в реестре.
MediumsCount
Количество записей в массиве, начинающегося с адреса в поле Средние .
Mediums
Указатель на начало массива KSPIN_MEDIUM структур, поддерживаемых этим потоком. Если в мини-накопителе не указан средний, драйвер класса использует KSMEDIUMSETID_STANDARD, KSMEDIUM_TYPE_ANYINSTANCE средний в качестве значения по умолчанию.
BridgeStream
Если задано значение TRUE, тип связи базового типа закрепления этого потока KSPIN_COMMUNICATION_BRIDGE. В противном случае типом связи по умолчанию для потока является KSPIN_COMMUNICATION_SINK.
Большинство мини-накопителей присваивают этому элементу значение FALSE. Описание типов взаимодействия см. в KSPROPERTY_PIN_COMMUNICATIONS.
Reserved[2]
Зарезервировано для использования драйвером класса. Не используйте.
Комментарии
Драйвер класса использует элементы HW_STREAM_INFORMATION для обработки запросов свойств KSPROPSETID_Pin . Индекс в структуре HW_STREAM_DESCRIPTOR служит идентификатором типа закрепления.
Обратите внимание, что драйвер класса не использует эти данные для обработки свойства KSPROPERTY_PIN_DATAINTERSECTION . Описание того, как драйвер класса обрабатывает это свойство, см. в STREAM_DATA_INTERSECT_INFO .
Требования
Требование | Значение |
---|---|
Заголовок | strmini.h (включая Strmini.h) |