Microsoft DirectX 8.0 (C++) |
The IDirectMusicContainer8 interface provides access to objects in a container, which is a collection of objects used by a segment or performance. The interface can be obtained when a container is loaded by a call to IDirectMusicLoader8::GetObject or IDirectMusicLoader8::LoadObjectFromFile.
When a container object is loaded, it makes all its objects available to the loader. When the container is released, all objects it refers to are released from the loader. However, any objects still in use when the container is released are not freed until explicitly released. If they are keeping a stream open, as DLS collections and streaming waves do, the stream also stays open. As a result, the container file stays locked, just as an individual wave or DLS file would.
A container can be embedded in a segment. The container is placed in the file before the segment's tracks, so it can be read and its objects installed in the loader before the tracks are loaded. When the tracks are loaded, the loader is able to supply links to referenced objects in the container.
IDirectMusicContainer8 is a type definition for IDirectMusicContainer. The two interface names are interchangeable.
The IDirectMusicContainer8 interface has the following method.
Enumeration | EnumObject |
All COM interfaces inherit the IUnknown interface methods. This interface supports the following three methods.
IUnknown | AddRef |
QueryInterface | |
Release |
Header: Declared in dmusici.h.