Partager via


IMiniportMidiStream ::Read, méthode (portcls.h)

La Read méthode lit les données d’un flux MIDI entrant.

Syntaxe

NTSTATUS Read(
  [in]  PVOID  BufferAddress,
  [in]  ULONG  BufferLength,
  [out] PULONG BytesRead
);

Paramètres

[in] BufferAddress

Spécifie l’adresse d’une mémoire tampon allouée par l’appelant. La méthode copie les données MIDI entrantes de l’appareil dans la mémoire tampon. La taille allouée de cette mémoire tampon doit être supérieure ou égale à BufferLength.

[in] BufferLength

Spécifie la longueur en octets de la mémoire tampon pointée par BufferAddress.

[out] BytesRead

Pointeur de sortie vers une variable allouée par l’appelant dans laquelle la méthode écrit un nombre spécifiant le nombre réel d’octets correctement lus à partir de l’appareil dans la mémoire tampon.

Valeur retournée

Read retourne STATUS_SUCCESS si l’appel a réussi. Sinon, la méthode retourne un code d’erreur approprié. Le tableau suivant présente certains des codes de retour possibles status.

Code de retour Description
STATUS_INVALID_DEVICE_REQUEST
Demande d’appareil non valide (par exemple, appel Read sur un flux de sortie MIDI).

Remarques

Le pilote miniport appelle IPortMidi ::Notify pour avertir le pilote de port lorsque les données MIDI entrantes sont disponibles à partir du périphérique de capture. Le pilote de port appelle IMiniportMidi ::Read pour récupérer les données. Le pilote de port continue d’appeler Read tant que davantage de données sont disponibles.

La Read méthode retourne STATUS_SUCCESS et un nombre BytesRead de zéro pour indiquer qu’aucune donnée d’entrée MIDI n’est actuellement disponible à partir de l’appareil.

Configuration requise

Condition requise Valeur
Plateforme cible Universal
En-tête portcls.h (include Portcls.h)
IRQL DISPATCH_LEVEL

Voir aussi

IMiniportMidiStream

IMiniportMidiStream ::Write

IPortMidi ::Notify