Microsoft DirectX 8.0 (C++)

IDirectMusicSegment8::SetTrackConfig

トラックの構成を設定する。

HRESULT SetTrackConfig(
  REFGUID rguidTrackClassID,
  DWORD dwGroupBits, 
  DWORD dwIndex,
  DWORD dwFlagsOn,
  DWORD dwFlagsOff
);

パラメータ

rguidTrackClassID
トラック クラスの識別子への参照 (C++) またはアドレス (C)。値のリストについては、「標準トラックの種類」を参照すること。
dwGroupBits
トラックが所属するグループ。
dwIndex
グループ内のトラックのインデックス、またはグループ内のすべてのトラックの構成を設定する DMUS_SEG_ALLTRACKS。
dwFlagsOn
設定する構成フラグ。「注意」を参照すること。
dwFlagsOff
クリアする構成フラグ。「注意」を参照すること。

戻り値

成功した場合は S_OK を返す。

失敗した場合は、次のいずれかのエラー値を返す。

DMUS_E_TRACK_NOT_FOUND
E_INVALIDARG

注意

セグメントのフラグを変更すると、セグメント状態のそれ以降のインスタンスは、変更内容を継承する。ただし、既に演奏中であるセグメント状態は動作を変更しない。

次のフラグが定義されている。

DMUS_TRACKCONFIG_COMPOSING
このトラックを使って、ほかのトラックをアレンジする。
DMUS_TRACKCONFIG_CONTROL_ENABLED
IDirectMusicTrack8::GetParamEx を有効にする。
DMUS_TRACKCONFIG_CONTROL_NOTIFICATION
制御セグメント内で演奏中の場合、プライマリ セグメント トラックの通知を上書きする。
DMUS_TRACKCONFIG_CONTROL_PLAY
制御セグメント内で演奏中の場合、プライマリ セグメント トラックの再生を上書きする。
DMUS_TRACKCONFIG_DEFAULT
DMUS_TRACKCONFIG_CONTROL_ENABLED | DMUS_TRACKCONFIG_PLAY_ENABLED | DMUS_TRACKCONFIG_NOTIFICATION_ENABLED の組み合わせ。
DMUS_TRACKCONFIG_FALLBACK
要求した情報がプライマリ セグメントおよび制御セグメントから返されない場合、トラックがこのセグメントからのパラメータの取得を試みる。
DMUS_TRACKCONFIG_LOOP_COMPOSE
トラックが反復されるたびに、データを再生成する。
DMUS_TRACKCONFIG_NOTIFICATION_ENABLED
通知を有効にする。
DMUS_TRACKCONFIG_OVERRIDE_ALL
制御セグメントおよびプライマリ セグメントの前に、トラックがこのセグメントからのパラメータの取得を試みる。
DMUS_TRACKCONFIG_OVERRIDE_PRIMARY
プライマリ セグメントの前に、トラックがこのセグメントからのパラメータの取得を試みる。
DMUS_TRACKCONFIG_PLAY_CLOCKTIME
ミュージック タイムを使わず、クロック タイムで演奏する。
DMUS_TRACKCONFIG_PLAY_COMPOSE
トラックが演奏を開始するたびに、データを再生成する。
DMUS_TRACKCONFIG_PLAY_ENABLED
トラックがメッセージを送信できるようにする。
DMUS_TRACKCONFIG_TRANS1_FROMSEGCURRENT
トランジションのアレンジで、先頭セグメントの現在の場所からトラック情報を取得する。
DMUS_TRACKCONFIG_TRANS1_FROMSEGSTART
トランジションのアレンジで、先頭セグメントの開始部分からトラック情報を取得する。
DMUS_TRACKCONFIG_TRANS1_TOSEGSTART
トランジションのアレンジで、2 番目のセグメントの開始部分からトラック情報を取得する。

次の表は、各標準トラックに対して有効な構成フラグを示している。

