DirectX SDK

DMUS_IO_CURVE_ITEM

The DMUS_IO_CURVE_ITEM structure contains information about a curve event in a track. It is used in the Sequence Track List.

typedef struct _DMUS_IO_CURVE_ITEM {
    MUSIC_TIME  mtStart;
    MUSIC_TIME  mtDuration;
    MUSIC_TIME  mtResetDuration;
    DWORD       dwPChannel;
    short       nOffset;
    short       nStartValue;
    short       nEndValue;
    short       nResetValue;
    BYTE        bType;
    BYTE        bCurveShape;
    BYTE        bCCData;
    BYTE        bFlags;
} DMUS_IO_CURVE_ITEM;
mtStart
Start time of the curve.
mtDuration
Duration of the curve.
mtResetDuration
Time after the curve is finished until the reset value is set.
dwPChannel
Performance channel for the event.
nOffset
Offset from the grid boundary at which the curve occurs, in music time. MIDI curves are associated with the closest grid when loaded, so this value can be positive or negative.
nStartValue
Start value.
nEndValue
End value.
nResetValue
Reset value, set after mtResetDuration or upon a flush or invalidation.
bType
Type of curve. The following types are defined:
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. The following shapes are defined:
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 the 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.

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 dmusicf.h.

See Also

DMUS_IO_SEQ_ITEM