Condividi tramite


Metodo IMiniportMidiStream::Read (portcls.h)

Il metodo Read legge i dati da un flusso MIDI in ingresso.

Sintassi

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

Parametri

[in] BufferAddress

Specifica l'indirizzo di un buffer allocato dal chiamante. Il metodo copia i dati MIDI in ingresso dal dispositivo nel buffer. Le dimensioni allocate di questo buffer devono essere maggiori o uguali a BufferLength.

[in] BufferLength

Specifica la lunghezza in byte del buffer a cui punta BufferAddress.

[out] BytesRead

Puntatore di output a una variabile allocata dal chiamante in cui il metodo scrive un conteggio che specifica il numero effettivo di byte letti correttamente dal dispositivo nel buffer.

Valore restituito

Read restituisce STATUS_SUCCESS se la chiamata ha avuto esito positivo. In caso contrario, il metodo restituisce un codice di errore appropriato. La tabella seguente illustra alcuni dei possibili codici di stato restituiti.

Codice restituito Descrizione
STATUS_INVALID_DEVICE_REQUEST
Richiesta di dispositivo non valida( ad esempio, chiamata di Read in un flusso di output MIDI).

Osservazioni

Il driver miniport chiama IPortMidi::Notify per notificare al driver di porta quando i dati MIDI in ingresso diventano disponibili dal dispositivo di acquisizione. Il driver di porta chiama IMiniportMidi::Read per recuperare i dati. Il driver di porta continua a chiamare Read finché sono disponibili più dati.

Il metodo Read restituisce STATUS_SUCCESS e un conteggio byteRead pari a zero per indicare che dal dispositivo non sono attualmente disponibili altri dati di input MIDI.

Fabbisogno

Requisito Valore
piattaforma di destinazione Universale
intestazione portcls.h (include Portcls.h)
IRQL DISPATCH_LEVEL

Vedere anche

IMiniportMidiStream

IMiniportMidiStream::Write

IPortMidi::Notify