次の方法で共有


IReferenceClock::AdviseTime

AdviseTime メソッドは、単発のアドバイズ要求を作成する。

構文

  HRESULT AdviseTime(
  REFERENCE_TIME rtBaseTime,
  REFERENCE_TIME rtStreamTime,
  HEVENT hEvent,
  DWORD_PTR *pdwAdviseCookie
);

パラメータ

rtBaseTime

[in] 基本となる基準タイム (100 ナノ秒単位)。「注意」を参照すること。

rtStreamTime

[in] ストリーム オフセット タイム (100 ナノ秒単位)。「注意」を参照すること。

hEvent

[in] 呼び出し元によって作成されるイベントのハンドル。

pdwAdviseCookie

[out] アドバイズ要求の識別子を受け取る変数へのポインタ。

戻り値

HRESULT 値を返す。次のいずれかの値を返す。

戻りコード 説明
S_OK 成功。
E_INVALIDARG 無効なタイム値。
E_OUTOFMEMORY 失敗。
E_POINTER NULL ポインタ引数。

注意

このメソッドは、基準タイム baseTime + streamTime に対して単発のアドバイズ要求を作成する。この合計は、ゼロより大きく、MAX_TIME より小さくなければならない。それ以外の場合は、E_INVALIDARG を返す。クロックは、要求されたタイムに hEvent 引数で指定されたイベントを通知する。

指定したタイムになる前に通知を取り消すには、Unadvise メソッドを呼び出して、この呼び出しから返された pdwAdviseToken の値を渡す。通知の発生後、クロックは自動的に通知を取り消すので、Unadvise を呼び出す必要はない。ただし、呼び出しても間違いではない。

参照