Metodo IMiniportMidiStream::Read (portcls.h)

Il Read metodo 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 Read su un flusso di output MIDI).

Commenti

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 della porta chiama IMiniportMidi::Read per recuperare i dati. Il driver della porta continua a chiamare Read finché sono disponibili più dati.

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

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Intestazione portcls.h (include Portcls.h)
IRQL DISPATCH_LEVEL

Vedi anche

IMiniportMidiStream

IMiniportMidiStream::Write

IPortMidi::Notify