Partager via


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

La méthode Read lit les données à partir 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 vers 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 lus correctement à partir de l’appareil dans la mémoire tampon.

Valeur de retour

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 d’état de retour possibles.

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

Remarques

Le pilote miniport appelle IPortMidi ::Notify pour notifier le pilote de port lorsque les données MIDI entrantes sont disponibles à partir de l’appareil 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 d’autres données sont disponibles.

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

Exigences

Exigence Valeur
plateforme cible Universel
d’en-tête portcls.h (include Portcls.h)
IRQL DISPATCH_LEVEL

Voir aussi

IMiniportMidiStream

IMiniportMidiStream ::Write

IPortMidi ::Notify