Platform SDK: DirectX |
IDirectMusicLoader::EnableCache メソッドは、ロードされるすべてのオブジェクトの自動的なキャッシングを有効または無効にするようローダーに指示する。デフォルトでは、すべてのクラスでキャッシングが有効になっている。
HRESULT EnableCache( REFGUID rguidClass, BOOL fEnable );
キャッシュの状態が変更される場合は S_OK、キャッシュが既に希望の状態になっている場合は S_FALSE を返す。
キャッシングを無効にせずにキャッシュを消去するには、IDirectMusicLoader::ClearCache メソッドを呼び出す。
次のサンプル コードは、セグメント オブジェクトに限ってキャッシングを無効にするので、アプリケーションがそれらを解放した後はそれらのオブジェクトはメモリ内にとどまることはない。スタイル、コード マップ、DLS コレクションなど、共有すべきその他のオブジェクトは引き続きキャッシングされている。デフォルトですべてのオブジェクトのキャッシングは有効になっているので、EnableCache の最初の呼び出しは、通常は不要である。
void myPrepareLoader(IDirectMusicLoader *pILoader) { pILoader->EnableCache(GUID_DirectMusicAllTypes, TRUE); pILoader->EnableCache(CLSID_DirectMusicSegment, FALSE); }
Windows NT/2000 : Windows 2000 が必要。
Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
ヘッダー : dmusici.h で宣言。
IDirectMusicLoader::CacheObject、IDirectMusicLoader::ClearCache、オブジェクトのキャッシング