The IDirectMusicPort::DownloadInstrument method is used to download an instrument to the DLS device. Downloading an instrument is the process of handing to the DLS device the data that makes up the instrument. This includes articulation data and all waves needed by the instrument. To economize on wave space, only waves and articulation required for a range are downloaded. The method returns an IDirectMusicDownloadedInstrument interface pointer, which is later used to unload the instrument.
HRESULT DownloadInstrument(
IDirectMusicInstrument *pInstrument,
IDirectMusicDownloadedInstrument **ppDownloadedInstrument,
DMUS_NOTERANGE *pNoteRanges,
DWORD dwNumNoteRanges;
);
If the method succeeds, the return value is S_OK.
If it fails, the method may return one of the following error values:
E_POINTER |
E_OUTOFMEMORY |
E_NOTIMPL |
To prevent memory loss, the instrument must be unloaded by calling both IDirectMusicPort::UnloadInstrument and IDirectMusicDownloadedInstrument::Release when it is no longer needed.
IDirectMusicPort::Compact, Working with Instruments
Windows NT/2000: Requires Windows 2000.
Windows 95/98: Requires Windows 95 or later. Available as a redistributable for Windows 95.
Header: Declared in dmusicc.h.