Platform SDK: DirectX

IDirectMusicSegment::Clone

IDirectMusicSegment::Clone メソッドは、セグメントとその中のトラックのすべてまたはパートをコピーする。

HRESULT Clone(
  MUSIC_TIME mtStart, 
  MUSIC_TIME mtEnd, 
  IDirectMusicSegment** ppSegment
);

パラメータ

mtStart
コピー開始パート。0 未満の場合や、セグメントの長さを超える場合は、0 が使われる。
mtEnd
コピー終了パート。この値がセグメントの最後を超える場合は、セグメントの最後までコピーされる。0、または mtStart 未満の場合も、最後までコピーされる。
ppSegment
メソッドが成功した場合は、作成されたセグメントへのポインタを受け取る変数のアドレス。アプリケーションには、セグメントの終了時に Release を呼び出す責任がある。

戻り値

成功すれば S_OK を返す。一部のトラックのコピーに失敗した場合は S_FALSE を返す。

失敗すれば次のエラー値のいずれかを返す。

E_OUTOFMEMORY
E_POINTER

注意

セグメント内に IDirectMusicGraph インターフェイスが存在する場合、そのポインタもクローンの一部としてコピーされ、参照カウントがインクリメントされる。IDirectMusicSegment::SetStartPointIDirectMusicSegment::SetLoopPoints の各メソッドによって設定された開始ポイントとループ ポイントは、クローンの内部でデフォルト値 (開始ポイントは 0、ループ ポイントはセグメントの終わりを意味する 0) に設定される。反復回数は 0 にリセットされる。IDirectMusicSegment::SetDefaultResolution メソッドにより設定された分解能も、クローンの一部としてコピーされる。

スタイルベースのセグメントは、mtStart が 0 より大きい場合、小節境界上になければならない。

動作環境

  Windows NT/2000 : Windows 2000 が必要。
  Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
  ヘッダー : dmusici.h で宣言。