structure HW_STREAM_INFORMATION (strmini.h)
La structure HW_STREAM_INFORMATION décrit la sémantique de diffusion en continu du noyau prise en charge par des flux individuels, dans le cadre d’une structure de HW_STREAM_DESCRIPTOR .
Syntaxe
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;
Membres
NumberOfPossibleInstances
Spécifie le nombre d’instances possibles de ce flux qui peuvent être ouvertes.
DataFlow
Direction que les données peuvent parcourir sur ce flux. Pour le flux de données unidirectionnel, DataFlow a la valeur KSPIN_DATAFLOW_IN ou KSPIN_DATAFLOW_OUT.
DataAccessible
Spécifie TRUE si les données de flux sont accessibles au pilote de classe.
NumberOfFormatArrayEntries
Nombre d’entrées dans le tableau qui commence à l’adresse dans le membre StreamFormatsArray .
StreamFormatsArray
Pointeur vers le début du tableau de plages de données pris en charge par ce flux. (Le nom de ce membre est trompeur. Ce membre pointe vers un tableau de structures KSDATARANGE , et non vers des structures KSDATAFORMAT.)
ClassReserved[4]
Réservé à l’utilisation par le pilote de classe. Ne pas utiliser.
NumStreamPropArrayEntries
Nombre d’entrées dans le tableau qui commence à l’adresse du membre StreamPropertiesArray .
StreamPropertiesArray
Pointeur vers le début du tableau de jeux de propriétés pris en charge par ce flux.
NumStreamEventArrayEntries
Nombre d’entrées dans le tableau qui commence à l’adresse dans le champ StreamEventsArray .
StreamEventsArray
Pointeur vers le début du tableau des jeux d’événements pris en charge par ce flux.
Category
Spécifie le GUID de la catégorie de broche.
Name
Spécifie le GUID du nom de chaîne Unicode localisé pour le type de broche, stocké dans le Registre.
MediumsCount
Nombre d’entrées dans le tableau qui commence à l’adresse dans le champ Mediums .
Mediums
Pointeur vers le début du tableau de structures KSPIN_MEDIUM prises en charge par ce flux. Si le minidriver ne spécifie pas de support, le pilote de classe utilise le KSMEDIUMSETID_STANDARD, KSMEDIUM_TYPE_ANYINSTANCE medium comme support par défaut.
BridgeStream
Si la valeur est TRUE, le type de communication du type de broche sous-jacent de ce flux est KSPIN_COMMUNICATION_BRIDGE. Sinon, le type de communication par défaut d’un flux est KSPIN_COMMUNICATION_SINK.
La plupart des mini-drivers définissent ce membre sur FALSE. Consultez KSPROPERTY_PIN_COMMUNICATIONS pour obtenir une description des types de communication.
Reserved[2]
Réservé à l’utilisation par le pilote de classe. Ne pas utiliser.
Remarques
Le pilote de classe utilise les éléments de HW_STREAM_INFORMATION pour gérer les demandes de propriétés KSPROPSETID_Pin . L’index dans la structure HW_STREAM_DESCRIPTOR sert de numéro d’ID de type de broche.
Notez que le pilote de classe n’utilise pas ces données pour gérer la propriété KSPROPERTY_PIN_DATAINTERSECTION . Consultez STREAM_DATA_INTERSECT_INFO pour obtenir une description de la façon dont le pilote de classe gère cette propriété.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | strmini.h (inclure Strmini.h) |