バンド
DMUS_TRACKCONFIG_CONTROL_ENABLED
DMUS_TRACKCONFIG_CONTROL_PLAY
DMUS_TRACKCONFIG_PLAY_CLOCKTIME
DMUS_TRACKCONFIG_PLAY_ENABLED
DMUS_TRACKCONFIG_TRANS1_FROMSEGCURRENT
DMUS_TRACKCONFIG_TRANS1_FROMSEGSTART
DMUS_TRACKCONFIG_TRANS1_TOSEGSTART

コード
DMUS_TRACKCONFIG_CONTROL_ENABLED
DMUS_TRACKCONFIG_CONTROL_NOTIFICATION
DMUS_TRACKCONFIG_NOTIFICATION_ENABLED
DMUS_TRACKCONFIG_TRANS1_FROMSEGCURRENT
DMUS_TRACKCONFIG_TRANS1_FROMSEGSTART
DMUS_TRACKCONFIG_TRANS1_TOSEGSTART

コードマップ
DMUS_TRACKCONFIG_CONTROL_ENABLED
DMUS_TRACKCONFIG_TRANS1_FROMSEGCURRENT
DMUS_TRACKCONFIG_TRANS1_FROMSEGSTART
DMUS_TRACKCONFIG_TRANS1_TOSEGSTART

コマンド
DMUS_TRACKCONFIG_CONTROL_ENABLED
DMUS_TRACKCONFIG_CONTROL_NOTIFICATION
DMUS_TRACKCONFIG_NOTIFICATION_ENABLED
DMUS_TRACKCONFIG_TRANS1_FROMSEGCURRENT
DMUS_TRACKCONFIG_TRANS1_FROMSEGSTART
DMUS_TRACKCONFIG_TRANS1_TOSEGSTART

歌詞
DMUS_TRACKCONFIG_PLAY_CLOCKTIME
DMUS_TRACKCONFIG_PLAY_ENABLED

マーカー
DMUS_TRACKCONFIG_CONTROL_ENABLED

メロディ編成。DirectX 8.0 では実装されていない。
DMUS_TRACKCONFIG_COMPOSING
DMUS_TRACKCONFIG_CONTROL_ENABLED
DMUS_TRACKCONFIG_CONTROL_NOTIFICATION
DMUS_TRACKCONFIG_CONTROL_PLAY
DMUS_TRACKCONFIG_LOOP_COMPOSE
DMUS_TRACKCONFIG_NOTIFICATION_ENABLED
DMUS_TRACKCONFIG_PLAY_COMPOSE
DMUS_TRACKCONFIG_PLAY_ENABLED
DMUS_TRACKCONFIG_TRANS1_FROMSEGCURRENT
DMUS_TRACKCONFIG_TRANS1_FROMSEGSTART
DMUS_TRACKCONFIG_TRANS1_TOSEGSTART

モチーフ
DMUS_TRACKCONFIG_CONTROL_ENABLED
DMUS_TRACKCONFIG_CONTROL_NOTIFICATION
DMUS_TRACKCONFIG_CONTROL_PLAY
DMUS_TRACKCONFIG_FALLBACK
DMUS_TRACKCONFIG_NOTIFICATION_ENABLED
DMUS_TRACKCONFIG_OVERRIDE_ALL
DMUS_TRACKCONFIG_OVERRIDE_PRIMARY
DMUS_TRACKCONFIG_PLAY_CLOCKTIME
DMUS_TRACKCONFIG_PLAY_ENABLED

ミュート
DMUS_TRACKCONFIG_CONTROL_ENABLED

パラメータ制御
DMUS_TRACKCONFIG_PLAY_CLOCKTIME
DMUS_TRACKCONFIG_PLAY_ENABLED

パターン
DMUS_TRACKCONFIG_CONTROL_ENABLED
DMUS_TRACKCONFIG_CONTROL_NOTIFICATION
DMUS_TRACKCONFIG_CONTROL_PLAY
DMUS_TRACKCONFIG_FALLBACK
DMUS_TRACKCONFIG_NOTIFICATION_ENABLED
DMUS_TRACKCONFIG_OVERRIDE_ALL
DMUS_TRACKCONFIG_OVERRIDE_PRIMARY
DMUS_TRACKCONFIG_PLAY_CLOCKTIME
DMUS_TRACKCONFIG_PLAY_ENABLED

