DirectX SDK

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.

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;
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:
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 wave. The ulTableIndex member of the WAVELINK structure contains the download identifier of the associated wave buffer. (For more information, see DMUS_DOWNLOADINFO and Low-Level DLS.)
WSMP
Standard DLS structure (declared in Dls1.h) for managing the playback of the wave. If the cSampleLoops member is 1, the following WLOOP structure carries the loop start and end points.
WLOOP[ ]
Standard DLS structure (declared in Dls1.h) for describing a loop.

Requirements

  Windows NT/2000: Requires Windows 2000.
  Windows 95/98: Requires Windows 95 or later. Available as a redistributable for Windows 95.
  Header: Declared in dmdls.h.