Microsoft DirectX 8.0 |
CSystemClock クラスは、タイム情報とタイミング信号をアプリケーションに提供するシステム クロックを実装する。このクラスは、CBaseReferenceClock 基底クラスを使用して、持続性を追加したその機能のほとんどを提供する。
CSystemClock は IPersist インターフェイスを実装する。実装については、『OLE Programmers Reference (Vol. 1): Structured Storage Overview』を参照すること。
メンバ関数
CreateInstance システム クロックのインスタンスを作成する。 CSystemClock CSystemClock オブジェクトを作成する。
GetClassID このクロックのクラス識別子を取得する (CLSID_SystemClock)。
実装される INonDelegatingUnknown メソッド
NonDelegatingQueryInterface IID_IPersist へのポインタを渡し、ほかのインターフェイス クエリのためのベース クロックを呼び出す。
ファクトリ テンプレート テーブル内に配置されたときに新しいインスタンスを作成する。
構文
static CUnknown * WINAPI CreateInstance( LPUNKNOWN pUnk, HRESULT *phr );
パラメータ
戻り値
新しい Component Object Model (COM) オブジェクトへのポインタを返す。
注意
このメンバ関数は、クラス ファクトリを使用してオブジェクトを作成する場合に必要である。このメンバ関数はクラス コンストラクタを呼び出す。
phr パラメータは、エラーが発生した場合にのみ変更される。入力のエラー コードの場合、作成を終了することができる。ただし、いずれにしても HRESULT エラーが検出されると作成者によってデストラクタが呼び出される。
CSystemClock オブジェクトを作成する。
構文
CSystemClock( TCHAR *pName, LPUNKNOWN pUnk, HRESULT *phr );
パラメータ
戻り値
戻り値なし。
注意
phr がエントリ時に S_OK 以外の値をポイントする場合、オブジェクトは作成されない。作成中にエラーが発生すると、この変数が設定される。それ以外の場合、その内容は変更されない。
このクロックのクラス識別子を取得する。
構文
HRESULT GetClassID( CLSID *pClsID );
パラメータ
- pClsID
- CLSID_SystemClock が入力される CLSID 構造体へのポインタ。
戻り値
HRESULT 値を返す。
インターフェイスを取得し、参照カウントをインクリメントする。
構文
HRESULT NonDelegatingQueryInterface( REFIID riid, void **ppv );
パラメータ
- riid
- 参照識別子。
- ppv
- インターフェイスへのポインタのアドレス。
戻り値
ppv が無効な場合は、E_POINTER を返す。クエリが成功した場合は NOERROR、失敗した場合は E_NOINTERFACE を返す。
注意
このメンバ関数は、INonDelegatingUnknown::NonDelegatingQueryInterface メソッドを実装し、IReferenceClock、IPersist、および IUnknown インターフェイスへの参照を渡す。