{
}
- protected override void Onæ´»æ\80§å\8c\96( ã\83\87ã\83\90ã\82¤ã\82¹ã\83ªã\82½ã\83¼ã\82¹ dr )
+ protected override void Onæ´»æ\80§å\8c\96( ã\82°ã\83©ã\83\95ã\82£ã\83\83ã\82¯ã\83\87ã\83\90ã\82¤ã\82¹ gd )
{
- using( Log.Block( Utilities.現在のメソッド名 ) )
+ using( Log.Block( FDKUtilities.現在のメソッド名 ) )
{
if( App.ビュアーモードではない )
Trace.Assert( App.ユーザ管理.選択されているユーザ.曲ツリー.フォーカスノード is MusicNode );
}
}
- protected override void Oné\9d\9eæ´»æ\80§å\8c\96( ã\83\87ã\83\90ã\82¤ã\82¹ã\83ªã\82½ã\83¼ã\82¹ dr )
+ protected override void Oné\9d\9eæ´»æ\80§å\8c\96( ã\82°ã\83©ã\83\95ã\82£ã\83\83ã\82¯ã\83\87ã\83\90ã\82¤ã\82¹ gd )
{
- using( Log.Block( Utilities.現在のメソッド名 ) )
+ using( Log.Block( FDKUtilities.現在のメソッド名 ) )
{
}
}
- public override void é\80²è¡\8cæ\8f\8fç\94»ã\81\99ã\82\8b( ã\83\87ã\83\90ã\82¤ã\82¹ã\83ªã\82½ã\83¼ã\82¹ dr )
+ public override void é\80²è¡\8cæ\8f\8fç\94»ã\81\99ã\82\8b( ã\82°ã\83©ã\83\95ã\82£ã\83\83ã\82¯ã\83\87ã\83\90ã\82¤ã\82¹ gd )
{
Debug.Assert( this.活性化している );
- Debug.Assert( null != dr );
- if( this.現在のフェーズ != フェーズ.開始 )
- return;
-
- var node = ( App.ビュアーモードではない ) ?
- (MusicNode) App.ユーザ管理.選択されているユーザ.曲ツリー.フォーカスノード : // (A) 通常モード
- App.ビュアー用ノード; // (B) ビュアーモード時
-
- string 選択曲ファイルパス = node.曲ファイルパス;
- Trace.Assert( 選択曲ファイルパス.Nullでも空でもない() );
-
- // スコアを読み込む。
- using( Log.Block( "曲の読み込み" ) )
+ switch( this.現在のフェーズ )
{
- App.演奏スコア = new スコア( SST.IO.Folder.絶対パスに含まれるフォルダ変数を展開して返す( 選択曲ファイルパス ) );
-
- // サウンドデバイス遅延を取得し、全チップの発声時刻へ反映する。
- float 作成時遅延ms = App.演奏スコア.Header.サウンドデバイス遅延ms;
- if( 0 < 作成時遅延ms )
- {
- float 再生時遅延ms = (float) ( App.サウンドデバイス.遅延sec * 1000.0 );
- long 加算分ms = (long) ( 作成時遅延ms - 再生時遅延ms ); // 例: 作成時遅延 7ms, 再生時遅延 10ms の場合、発声時刻に 7-10 = -3ms 加算する(3ms 早く発声させる)。
-
- Log.Info( $"作成時遅延={作成時遅延ms}ms, 再生時遅延={再生時遅延ms}ms => 加算分 = {加算分ms}ms" );
-
- foreach( var chip in App.演奏スコア.チップリスト )
- chip.発声時刻ms += 加算分ms;
- }
-
- this.現在のフェーズ = フェーズ.完了;
+ case フェーズ.開始:
+ #region " *** "
+ //----------------
+ {
+ var node = ( App.ビュアーモードではない ) ?
+ (MusicNode) App.ユーザ管理.選択されているユーザ.曲ツリー.フォーカスノード : // (A) 通常モード
+ App.ビュアー用ノード; // (B) ビュアーモード時
+
+ string 選択曲ファイルパス = node.曲ファイルパス;
+ Trace.Assert( 選択曲ファイルパス.Nullでも空でもない() );
+
+ // スコアを読み込む。
+ using( Log.Block( "曲の読み込み" ) )
+ {
+ App.演奏スコア = new スコア( SST.IO.Folder.絶対パスに含まれるフォルダ変数を展開して返す( 選択曲ファイルパス ) );
+
+ // サウンドデバイス遅延を取得し、全チップの発声時刻へ反映する。
+ float 作成時遅延ms = App.演奏スコア.Header.サウンドデバイス遅延ms;
+ if( 0 < 作成時遅延ms )
+ {
+ float 再生時遅延ms = (float) ( App.サウンドデバイス.遅延sec * 1000.0 );
+ long 加算分ms = (long) ( 作成時遅延ms - 再生時遅延ms ); // 例: 作成時遅延 7ms, 再生時遅延 10ms の場合、発声時刻に 7-10 = -3ms 加算する(3ms 早く発声させる)。
+
+ Log.Info( $"作成時遅延={作成時遅延ms}ms, 再生時遅延={再生時遅延ms}ms => 加算分 = {加算分ms}ms" );
+
+ foreach( var chip in App.演奏スコア.チップリスト )
+ chip.発声時刻ms += 加算分ms;
+ }
+
+ this.現在のフェーズ = フェーズ.完了;
+ }
+ }
+ //----------------
+ #endregion
+ break;
+
+ case フェーズ.完了:
+ break;
}
}
}