ユーザがスクリプトを編集して動作を変える事を想定しているインタフェース一覧。 判っている人向けの記述になります。
カラムグループオブジェクトは以下の配列に格納する
Main.column_groups | 配列 |
カラムグループは以下の要件を満たす。
name | 文字列 |
columns | 配列(カラム用オブジェクト) |
ColumnGroup クラスのインスタンスは上記を満たす。
カラムは以下の要件を満たす
name | 文字列 |
display_cell | 関数 |
compare | 関数 |
display_cell( entry ) | |
呼び出し時 | カラム表示時 |
引数1 | Main.Entry クラスのインスタンスまたは Searcher.Entry クラス インスタンス |
戻り値 | 表示する文字列(呼び出し元で tostring() 呼び出しする) |
備考 | BMS は構文解析済み |
compare( entry_x, entry_y ) | |
呼び出し時 | ソート実行時(ヘッダークリック時) |
引数1 | Main.Entry クラスのインスタンスまたは Searcher.Entry クラス インスタンス |
引数2 | Main.Entry クラスのインスタンスまたは Searcher.Entry クラス インスタンス |
戻り値 | 比較結果の整数( 所謂 <=> の結果) |
備考 | BMS は構文解析済み |
Column クラス のインスタンスは上記を満たす。
第一カラムの表示はカラムグループの管理下ではなく特別扱いになっており、 以下のスロットに格納する。
Main.first_column | カラム用オブジェクト |
null の場合はデフォルト(ファイル名)。
エントリーを詳細表示した際に表示する値一覧。以下に格納する。
Main.entry_dialog_list_items | 配列(カラム用オブジェクト) |
入れるカラム用オブジェクトは前述のカラム用のものと同じ。
メニューの根元は以下に格納する。
Main.entry_processors | サブメニュー用オブジェクト |
サブメニュー用オブジェクトは以下の要件を満たす。
name | 文字列 |
items | 配列(エントリ用呼び出しオブジェクトまたはサブメニュー用オブジェクトまたは null) |
SubMenu クラスのインスタンスは上記を満たす。
items にサブメニュー用のオブジェクトを入れられる事によりメニュー構造を構成する。 null の場合はセパレータになる。
エントリ用呼び出しオブジェクトは以下の要件を満たす。
name | 文字列 |
execute | 関数 |
execute( entry ) | |
呼び出し時 | 右クリックメニュー選択時 |
引数1 | Main.Entry クラスのインスタンスまたは Searcher.Entry クラス インスタンス |
戻り値 | 無し |
備考 | BMS は構文解析済み |
変換時に呼び出される関数。特に記述が無ければ関数になります。
通常の処理用の呼び出し関数群。変換時は上から順に呼び出される。
Main.callback_table.before_initialize( converter ) | |
呼び出し時 | 初期化前 |
引数1 | Main.Converter クラスのインスタンス |
戻り値 | 無し |
Main.callback_table.after_initialize( converter ) | |
呼び出し時 | 初期化後 |
引数1 | Main.Converter クラスのインスタンス |
戻り値 | 無し |
Main.callback_table.before_parse( converter ) | |
呼び出し時 | 構文解析前 |
引数1 | Main.Converter クラスのインスタンス |
戻り値 | 無し |
Main.callback_table.after_parse( converter ) | |
呼び出し時 | 構文解析後 |
引数1 | Main.Converter クラスのインスタンス |
戻り値 | 無し |
Main.callback_table.before_read_audio_files( converter ) | |
呼び出し時 | 音声ファイル読み込み前 |
引数1 | Main.Converter クラスのインスタンス |
戻り値 | 無し |
Main.callback_table.after_read_audio_files( converter ) | |
呼び出し時 | 音声ファイル読み込み後 |
引数1 | Main.Converter クラスのインスタンス |
戻り値 | 無し |
Main.callback_table.before_mixin_waves( converter ) | |
呼び出し時 | 音声ファイル合成前 |
引数1 | Main.Converter クラスのインスタンス |
戻り値 | 無し |
Main.callback_table.after_mixin_waves( converter ) | |
呼び出し時 | 音声ファイル合成後 |
引数1 | Main.Converter クラスのインスタンス |
戻り値 | 無し |
Main.callback_table.before_affect_wave( converter ) | |
呼び出し時 | 合成後音声データの加工前 |
引数1 | Main.Converter クラスのインスタンス |
戻り値 | 無し |
Main.callback_table.after_affect_wave( converter ) | |
呼び出し時 | 合成後音声データの加工後 |
引数1 | Main.Converter クラスのインスタンス |
戻り値 | 無し |
Main.callback_table.before_output_to_file( converter ) | |
呼び出し時 | ファイル出力前 |
引数1 | Main.Converter クラスのインスタンス |
戻り値 | 無し |
Main.callback_table.after_output_to_file( converter ) | |
呼び出し時 | ファイル出力後 |
引数1 | Main.Converter クラスのインスタンス |
戻り値 | 無し |
Main.callback_table.before_finalize( converter ) | |
呼び出し時 | 終了処理前 |
引数1 | Main.Converter クラスのインスタンス |
戻り値 | 無し |
Main.callback_table.after_finalize( converter ) | |
呼び出し時 | 終了処理後 |
引数1 | Main.Converter クラスのインスタンス |
戻り値 | 無し |
Main.callback_table.aborted( converter, user_abort ) | ||
呼び出し時 | 変換中断時 | |
引数1 | Main.Converter クラスのインスタンス | |
引数2 | 真偽値 | ユーザの操作による中断かどうか |
戻り値 | 無し |
Main.callback_table.exception_occurred( converter, exception ) | |
呼び出し時 | エラー発生時(構文解析中を除く) |
引数1 | Main.Converter クラスのインスタンス |
引数2 | ConvertException クラスのインスタンス |
戻り値 | 無し |
Main.callback_table.exception_occurred( converter, exception ) | |
呼び出し時 | エラー発生時(構文解析中のみ) |
引数1 | Main.Converter クラスのインスタンス |
引数2 | BmsDescriptionException クラスのインスタンス |
戻り値 | 無し |
decide_output_file_path( converter ) | ||
呼び出し時 | 構文解析解析直後 | |
引数1 | Main.Converter クラスのインスタンス | |
戻り値 | 文字列 | 出力ファイルのパス |
備考 | 出力ファイルを決める為 |
decide_audio_file_path( converter, path ) | ||
呼び出し時 | 音声ファイル読み込みの前 | |
引数1 | Main.Converter クラスのインスタンス | |
引数2 | 文字列 | BMS ファイルで指定したパスの絶対パス |
戻り値 | 文字列 | 実際に読ませる音声ファイルのパス |
備考 | WAV@@ で指定したファイル毎に呼ばれる。wav か ogg のどちらを読み込むかを決める為 |
audio_file_read_start( converter, word, path ) | ||
呼び出し時 | 音声ファイル読み込みの直前 | |
引数1 | Main.Converter クラスのインスタンス | |
引数2 | 整数 | WAV@@ の @@ 部分の整数 |
引数3 | 文字列 | 実際に読み込んでいるファイルのパス |
戻り値 | 無し | |
備考 | WAV@@ で指定したファイル毎に呼ばれる。読み込み中表記を出力する為。 |
audio_file_read_end( converter, word, path ) | ||
呼び出し時 | 音声ファイル読み込みの直後 | |
引数1 | Main.Converter クラスのインスタンス | |
引数2 | 整数 | WAV@@ の @@ 部分の整数 |
引数3 | 文字列 | 実際に読み込んでいるファイルのパス |
戻り値 | 無し | |
備考 | WAV@@ で指定したファイル毎に呼ばれる。読み込み中表記を出力する為。 |
complete_normalize( converter, ratio ) | |
呼び出し時 | ノーマライズ実行直後 |
引数1 | Main.Converter クラスのインスタンス |
引数2 | ノーマライズを実行した際の音声加工の倍率 |
戻り値 | 無し |
備考 | 音声加工倍率表記の為 |
after_process( converter ) | |
呼び出し時 | 後処理実行時(after_output_to_file の後で before_finalize の前) |
引数1 | Main.Converter クラスのインスタンス |
戻り値 | 無し |
備考 | 後処理機能の実装の為 |
フィルタオブジェクトは以下に格納する。
Searcher.display_filters | 配列(フィルタオブジェクト) |
フィルタオブジェクトは以下の要件を満たす。
name | 文字列 |
filtering | 関数 |
filtering( entry ) | |
呼び出し時 | リストビュー表示時(ツリーのフォルダクリック時など) |
引数1 | Searcher.Entry クラス インスタンス |
戻り値 | 表示するかしないかの真偽値 |
備考 | BMS は未だ構文解析をしていない |
DisplayFilter クラスのインスタンスは上記を満たす。
BMX2WAV の本体のカラムと同じ。
検索方法オブジェクトは以下に格納する。
Searcher.search_methods | 配列(検索方法オブジェクト) |
フィルタオブジェクトは以下の要件を満たす。
name | 文字列 |
search | 関数 |
by_each_directory | 関数 |
search( entry ) | |
呼び出し時 | ファイル 1 つ検出される毎 |
引数1 | Searcher.Entry クラス インスタンス |
戻り値 | 検索をヒットさせるかさせないかの真偽値 |
備考 | フォルダのファイル全てについて呼び出される |
by_each_directory( directory_entry, entry_array ) | ||
呼び出し時 | 各フォルダのファイルについて search を呼び出した後、かつリストビューに表示される前 | |
引数1 | Searcher.Entry クラス インスタンス | 該当のフォルダ用のエントリ |
引数2 | 配列(Searcher.Entry クラス インスタンス) | search で true になったエントリのみ |
戻り値 | 無し | |
備考 | 配列のエントリの search_hit の真偽でリストビューに表示するかしないかが決まる。 |
SearchMethod クラスのインスタンスは上記を満たす。
BMX2WAV の本体の右クリックメニューと同じ。