IMiniportMidiStream::Read 메서드(portcls.h)
Read
메서드는 들어오는 MIDI 스트림에서 데이터를 읽습니다.
통사론
NTSTATUS Read(
[in] PVOID BufferAddress,
[in] ULONG BufferLength,
[out] PULONG BytesRead
);
매개 변수
[in] BufferAddress
호출자가 할당한 버퍼의 주소를 지정합니다. 이 메서드는 들어오는 MIDI 데이터를 디바이스에서 버퍼로 복사합니다. 이 버퍼의 할당된 크기는 BufferLength보다 크거나 같아야 합니다.
[in] BufferLength
BufferAddress가리키는 버퍼의 길이(바이트)를 지정합니다.
[out] BytesRead
메서드가 디바이스에서 버퍼로 성공적으로 읽은 실제 바이트 수를 지정하는 개수를 작성하는 호출자 할당 변수에 대한 출력 포인터입니다.
반환 값
Read
호출에 성공하면 STATUS_SUCCESS 반환합니다. 그렇지 않으면 메서드가 적절한 오류 코드를 반환합니다. 다음 표에서는 가능한 반환 상태 코드 중 일부를 보여 줍니다.
반환 코드 | 묘사 |
---|---|
|
디바이스 요청이 잘못되었습니다(예: MIDI 출력 스트림에서 Read 호출).
|
발언
미니포트 드라이버는 IPortMidi::notify 호출하여 캡처 디바이스에서 들어오는 MIDI 데이터를 사용할 수 있게 되면 포트 드라이버에 알립니다. 포트 드라이버는 IMiniportMidi::Read 호출하여 데이터를 검색합니다. 포트 드라이버는 더 많은 데이터를 사용할 수 있는 한 Read
계속 호출합니다.
Read
메서드는 디바이스에서 현재 더 이상 MIDI 입력 데이터를 사용할 수 없음을 나타내기 위해 STATUS_SUCCESS 및 BytesRead 0을 반환합니다.
요구 사항
요구 | 값 |
---|---|
대상 플랫폼 | 보편적 |
헤더 | portcls.h(Portcls.h 포함) |
IRQL | DISPATCH_LEVEL |