Microsoft DirectX 8.0 (C++)

IDirectMusicLoader8

The IDirectMusicLoader8 interface is used for finding, enumerating, caching, and loading objects. For an overview, see Loading Audio Data.

This interface supersedes IDirectMusicLoader and adds support for garbage collection.

The methods of the IDirectMusicLoader8 interface can be organized into the following groups:

Searching EnumObject
  ScanDirectory
  SetSearchDirectory
Cache and memory
management
CacheObject
  ClearCache
  CollectGarbage
  EnableCache
  ReleaseObject
  ReleaseObjectByUnknown
Object loading GetObject
  LoadObjectFromFile
  SetObject

All COM interfaces inherit the IUnknown interface methods. This interface supports the following three methods:

IUnknown AddRef
  QueryInterface
  Release

The LPDMUS_LOADER type is defined as a pointer to the IDirectMusicLoader interface.

typedef IDirectMusicLoader __RPC_FAR *LPDMUS_LOADER;

The following table lists the standard types of loadable objects, together with their class identifiers (the rguidClass parameter of various methods that deal with objects) and the usual file name extension.

Object type Class Extension
Audiopath CLSID_DirectMusicAudioPathConfig aud
Band CLSID_DirectMusicBand bnd
Container CLSID_DirectMusicContainer con
DLS collection CLSID_DirectMusicCollection dls
Chordmap CLSID_DirectMusicChordMap cdm
Segment CLSID_DirectMusicSegment sgt
Script CLSID_DirectMusicScript spt
Song* CLSID_DirectMusicSong sng
Style CLSID_DirectMusicStyle sty
Template CLSID_DirectMusicSegment tpl
Toolgraph CLSID_DirectMusicGraph tgr
Wave CLSID_DirectSoundWave wav

* Not implemented in DirectX 8.0.

Requirements

  Header: Declared in dmusici.h.