Platform SDK: DirectX |
IDirectMusicSegment::SetLoopPoints メソッドは、反復するセグメントのパートの開始ポイントと終了ポイントを設定する。セグメントのパートは、IDirectMusicSegment::SetRepeats メソッドによって設定される回数だけ反復する。
HRESULT SetLoopPoints( MUSIC_TIME mtStart, MUSIC_TIME mtEnd );
成功すれば S_OK を返す。
失敗すれば DMUS_E_OUT_OF_RANGE を返す。
セグメントの演奏時には、開始タイムから mtEnd まで演奏し、mtStart にループする。次に、ループ部分を IDirectMusicSegment::SetRepeats によって設定される回数だけ反復し、最後まで演奏する。
デフォルト値は、最初から最後までセグメント全体をループさせるように設定されている。
mtStart の値がセグメントの長さ以上の場合、または mtEnd の値がセグメントの長さを超える場合、メソッドは失敗する。mtEnd が 0 の場合、mtStart も 0 でなければならない。
このメソッドは、このセグメントから作成された、現在演奏中のセグメント状態に影響を及ぼすことはない。
キャッシングされたセグメントのループ ポイントは、セグメントが解放され、再ロードされた場合でも継続される。セグメントが後でキャッシュから再ロードされないようにするために、セグメントを解放する前に、IDirectMusicLoader::ReleaseObject を呼び出す。
Windows NT/2000 : Windows 2000 が必要。
Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
ヘッダー : dmusici.h で宣言。