DMUS_CURVE_PMSG
DMUS_CURVE_PMSG is a message structure that represents a curve (for example, a sequence of continuous controller events).
typedef struct DMUS_CURVE_PMSG {
DMUS_PMSG_PART
MUSIC_TIME mtDuration;
MUSIC_TIME mtOriginalStart;
MUSIC_TIME mtResetDuration;
short nStartValue;
short nEndValue;
short nResetValue;
WORD wMeasure;
short nOffset;
BYTE bBeat;
BYTE bGrid;
BYTE bType;
BYTE bCurveShape;
BYTE bCCData;
BYTE bFlags;
} DMUS_CURVE_PMSG;
- DMUS_PMSG_PART
- Macro for common message members. See DMUS_PMSG.
- mtDuration
- Duration of the curve.
- mtOriginalStart
- Original start time. Must be set to either 0 when this message is created, or to the original start time of the curve.
- mtResetDuration
- How long after the curve is finished until the reset value is set. Ignored if DMUS_CURVE_RESET is not in bFlags.
- nStartValue
- Start value of the curve.
- nEndValue
- End value of the curve.
- nResetValue
- Reset value of the curve, set after mtResetDuration or upon a flush or invalidation. Ignored if DMUS_CURVE_RESET is not in bFlags.
- wMeasure
- Measure in which this curve occurs.
- nOffset
- Offset from the at which this curve occurs, in music time.
- bBeat
- Beat count (within a measure) at which this curve occurs.
- bGrid
- offset from the beat at which this curve occurs.
- bType
- Type of curve. This can be one of the following values:
- DMUS_CURVET_CCCURVE
- Continuous controller curve (MIDI Control Change channel voice message; status byte &HBn, where n is the channel number).
- DMUS_CURVET_MATCURVE
- Monophonic aftertouch curve (MIDI Channel Pressure channel voice message; status byte &HDn).
- DMUS_CURVET_PATCURVE
- Polyphonic aftertouch curve (MIDI Poly Key Pressure channel voice message, status byte &HDn).
- DMUS_CURVET_PBCURVE
- Pitch-bend curve (MIDI Pitch Bend channel voice message; status byte &HEn).
- bCurveShape
- Shape of curve. This can be one of the following values:
- DMUS_CURVES_EXP
- Exponential curve shape.
- DMUS_CURVES_INSTANT
- Instant curve shape (beginning and end of curve happen at essentially the same time).
- DMUS_CURVES_LINEAR
- Linear curve shape.
- DMUS_CURVES_LOG
- Logarithmic curve shape.
- DMUS_CURVES_SINE
- Sine curve shape.
- bCCData
- CC number if this is a control change type.
- bFlags
- Set to DMUS_CURVE_RESET if nResetValue must be set when the time is reached or an invalidation occurs because of a transition. If 0, the curve stays permanently at the new value. All other bits are reserved.
Windows NT/2000: Requires Windows 2000.
Windows 95/98: Requires Windows 95 or later. Available as a redistributable for Windows 95.
Header: Declared in dmusici.h.
See Also
IDirectMusicPerformance::SendPMsg