DMUS_CURVE_PMSG
DMUS_CURVE_PMSG 構造体は、曲線 (たとえばコンティニュアス コントローラ イベントのシーケンス) を表すメッセージ構造体である。
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
- 共通のメッセージメンバに展開されるマクロ。DMUS_PMSG を参照すること。
- mtDuration
- 曲線の持続時間。
- mtOriginalStart
- オリジナルの開始タイム。メッセージを作成するときは 0 または曲線のオリジナルの開始タイムに設定しなければならない。
- mtResetDuration
- 曲線が終了した後、リセット値を設定するまでの時間。bFlags 内に DMUS_CURVE_RESET がない場合は無視される。
- nStartValue
- 曲線の開始値。
- nEndValue
- 曲線の終了値。
- nResetValue
- 曲線のリセット値。mtResetDuration の経過後、またはフラッシュ (解放) や無効化の際に設定される。bFlags 内に DMUS_CURVE_RESET がない場合は無視される。
- wMeasure
- 曲線が発生する小節。
- nOffset
- 曲線が発生するグリッドからのオフセット。ミュージック タイムで表される。
- bBeat
- この曲線が発生する (小節内の) 拍数。
- bGrid
- この曲線が発生する拍からのグリッド オフセット。
- bType
- 曲線のタイプ。次の値のいずれかを使う。
- DMUS_CURVET_CCCURVE
- コンティニュアス コントローラ曲線 (MIDI コントロール チェンジのチャンネル発音メッセージ。ステータス バイトは &HBn。n はチャンネル番号を表す)。
- DMUS_CURVET_MATCURVE
- モノフォニック アフタータッチ曲線 (MIDI Channel Pressure チャンネル発音メッセージ。ステータス バイトは &HDn)。
- DMUS_CURVET_PATCURVE
- ポリフォニック アフタータッチ曲線 (MIDI Poly Key Pressure チャンネル発音メッセージ。ステータス バイトは &HDn)。
- DMUS_CURVET_PBCURVE
- ピッチ ベンド曲線 (MIDI Pitch Bend チャンネル発音メッセージ。ステータス バイトは &HEn)。
- bCurveShape
- 曲線のシェイプ。次の値のいずれかを使う。
- DMUS_CURVES_EXP
- 指数曲線シェイプ。
- DMUS_CURVES_INSTANT
- 即時曲線シェイプ (曲線の開始と終了がほとんど同時に発生する)。
- DMUS_CURVES_LINEAR
- 線形曲線シェイプ。
- DMUS_CURVES_LOG
- 対数曲線シェイプ。
- DMUS_CURVES_SINE
- 正弦曲線シェイプ。
- bCCData
- コントロール チェンジ タイプの場合は、CC 番号を指定する。
- bFlags
- デフォルトのタイムに達したとき、または移行部が原因で無効化が発生したときに nResetValue を設定しなければならない場合は、この値を DMUS_CURVE_RESET に設定する。この値を 0 に設定した場合は、曲線は新しい値に永続的にとどまる。他のすべてのビットは予約されている。
Windows NT/2000 : Windows 2000 が必要。
Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
ヘッダー : dmusici.h で宣言。
参照
IDirectMusicPerformance::SendPMsg