次の方法で共有


SRB_INDICATE_MASTER_CLOCK

クラス ドライバーは、この要求を発行して、マスター クロックとして機能するクロック オブジェクトのハンドル、またはストリームが自走であることを示す 0 個のハンドルをストリームに示します。

戻り値

ミニドライバーは、SRB の状態として次のいずれかを設定する必要があります。

STATUS_SUCCESS
コマンドが正常に完了したことを示します。

STATUS_NOT_IMPLEMENTED
ミニドライバーで関数がサポートされていないことを示します。

STATUS_IO_DEVICE_ERROR
ハードウェア障害が発生したことを示します。

Comments

クラス ドライバーは、pSrb が指す CommandData.MasterClockHandle メンバーに、マスター クロックを表すクロック オブジェクトのハンドルを設定します。 pSrb ポインターは、HW_STREAM_REQUEST_BLOCK 構造体を指します。

ストリームは、マスター クロック ハンドルを StreamClassQueryMasterClock または StreamClassQueryMasterClockSync に渡すことによって、マスター クロックの時間値を照会できます。

ミニドライバーが特定のストリームの SRB_INDICATE_MASTER_CLOCK を受け取るまで、ストリームが自走であると見なすことができます。 下位ピンに対してこの SRB で渡されるハンドルが、SRB_OPEN_MASTER_CLOCK のミニドライバーに渡されるハンドルと同じである場合、ミニドライバーはマスターと下位を制御するため、マスター クロックから直接時間を読み取ることができます。

ミニドライバーは、マスター クロックのハンドルを 指す SRB の CommandData.MasterClockHandle フィールドを保持する必要があります。 このハンドルが 0 の場合は、このストリームが現在は自走であり、マスター クロックに従属できないことをミニドライバーに示します。