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 を呼び出す必要はない。ただし、呼び出しても間違いではない。
参照