DMUS_REGION
The DMUS_REGION structure defines a region for a DLS download. One or more regions can be embedded in an instrument buffer and referenced by the instrument header chunk, DMUS_INSTRUMENT.
Syntax
typedef struct {
RGNRANGE RangeKey;
RGNRANGE RangeVelocity;
USHORT fusOptions;
USHORT usKeyGroup;
ULONG ulRegionArtIdx;
ULONG ulNextRegionIdx;
ULONG ulFirstExtCkIdx;
WAVELINK WaveLink;
WSMPL WSMP;
WLOOP WLOOP[1];
} DMUS_REGION;
Members
RangeKey
Key range for this region.
RangeVelocity
Velocity range for this region.
fusOptions
Options for the synthesis of this region. The following flag is defined:
Flag | Description |
F_RGN_OPTION_SELFNONEXCLUSIVE | If a second note-on for the same note is received by the synthesis engine, the second note is played, as well as the first. This option is off by default so that the synthesis engine forces a note-off of the first note. |
usKeyGroup
Key group for a drum instrument. Key group values allow multiple regions within a drum instrument to belong to the same group. If a synthesis engine is instructed to play a note with a key group setting and any other notes are currently playing with this same key group, the synthesis engine turns off all notes with the same key group value as soon as possible. Currently, key groups from 1 through 15 are legal, and 0 indicates no key group.
ulRegionArtIdx
Index, in the DMUS_OFFSETTABLE structure, of the global articulation chunk for the region. If 0, the region does not have an articulation and relies on the instrument's global articulation.
ulNextRegionIdx
Index, in the DMUS_OFFSETTABLE structure, of the next region in the region list. If 0, there are no more regions.
ulFirstExtCkIdx
Index, in the DMUS_OFFSETTABLE structure, of the third-party extension chunk list. If 0, no extension chunks are associated with the region.
WaveLink
Standard DLS structure (declared in the Dls1.h header file) for managing a link from the region to a waveform. The ulTableIndex member of the WAVELINK structure contains the download identifier of the associated buffer. (For more information, see DMUS_DOWNLOADINFO and Low-Level DLS.)
WSMP
Standard DLS structure (Dls1.h) for managing the playback of the waveform. If the cSampleLoops member is 1, the following WLOOP structure carries the loop start and end points.
WLOOP[ ]
Structure describing a loop. The WLOOP type is Dls1.h
Requirements
** Header:** Dmdls.h
See Also