Microsoft DirectX 9.0 SDK Update (October 2004) |
The DMUS_SUBCHORD structure is used in the SubChordList member of a DMUS_CHORD_PARAM structure.
Syntax
typedef struct {
DWORD dwChordPattern;
DWORD dwScalePattern;
DWORD dwInversionPoints;
DWORD dwLevels;
BYTE bChordRoot;
BYTE bScaleRoot;
} DMUS_SUBCHORD;
Members
dwChordPattern
Notes in the subchord. Each of the lower 24 bits represents a semitone, starting with the root at the least significant bit, and the bit is set if the note is in the chord.
dwScalePattern
Notes in the scale. Each of the lower 24 bits represents a semitone, starting with the root at the least significant bit, and the bit is set if the note is in the scale.
dwInversionPoints
Points in the scale at which inversions can occur. Bits that are off signify that the notes in the interval cannot be inverted. Thus, the pattern 100001111111 indicates that inversions are allowed anywhere except between the fifth and seventh degrees of a major scale.
dwLevels
Bit field showing which levels are supported by this subchord. Each part in a
bChordRoot
Root of the subchord, in which 0 is the lowest C in the range and 23 is the top B.
bScaleRoot
Root of the scale, in which 0 is the lowest C in the range and 23 is the top B.
Remarks
Chords authored in DirectMusic Producer can have up to four component subchords, each assigned to a different level. Different parts in a pattern can be assigned to different chord levels, so that when the pattern plays, the transpositions within different parts may vary. In the DirectMusic API, complex chords can be added to a track by using the GUID_ChordParam parameter.
Requirements
Header: Dmusici.h
See Also