Microsoft DirectX 8.0 (C++)

IDirectMusicComposer8::ComposeSegmentFromTemplate

スタイル、コード マップ、およびテンプレートから、オリジナルのセグメントを作成する。

HRESULT ComposeSegmentFromTemplate(
  IDirectMusicStyle* pStyle, 
  IDirectMusicSegment* pTemplate, 
  WORD wActivity, 
  IDirectMusicChordMap* pChordMap, 
  IDirectMusicSegment** ppSegment
);

パラメータ

pStyle
セグメントの作成に使用するスタイルを指定する IDirectMusicStyle8 インターフェイス ポインタ。
pTemplate
セグメントの作成に使用するテンプレートを指定する IDirectMusicSegment8 インターフェイス ポインタ。
wActivity
和音進行のレート。有効な値は 0 〜 3 である。値が低いと、コード チェンジが増える。
pChordMap
セグメントの作成に使用するコードマップを指定する IDirectMusicChordMap8 インターフェイス ポインタ。
ppSegment
作成されたセグメントへのポインタを受け取る変数のアドレス。

戻り値

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

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

E_INVALIDARG
E_POINTER

注意

pStyle が NULL ではない場合、このスタイルはセグメントのアレンジに使われる。NULL の場合、pTempSeg で指定されたテンプレートから取得したスタイルをセグメントのアレンジに使う。同様に、pChordMap が NULL 以外の場合、コードマップはセグメントのアレンジに使用され、NULL の場合、コードマップはテンプレートから取得される。

pStyle が NULL でテンプレート内にスタイル トラックが存在しない場合や、pChordMap が NULL でコード マップ トラックが存在しない場合、このメソッドは E_INVALIDARG を返す。

セクション セグメントの長さは、渡されたテンプレート セクションの長さと等しくなる。

作成されたセグメントのデフォルトの開始ポイントとループ ポイントは、テンプレート セグメント内の値に関係なく 0 である。

動作環境

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

参照

IDirectMusicComposer8::ComposeSegmentFromShapeIDirectMusicComposer8::ComposeTemplateFromShapeテンプレートの使い方