The MODM_CACHEDRUMPATCHES message requests a MIDI output driver to load and cache a specified set of key-based percussion patches.
Parameters
uDeviceId
Device identifier (0, 1, 2, and so on) for the target device.
uMsg
MODM_CACHEDRUMPATCHES
dwUser
Device instance identifier.
dwParam1
Pointer to an array of type KEYARRAY, which is described in the Win32 SDK.
dwParam2
Contains a DWORD value, defined as follows:
Low word | Flag values. (For flag descriptions, see midiOutCacheDrumPatches in the Win32 SDK.) |
High word | Drum patch number. |
Return Value
The driver should return MMSYSERR_NOERROR if the operation succeeds. Otherwise it should return one of the MMSYSERR or MIDIERR error codes defined in mmsystem.h. See midiOutCacheDrumPatches return values in the Win32 SDK.
Comments
A client sends the MODM_CACHEDRUMPATCHES message by calling the user-mode driver’s modMessage entry point, passing the specified parameters.
Typically, the user-mode driver requests the kernel-mode driver to cache the patches by calling DeviceIoControl with an IOCTL_MIDI_CACHE_DRUM_PATCHES control code.