다음을 통해 공유


SRB_INDICATE_MASTER_CLOCK

클래스 드라이버는 현재 master 클록으로 사용되는 클록 개체의 핸들을 스트림에 나타내거나 스트림이 자유롭게 실행 중임을 나타내는 0 핸들을 스트림에 나타내기 위해 이 요청을 실행합니다.

반환 값

미니 드라이버는 SRB의 상태 다음 중 하나를 설정해야 합니다.

STATUS_SUCCESS
명령이 성공적으로 완료되었음을 나타냅니다.

STATUS_NOT_IMPLEMENTED
미니 드라이버에서 함수를 지원하지 않음을 나타냅니다.

STATUS_IO_DEVICE_ERROR
하드웨어 오류가 발생했음을 나타냅니다.

의견

클래스 드라이버는 CommandData를 설정합니다. pSrb가 가리키는 MasterClockHandle 멤버가 master 클록을 나타내는 클록 개체의 핸들을 가리켰습니다. pSrb 포인터는 HW_STREAM_REQUEST_BLOCK 구조를 가리킵니다.

스트림은 master 클록 핸들을 StreamClassQueryMasterClock 또는 StreamClassQueryMasterClockSync에 전달하여 master 클록의 시간 값을 쿼리할 수 있습니다.

미니드라이버가 특정 스트림에 대한 SRB_INDICATE_MASTER_CLOCK 받을 때까지 스트림이 자유롭게 실행되고 있다고 가정할 수 있습니다. 하위 핀에 대해 이 SRB에 전달된 핸들이 SRB_OPEN_MASTER_CLOCK 미니드라이버에 전달된 핸들과 같으면 미니 드라이버는 master 및 부하를 제어하기 때문에 master 시계에서 직접 시간을 읽을 수 있습니다.

미니 드라이버는 master 클록의 핸들을 가리키는 CommandData.MasterClockHandle 필드를 SRB에 유지해야 합니다. 이 핸들이 0이면 이 스트림이 이제 실행이 무료이며 master 클록에 종속될 수 없음을 미니드라이버에 나타냅니다.