DMUS_CURVE_PMSG
カーブのメッセージに関する情報を保持する。
Type DMUS_CURVE_PMSG
beat As Byte
ccData As Byte
curveShape As Byte
endValue As Integer
flags As Byte
grid As Byte
measure As Integer
MergeIndex As Integer
mtDuration As Long
mtOriginalStart As Long
mtResetDuration As Long
offset As Integer
ParamType As Integer
resetValue As Integer
startValue As Integer
type As Byte
End Type
メンバ
- beat
- このカーブが発生する (小節内の) 拍数。
- ccData
- type が DMUS_CURVET_CCCURVE の場合は、コントローラ番号。
- curveShape
- カーブの形状。このパラメータには、CONST_DMUS_CURVES 列挙型のいずれかの値を指定できる。
- endValue
- カーブの終了値。
- flags
- フラグ。0 または CONST_DMUS_CURVE_FLAGS 列挙型の 1 つ以上の定数を指定できる。
- grid
- このカーブが発生する拍からのグリッド オフセット。アプリケーションで作成されたメッセージでは、0 でなければならない。
- measure
- カーブが発生する小節。アプリケーションで作成されたメッセージでは、0 でなければならない。
- MergeIndex
- マージ インデックス。ピッチ ベンド、ボリューム、およびエクスプレッション コントローラをサポートする。「注意」を参照すること。
- mtDuration
- カーブの持続時間。この値は、DirectMusicPerformance8.SendCurvePMSG の flags パラメータに DMUS_PMSGF_LOCKTOREFTIME が存在する場合を除き、ミュージック タイムで指定する。この場合の単位はミリ秒単位となり、テンポの変化によって影響を受けることはない。
- mtOriginalStart
- オリジナルの開始タイム。ミュージック タイムで指定する。アプリケーションで作成されたメッセージでは、0 でなければならない。
- mtResetDuration
- 無効化に応答してリセットできる間のカーブの終わり後の時間の長さ。flags メンバに DMUS_CURVE_RESET がない場合は、無視される。この値は、DirectMusicPerformance8.SendCurvePMSG の flags パラメータに DMUS_PMSGF_LOCKTOREFTIME が存在する場合を除き、ミュージック タイムで指定する。この場合の単位はミリ秒単位となり、テンポの変化によって影響を受けることはない。
- offset
- カーブが発生するグリッドからのオフセット。ミュージック タイムで指定する。
- ParamType
- MIDI のパラメータ番号。「注意」を参照すること。
- resetValue
- フラッシュ (解放) または無効化後に設定する値。
- startValue
- カーブの開始値。
- type
- カーブのタイプ。このパラメータには、CONST_DMUS_CURVET 列挙型のいずれかの値を指定できる。
注意
ParamType の RPN または NRPN カーブ タイプは、7 ビットを付加した 2 バイトとして格納される。たとえば、MSB が 0x23、LSB が 0x74 である場合、ParamType の値は 0x2374 である。
startValue、endValue、および resetValue 内のデータは 14 ビットに制限される。7 ビットのバイト 2 つで構成される MIDI データの場合、値は空いている 2 ビットを付加して、1 ワードとして格納される。
MergeIndex に 0 が設定されたすべてのカーブは、相互にオーバーライドされる。マージ インデックスが別の値である場合、カーブが生成する値はマージ インデックス 0 の値に追加される。たとえば、アプリケーションが 0 と 3 のインデックスを持つカーブを使用する場合、0 カーブは常に相互に入れ替わるが 3 カーブに追加される。また、3 カーブも常に相互に入れ替わるが 0 カーブに追加される。
参照
DirectMusicPerformance8.SendCurvePMSG