スクリプト
DMUS_TRACKCONFIG_PLAY_CLOCKTIME
DMUS_TRACKCONFIG_PLAY_ENABLED

セグメント トリガ
DMUS_TRACKCONFIG_PLAY_CLOCKTIME
DMUS_TRACKCONFIG_PLAY_ENABLED

シーケンス
DMUS_TRACKCONFIG_CONTROL_PLAY
DMUS_TRACKCONFIG_FALLBACK
DMUS_TRACKCONFIG_OVERRIDE_ALL
DMUS_TRACKCONFIG_OVERRIDE_PRIMARY
DMUS_TRACKCONFIG_PLAY_CLOCKTIME
DMUS_TRACKCONFIG_PLAY_ENABLED

サインポスト
DMUS_TRACKCONFIG_COMPOSING
DMUS_TRACKCONFIG_CONTROL_NOTIFICATION
DMUS_TRACKCONFIG_CONTROL_PLAY
DMUS_TRACKCONFIG_LOOP_COMPOSE
DMUS_TRACKCONFIG_NOTIFICATION_ENABLED
DMUS_TRACKCONFIG_PLAY_COMPOSE
DMUS_TRACKCONFIG_PLAY_ENABLED
DMUS_TRACKCONFIG_TRANS1_FROMSEGCURRENT
DMUS_TRACKCONFIG_TRANS1_FROMSEGSTART
DMUS_TRACKCONFIG_TRANS1_TOSEGSTART

スタイル
DMUS_TRACKCONFIG_CONTROL_ENABLED
DMUS_TRACKCONFIG_CONTROL_NOTIFICATION
DMUS_TRACKCONFIG_CONTROL_PLAY
DMUS_TRACKCONFIG_FALLBACK
DMUS_TRACKCONFIG_NOTIFICATION_ENABLED
DMUS_TRACKCONFIG_OVERRIDE_ALL
DMUS_TRACKCONFIG_OVERRIDE_PRIMARY
DMUS_TRACKCONFIG_PLAY_ENABLED
DMUS_TRACKCONFIG_TRANS1_FROMSEGCURRENT
DMUS_TRACKCONFIG_TRANS1_FROMSEGSTART
DMUS_TRACKCONFIG_TRANS1_TOSEGSTART

システム エクスクルーシブ
DMUS_TRACKCONFIG_CONTROL_PLAY
DMUS_TRACKCONFIG_PLAY_CLOCKTIME
DMUS_TRACKCONFIG_PLAY_ENABLED

テンポ
DMUS_TRACKCONFIG_CONTROL_ENABLED
DMUS_TRACKCONFIG_CONTROL_PLAY
DMUS_TRACKCONFIG_PLAY_CLOCKTIME
DMUS_TRACKCONFIG_PLAY_ENABLED
DMUS_TRACKCONFIG_TRANS1_FROMSEGCURRENT
DMUS_TRACKCONFIG_TRANS1_FROMSEGSTART
DMUS_TRACKCONFIG_TRANS1_TOSEGSTART

拍子記号
DMUS_TRACKCONFIG_CONTROL_ENABLED
DMUS_TRACKCONFIG_CONTROL_NOTIFICATION
DMUS_TRACKCONFIG_CONTROL_PLAY
DMUS_TRACKCONFIG_NOTIFICATION_ENABLED
DMUS_TRACKCONFIG_PLAY_ENABLED

ウェーブ
DMUS_TRACKCONFIG_CONTROL_PLAY
DMUS_TRACKCONFIG_FALLBACK
DMUS_TRACKCONFIG_OVERRIDE_ALL
DMUS_TRACKCONFIG_OVERRIDE_PRIMARY
DMUS_TRACKCONFIG_PLAY_CLOCKTIME
DMUS_TRACKCONFIG_PLAY_ENABLED

動作環境

  ヘッダー : dmusici.h で宣言。

参照

IDirectMusicSegmentState8::SetTrackConfig自己制御セグメントトラック構成