Microsoft DirectX 8.0 (C++) |
IDirectMusicContainer8 インターフェイスを使うと、コンテナ内のオブジェクトにアクセスできる。コンテナとは、セグメントやパフォーマンスが使用するオブジェクトのコレクションである。このインターフェイスは、IDirectMusicLoader8::GetObject または IDirectMusicLoader8::LoadObjectFromFile を呼び出すことで、コンテナがロードされるときに取得できる。
コンテナ オブジェクトがロードされると、コンテナ内のすべてのオブジェクトが、ローダーから利用できるようになる。コンテナが解放されると、コンテナが参照するすべてのオブジェクトがローダーから解放される。ただし、コンテナ解放時に使用中のオブジェクトは、明示的に解放されるまでは解放されない。そのようなオブジェクトが、DLS コレクションやストリーミング ウェーブのようにストリーミングを開いたままにしている場合は、ストリームも開いたままになる。その結果、個別のウェーブ ファイルや DLS ファイルと同様に、コンテナ ファイルはロック状態にとどまる。
コンテナはセグメントに埋め込むことができる。ファイル内で、コンテナはセグメントのトラックの前に配置される。これにより、トラックがロードされる前に、コンテナが読み取られ、オブジェクトがローダーにインストールされる。トラックがロードされると、ローダーは、コンテナ内の参照オブジェクトへのリンクを設定できる。
IDirectMusicCollection8 は、IDirectMusicCollection8 の型定義である。2 つのインターフェイス名は入れ替え可能である。
IDirectMusicContainer8 インターフェイスには次のメソッドがある。
列挙 | EnumObject |
すべての COM インターフェイスは IUnknown インターフェイスのメソッドを継承する。このインターフェイスは、次の 3 つのメソッドをサポートする。
IUnknown | AddRef |
QueryInterface | |
Release |
ヘッダー : dmusici.h で宣言。