Méthode IMiniportMidi ::NewStream (portcls.h)
La NewStream
méthode crée une nouvelle instance d’un flux logique associé à un canal physique spécifié.
Syntaxe
NTSTATUS NewStream(
[out] PMINIPORTMIDISTREAM *Stream,
[in, optional] PUNKNOWN OuterUnknown,
[in] POOL_TYPE PoolType,
[in] ULONG Pin,
[in] BOOLEAN Capture,
[in] PKSDATAFORMAT DataFormat,
[out] PSERVICEGROUP *ServiceGroup
);
Paramètres
[out] Stream
Pointeur de sortie pour le nouveau flux. Ce paramètre pointe vers une variable de pointeur allouée par l’appelant dans laquelle la méthode écrit un pointeur vers l’interface IMiniportMidiStream de l’objet stream.
[in, optional] OuterUnknown
Pointeur vers l’interface IUnknown d’un objet qui doit agréger l’objet stream. Ce paramètre est facultatif. Si l’agrégation n’est pas requise, l’appelant spécifie ce paramètre comme NULL.
[in] PoolType
Spécifie le type de pool de mémoire à partir duquel le stockage de l’objet de canal DMA doit être alloué. Ce paramètre est défini sur l’une des valeurs d’énumération POOL_TYPE .
[in] Pin
Spécifie l’ID de broche. Ce paramètre identifie la broche à ouvrir. Si la méthode IMiniport ::GetDescription de l’objet miniport MIDI génère un descripteur de filtre qui spécifie un total de n fabriques de broches sur le filtre, les ID de broche valides se trouvent dans la plage 0 à n-1.
[in] Capture
Spécifie si le canal doit être utilisé pour la capture ou pour la lecture. Si true, il s’agit d’un canal de capture (entrée). Si la valeur est FALSE, il s’agit d’un canal de lecture (sortie).
[in] DataFormat
Pointeur vers une structure KSDATAFORMAT qui spécifie le format de données à utiliser pour ce flux instance.
[out] ServiceGroup
Pointeur de sortie pour le groupe de services. Ce paramètre pointe vers une variable de pointeur allouée par l’appelant dans laquelle la méthode écrit un pointeur vers l’interface IServiceGroup de l’objet de groupe de services du flux. Il s’agit du groupe de services inscrit pour la notification d’interruption.
Valeur retournée
NewStream
retourne STATUS_SUCCESS si l’appel a réussi. Sinon, la méthode retourne un code d’erreur approprié.
Remarques
La NewStream
méthode définit l’état initial du flux sur KSSTATE_STOP.
Les paramètres Stream, OuterUnknown et ServiceGroup suivent les conventions de comptage des références pour les objets COM.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
En-tête | portcls.h (include Portcls.h) |
IRQL | PASSIVE_LEVEL |