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 |