次の方法で共有


CBaseRenderer::WaitForRenderTime

WaitForRenderTime メソッドは、現在のサンプルのプレゼンテーション タイムを待機する。

構文

  virtual HRESULT WaitForRenderTime(void);

戻り値

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

説明
S_OK 成功。
VFW_E_STATE_CHANGED プレゼンテーション タイムになる前に、フィルタの状態が変化した。

注意

このメソッドは、以下のいずれかが起きるまで待機する。

  • サンプルのプレゼンテーション タイムになる (つまり、サンプルをレンダリングできる)。
  • フィルタがデータのフラッシュを停止または開始する。

プレゼンテーション タイムになると、CBaseRenderer::m_RenderEvent イベントが通知される。状態が変化すると、CBaseRenderer::m_ThreadSignal イベントが通知される。このメソッドは、両方のイベントを待機する。派生クラスでは、必要に応じてこのメソッドをオーバーライドして、他のイベントを待機できる。

このメソッドは、待機を開始するとき CBaseRenderer::OnWaitStart メソッドを呼び出し、待機を終了すると CBaseRenderer::OnWaitEnd メソッドを呼び出す。どちらのメソッドも、基底クラスでは何も実行しないが、派生クラスでオーバーライドできる。

参照