ATCFS For OpenBVE
 全て クラス 名前空間 ファイル 関数 変数 プロパティ ページ
クラス | 関数 | プロパティ | 非公開メンバ関数 | 非公開変数類 | 全メンバ一覧
ATCFS.Atc クラス

ATC-1, ATC-2, ATC-NS, KS-ATC, DS-ATCを再現するクラス [詳解]

ATCFS.Atc の継承関係図
Inheritance graph
[凡例]
ATCFS.Atc 連携図
Collaboration graph
[凡例]

クラス

class  AtcA
 ATC-1, ATC-2を再現するクラス [詳解]
 
class  AtcD
 ATC-NS, KS-ATC, DS-ATCを再現するクラス [詳解]
 
class  Fuzzy
 予見Fuzzy制御を再現するクラス [詳解]
 

関数

 Atc (Train train)
 新しいインスタンスを作成する [詳解]
 
override void Initialize (InitializationModes mode)
 ゲーム開始時に呼び出される関数 [詳解]
 
override void Elapse (ElapseData data, ref bool blocking)
 1フレームごとに呼び出される関数 [詳解]
 
override void SetReverser (int reverser)
 レバーサーが扱われたときに呼び出される関数 [詳解]
 
override void SetPower (int powerNotch)
 主ハンドルが扱われたときに呼び出される関数 [詳解]
 
override void SetBrake (int brakeNotch)
 ブレーキが扱われたときに呼び出される関数 [詳解]
 
override void KeyDown (VirtualKeys key)
 ATSキーが押されたときに呼び出される関数 [詳解]
 
override void KeyUp (VirtualKeys key)
 ATSキーが離されたときに呼び出される関数 [詳解]
 
override void HornBlow (HornTypes type)
 警笛が扱われたときに呼び出される関数 [詳解]
 
override void SetSignal (SignalData[] signal)
 現在の閉塞の信号が変化したときに呼び出される関数 [詳解]
 
override void SetBeacon (BeaconData beacon)
 地上子を越えたときに呼び出される関数 [詳解]
 

プロパティ

int atc_brake_notch_ [get, set]
 ATC出力ブレーキノッチ(HBを含まない) [詳解]
 

非公開メンバ関数

int SearchSignal (int spd)
 速度に対応する信号インデックスを返す関数 [詳解]
 
int ItoV (int index)
 信号インデックスを速度に変換する関数 [詳解]
 
int ItoV (int index, bool is_display)
 信号インデックスを速度に変換する関数 [詳解]
 
void SetPatternList ()
 デジタルATC用速度照査パターンを作成する関数 [詳解]
 
void Start ()
 ATCを投入する際に実行する関数 [詳解]
 
void Exit ()
 ATCを遮断する際に実行する関数 [詳解]
 
void ChangedSignal (int signal)
 SetSignalで実行される関数 [詳解]
 
void PassedBeacon (int index, int signal, double distance, int optional)
 SetBeaconDataで実行される関数 [詳解]
 
void ChangedAtcType (int atc_type)
 ATC方式を切り替える関数 [詳解]
 
void PassedLoop (int signal)
 ATC-1, 2, NSにおいて停止限界(ループコイル)を通過した際に実行する関数 [詳解]
 
void Reset ()
 ATC-1, 2, NSにおいて確認扱いの判定を行う関数 [詳解]
 
void ResetSwDown ()
 確認ボタンが押下された際に実行する関数 [詳解]
 
void ResetSwUp ()
 確認ボタンが開放された際に実行する関数 [詳解]
 
int SearchPattern (double distance)
 距離に対応する速度を返す関数 [詳解]
 
void ValidPattern (ref int tget_spd, int pattern_status)
 パターンが無効の場合に目標速度を車両ATC最高速度に修正する関数 [詳解]
 
int CalcPatternSpd (int tget_spd, double pattern_end_loc)
 パターン照査速度を算出する関数 [詳解]
 
double CalcPatternLoc (int tget_spd, double pattern_end_loc, int pattern_status)
 パターン降下開始地点を算出する関数 [詳解]
 
void CollectPattern ()
 パターン情報を集約する関数 [詳解]
 
void CalcPattern ()
 各パターン情報からパターン照査速度およびパターン降下開始地点を算出する関数 [詳解]
 
void ChangedArrowSig ()
 デジタルATC用車内信号を生成する関数 [詳解]
 
int CalcBrake (int index, int tget_spd, double pattern_start_loc, double pattern_end_loc)
 パターンに対する最適ブレーキノッチを出力する関数 [詳解]
 
int SelectBrake ()
 全パターンに対する最大の最適ブレーキノッチを出力する関数 [詳解]
 
int NonFuzzyCtrExe ()
 予見Fuzzy制御ではないブレーキノッチを出力する関数 [詳解]
 
void BrakeExeA ()
 アナログATC用のブレーキノッチを出力する関数 [詳解]
 
void BrakeExeD ()
 デジタルATC用のブレーキノッチを出力する関数 [詳解]
 
void DisplaySpd (int spd, int[] display_spd)
 速度を7セグに表示する関数 [詳解]
 
void ResetIndicator ()
 インジケーターの表示を初期化する関数 [詳解]
 
void RunIndicator ()
 インジケーターの表示を実行する関数 [詳解]
 
void RunIndicatorA ()
 アナログATC用インジケーターの表示を実行する関数 [詳解]
 
void RunIndicatorD ()
 デジタルATC用インジケーターの表示を実行する関数 [詳解]
 
void RunSubSpeedMeter ()
 副速度計の表示を実行する関数 [詳解]
 
void PassedBeacon ()
 SetBeaconDataの実行タイミングを制御するための関数 [詳解]
 

非公開変数類

readonly Train train_
 
readonly AtcA atc_a_
 
readonly AtcD atc_d_
 
readonly Fuzzy fuzzy_
 
const int ALL_PATTERN = 8
 パターンの総数 [詳解]
 
const int STA_PATTERN = 3
 駅停車パターンの総数 [詳解]
 
const int USR_PATTERN = 3
 速度制限パターンの総数 [詳解]
 
int max_brake_notch_
 常用最大ブレーキノッチ(HBを含まない) [詳解]
 
int brake_notch_
 出力ブレーキノッチ(HBを含まない) [詳解]
 
int[] default_notch_
 標準ブレーキノッチ [詳解]
 
int max_signal_
 車両ATC最高速度に対応する信号インデックス [詳解]
 
double[] pattern_list_
 デジタルATC用速度照査パターン [詳解]
 
double[] pattarn_end_loc_list_
 全パターンの減速完了地点[m] [詳解]
 
int[] pattern_is_valid_list_
 全パターンの状態(0: 無効, 1: 有効) [詳解]
 
int[] pattern_tget_spd_list_
 全パターンの目標速度[km/h] [詳解]
 
int[] pattern_arrow_spd_list_
 全パターンのパターン照査速度[km/h] [詳解]
 
double[] pattern_start_loc_list_
 全パターンのパターン降下開始地点[m] [詳解]
 
double debug_timer_
 Debug出力する次のゲーム内時刻[ms]. [詳解]
 
double brake_timer_
 ブレーキノッチを変更する次のゲーム内時刻[ms] [詳解]
 
double max_deceleration_
 常用最大減速度[km/h/s] [詳解]
 
int atc_power_
 ATC電源(0: 消灯, 1: 点灯) [詳解]
 
int atc_use_
 ATC(0: 消灯, 1: 点灯) [詳解]
 
int atc_type_
 ATC方式(0: ATC-1, 1: ATC-2, 2: ATC-NS, 3: KS-ATC, 4: DS-ATC) [詳解]
 
int atc_max_spd_
 車両ATC最高速度[km/h] [詳解]
 
int[] atc_spd_list_
 信号インデックスに対応する速度[km/h] [詳解]
 
double[] atc_deceleration_
 ATCブレーキ減速度[km/h/s]. [詳解]
 
int atc_reset_sw_
 確認ボタンの状態(0: 解放, 1: 押下) [詳解]
 
int atc_red_signal_
 停止現示(0: 消灯, 1: 点灯) [詳解]
 
int atc_green_signal_
 進行現示(0: 消灯, 1: 点灯) [詳解]
 
int[] atc_sig_indicator_
 ATC速度表示インジケータ(0: 消灯, 1: 点灯) [詳解]
 
int[] atc_spd_7seg_
 7セグ用ATC速度表示 [詳解]
 
int atc_signal_index_
 ATC速度に対応する信号インデックス [詳解]
 
int atc_spd_
 ATC速度[km/h]. [詳解]
 
int dsatc_arrow_spd_
 DS-ATC用パターン照査速度[km/h]. [詳解]
 
int[] sub_spd_label_1_
 副速度計用目盛 ATC速度-20 km/h [詳解]
 
int[] sub_spd_label_2_
 副速度計用目盛 ATC速度-10 km/h [詳解]
 
int[] sub_spd_label_3_
 副速度計用目盛 ATC速度 [詳解]
 
int[] sub_spd_label_4_
 副速度計用目盛 ATC速度+10 km/h [詳解]
 
int sub_atc_spd_
 副速度計用 ATC速度[km/h] [詳解]
 
int sub_train_spd_
 副速度計用 列車速度[km/h] [詳解]
 
double lever_delay_
 ブレーキハンドルの操作から指令出力までの遅れ時間[s] [詳解]
 
int atc_eb_lamp_
 ATC非常(0: 消灯, 1: 点灯) [詳解]
 
int atc_svc_lamp_
 ATC常用(0: 消灯, 1: 点灯) [詳解]
 
double Xe
 減速完了地点からの許容誤差[m] [詳解]
 
double Xo
 減速完了地点からの過走限界距離[m] [詳解]
 
double Xk
 XeおよびXoを高速域で拡大させる係数 [詳解]
 
double train_spd_
 列車速度[km/h] [詳解]
 
double time_
 ゲーム内時刻[ms] [詳解]
 
List< int > beacon_type_
 地上子種別 [詳解]
 
List< int > beacon_sig_
 対となるセクションの信号 [詳解]
 
List< double > beacon_dist_
 対となるセクションまでの距離[m] [詳解]
 
List< int > beacon_opt_
 地上子に設定された任意の値 [詳解]
 

詳解

ATC-1, ATC-2, ATC-NS, KS-ATC, DS-ATCを再現するクラス

構築子と解体子

ATCFS.Atc.Atc ( Train  train)
package

新しいインスタンスを作成する

引数
trainTrainクラスのインスタンス

メソッド詳解

void ATCFS.Atc.BrakeExeA ( )
private

アナログATC用のブレーキノッチを出力する関数

呼び出し関係図:

被呼び出し関係図:

void ATCFS.Atc.BrakeExeD ( )
private

デジタルATC用のブレーキノッチを出力する関数

呼び出し関係図:

被呼び出し関係図:

int ATCFS.Atc.CalcBrake ( int  index,
int  tget_spd,
double  pattern_start_loc,
double  pattern_end_loc 
)
private

パターンに対する最適ブレーキノッチを出力する関数

引数
indexパターン番号
tget_spd目標速度[km/h]
pattern_start_locパターン降下開始地点[m]
pattern_end_loc減速完了地点[m]
戻り値
最適ブレーキノッチ

被呼び出し関係図:

void ATCFS.Atc.CalcPattern ( )
private

各パターン情報からパターン照査速度およびパターン降下開始地点を算出する関数

呼び出し関係図:

被呼び出し関係図:

double ATCFS.Atc.CalcPatternLoc ( int  tget_spd,
double  pattern_end_loc,
int  pattern_status 
)
private

パターン降下開始地点を算出する関数

引数
tget_spd目標速度[km/h]
pattern_end_loc減速完了地点[m]
pattern_statusパターン状態(0: 無効, 1: 有効)
戻り値
パターン降下開始地点[m]

被呼び出し関係図:

int ATCFS.Atc.CalcPatternSpd ( int  tget_spd,
double  pattern_end_loc 
)
private

パターン照査速度を算出する関数

減速完了地点内方は目標速度のフラットパターンとなる

引数
tget_spd目標速度[km/h]
pattern_end_loc減速完了地点[m]
戻り値
パターン照査速度[km/h]

呼び出し関係図:

被呼び出し関係図:

void ATCFS.Atc.ChangedArrowSig ( )
private

デジタルATC用車内信号を生成する関数

呼び出し関係図:

被呼び出し関係図:

void ATCFS.Atc.ChangedAtcType ( int  atc_type)
private

ATC方式を切り替える関数

引数
atc_typeATC方式

被呼び出し関係図:

void ATCFS.Atc.ChangedSignal ( int  signal)
private

SetSignalで実行される関数

引数
signal現在のセクションの信号番号

被呼び出し関係図:

void ATCFS.Atc.CollectPattern ( )
private

パターン情報を集約する関数

被呼び出し関係図:

void ATCFS.Atc.DisplaySpd ( int  spd,
int[]  display_spd 
)
private

速度を7セグに表示する関数

引数
spd速度[km/h]
display_spd速度を表示する配列

被呼び出し関係図:

override void ATCFS.Atc.Elapse ( ElapseData  data,
ref bool  blocking 
)
packagevirtual

1フレームごとに呼び出される関数

引数
dataThe data.
blocking保安装置がブロックされているか、後続の保安装置をブロックするかどうか。

ATCFS.Deviceを実装しています。

呼び出し関係図:

void ATCFS.Atc.Exit ( )
private

ATCを遮断する際に実行する関数

呼び出し関係図:

override void ATCFS.Atc.HornBlow ( HornTypes  type)
packagevirtual

警笛が扱われたときに呼び出される関数

引数
type警笛のタイプ

ATCFS.Deviceを実装しています。

override void ATCFS.Atc.Initialize ( InitializationModes  mode)
packagevirtual

ゲーム開始時に呼び出される関数

引数
mode初期化モード

ATCFS.Deviceを実装しています。

呼び出し関係図:

被呼び出し関係図:

int ATCFS.Atc.ItoV ( int  index)
private

信号インデックスを速度に変換する関数

ATC-1のみ220km/h以上300km/h未満は"対応速度+5km/h"、300km/h以上は"対応速度+3km/h"を返す

引数
index信号インデックス
戻り値
信号インデックスに対応する速度[km/h]

被呼び出し関係図:

int ATCFS.Atc.ItoV ( int  index,
bool  is_display 
)
private

信号インデックスを速度に変換する関数

is_display が偽かつATC-1のみ220km/h以上300km/h未満は"対応速度+5km/h"、300km/h以上は"対応速度+3km/h"を返す

引数
index信号インデックス
is_displayパネル表示用かどうか
戻り値
信号インデックスに対応する速度[km/h]
override void ATCFS.Atc.KeyDown ( VirtualKeys  key)
packagevirtual

ATSキーが押されたときに呼び出される関数

引数
keyATSキー

ATCFS.Deviceを実装しています。

呼び出し関係図:

override void ATCFS.Atc.KeyUp ( VirtualKeys  key)
packagevirtual

ATSキーが離されたときに呼び出される関数

引数
keyATSキー

ATCFS.Deviceを実装しています。

呼び出し関係図:

int ATCFS.Atc.NonFuzzyCtrExe ( )
private

予見Fuzzy制御ではないブレーキノッチを出力する関数

戻り値
ブレーキノッチ

被呼び出し関係図:

void ATCFS.Atc.PassedBeacon ( int  index,
int  signal,
double  distance,
int  optional 
)
private

SetBeaconDataで実行される関数

引数
index地上子種別
signal対となるセクションの信号番号
distance対となるセクションまでの距離[m]
optional地上子に設定された任意の値

呼び出し関係図:

void ATCFS.Atc.PassedBeacon ( )
private

SetBeaconDataの実行タイミングを制御するための関数

被呼び出し関係図:

void ATCFS.Atc.PassedLoop ( int  signal)
private

ATC-1, 2, NSにおいて停止限界(ループコイル)を通過した際に実行する関数

信号番号が0の際に03信号を発信する

引数
signal対となるセクションの信号番号

被呼び出し関係図:

void ATCFS.Atc.Reset ( )
private

ATC-1, 2, NSにおいて確認扱いの判定を行う関数

ATC-03信号の場合は列車速度が0km/h、ATC-30信号の場合は30km/h以下である場合、ブレーキ開放フラグがONになる

被呼び出し関係図:

void ATCFS.Atc.ResetIndicator ( )
private

インジケーターの表示を初期化する関数

被呼び出し関係図:

void ATCFS.Atc.ResetSwDown ( )
private

確認ボタンが押下された際に実行する関数

呼び出し関係図:

被呼び出し関係図:

void ATCFS.Atc.ResetSwUp ( )
private

確認ボタンが開放された際に実行する関数

被呼び出し関係図:

void ATCFS.Atc.RunIndicator ( )
private

インジケーターの表示を実行する関数

呼び出し関係図:

被呼び出し関係図:

void ATCFS.Atc.RunIndicatorA ( )
private

アナログATC用インジケーターの表示を実行する関数

呼び出し関係図:

被呼び出し関係図:

void ATCFS.Atc.RunIndicatorD ( )
private

デジタルATC用インジケーターの表示を実行する関数

呼び出し関係図:

被呼び出し関係図:

void ATCFS.Atc.RunSubSpeedMeter ( )
private

副速度計の表示を実行する関数

呼び出し関係図:

被呼び出し関係図:

int ATCFS.Atc.SearchPattern ( double  distance)
private

距離に対応する速度を返す関数

指定された距離の近似値に対応する速度を検索する

引数
distance距離[m]
戻り値
距離に対応する速度[km/h]

被呼び出し関係図:

int ATCFS.Atc.SearchSignal ( int  spd)
private

速度に対応する信号インデックスを返す関数

指定された速度以下の近似値に対応する信号インデックスを検索する

引数
spd速度[km/h]
戻り値
速度に対応する信号インデックス

被呼び出し関係図:

int ATCFS.Atc.SelectBrake ( )
private

全パターンに対する最大の最適ブレーキノッチを出力する関数

戻り値
最適ブレーキノッチ

呼び出し関係図:

被呼び出し関係図:

override void ATCFS.Atc.SetBeacon ( BeaconData  beacon)
packagevirtual

地上子を越えたときに呼び出される関数

引数
beacon車上子で受け取った情報

ATCFS.Deviceを実装しています。

override void ATCFS.Atc.SetBrake ( int  brakeNotch)
packagevirtual

ブレーキが扱われたときに呼び出される関数

引数
brakeNotchブレーキノッチ

ATCFS.Deviceを実装しています。

void ATCFS.Atc.SetPatternList ( )
private

デジタルATC用速度照査パターンを作成する関数

被呼び出し関係図:

override void ATCFS.Atc.SetPower ( int  powerNotch)
packagevirtual

主ハンドルが扱われたときに呼び出される関数

引数
powerNotch力行ノッチ

ATCFS.Deviceを実装しています。

override void ATCFS.Atc.SetReverser ( int  reverser)
packagevirtual

レバーサーが扱われたときに呼び出される関数

引数
reverserレバーサ位置

ATCFS.Deviceを実装しています。

override void ATCFS.Atc.SetSignal ( SignalData[]  signal)
packagevirtual

現在の閉塞の信号が変化したときに呼び出される関数

引数
signal信号番号

ATCFS.Deviceを実装しています。

呼び出し関係図:

void ATCFS.Atc.Start ( )
private

ATCを投入する際に実行する関数

呼び出し関係図:

void ATCFS.Atc.ValidPattern ( ref int  tget_spd,
int  pattern_status 
)
private

パターンが無効の場合に目標速度を車両ATC最高速度に修正する関数

引数
tget_spd目標速度[km/h]
pattern_statusパターン状態(0: 無効, 1: 有効)

被呼び出し関係図:

メンバ詳解

const int ATCFS.Atc.ALL_PATTERN = 8
private

パターンの総数

readonly AtcA ATCFS.Atc.atc_a_
private
readonly AtcD ATCFS.Atc.atc_d_
private
double [] ATCFS.Atc.atc_deceleration_
private

ATCブレーキ減速度[km/h/s].

int ATCFS.Atc.atc_eb_lamp_
private

ATC非常(0: 消灯, 1: 点灯)

int ATCFS.Atc.atc_green_signal_
private

進行現示(0: 消灯, 1: 点灯)

int ATCFS.Atc.atc_max_spd_
private

車両ATC最高速度[km/h]

int ATCFS.Atc.atc_power_
private

ATC電源(0: 消灯, 1: 点灯)

int ATCFS.Atc.atc_red_signal_
private

停止現示(0: 消灯, 1: 点灯)

int ATCFS.Atc.atc_reset_sw_
private

確認ボタンの状態(0: 解放, 1: 押下)

int [] ATCFS.Atc.atc_sig_indicator_
private

ATC速度表示インジケータ(0: 消灯, 1: 点灯)

int ATCFS.Atc.atc_signal_index_
private

ATC速度に対応する信号インデックス

int ATCFS.Atc.atc_spd_
private

ATC速度[km/h].

int [] ATCFS.Atc.atc_spd_7seg_
private

7セグ用ATC速度表示

int [] ATCFS.Atc.atc_spd_list_
private

信号インデックスに対応する速度[km/h]

int ATCFS.Atc.atc_svc_lamp_
private

ATC常用(0: 消灯, 1: 点灯)

int ATCFS.Atc.atc_type_
private

ATC方式(0: ATC-1, 1: ATC-2, 2: ATC-NS, 3: KS-ATC, 4: DS-ATC)

int ATCFS.Atc.atc_use_
private

ATC(0: 消灯, 1: 点灯)

List<double> ATCFS.Atc.beacon_dist_
private

対となるセクションまでの距離[m]

List<int> ATCFS.Atc.beacon_opt_
private

地上子に設定された任意の値

List<int> ATCFS.Atc.beacon_sig_
private

対となるセクションの信号

List<int> ATCFS.Atc.beacon_type_
private

地上子種別

int ATCFS.Atc.brake_notch_
private

出力ブレーキノッチ(HBを含まない)

double ATCFS.Atc.brake_timer_
private

ブレーキノッチを変更する次のゲーム内時刻[ms]

double ATCFS.Atc.debug_timer_
private

Debug出力する次のゲーム内時刻[ms].

int [] ATCFS.Atc.default_notch_
private

標準ブレーキノッチ

int ATCFS.Atc.dsatc_arrow_spd_
private

DS-ATC用パターン照査速度[km/h].

readonly Fuzzy ATCFS.Atc.fuzzy_
private
double ATCFS.Atc.lever_delay_
private

ブレーキハンドルの操作から指令出力までの遅れ時間[s]

int ATCFS.Atc.max_brake_notch_
private

常用最大ブレーキノッチ(HBを含まない)

double ATCFS.Atc.max_deceleration_
private

常用最大減速度[km/h/s]

int ATCFS.Atc.max_signal_
private

車両ATC最高速度に対応する信号インデックス

double [] ATCFS.Atc.pattarn_end_loc_list_
private

全パターンの減速完了地点[m]

int [] ATCFS.Atc.pattern_arrow_spd_list_
private

全パターンのパターン照査速度[km/h]

int [] ATCFS.Atc.pattern_is_valid_list_
private

全パターンの状態(0: 無効, 1: 有効)

double [] ATCFS.Atc.pattern_list_
private

デジタルATC用速度照査パターン

double [] ATCFS.Atc.pattern_start_loc_list_
private

全パターンのパターン降下開始地点[m]

int [] ATCFS.Atc.pattern_tget_spd_list_
private

全パターンの目標速度[km/h]

const int ATCFS.Atc.STA_PATTERN = 3
private

駅停車パターンの総数

int ATCFS.Atc.sub_atc_spd_
private

副速度計用 ATC速度[km/h]

int [] ATCFS.Atc.sub_spd_label_1_
private

副速度計用目盛 ATC速度-20 km/h

int [] ATCFS.Atc.sub_spd_label_2_
private

副速度計用目盛 ATC速度-10 km/h

int [] ATCFS.Atc.sub_spd_label_3_
private

副速度計用目盛 ATC速度

int [] ATCFS.Atc.sub_spd_label_4_
private

副速度計用目盛 ATC速度+10 km/h

int ATCFS.Atc.sub_train_spd_
private

副速度計用 列車速度[km/h]

double ATCFS.Atc.time_
private

ゲーム内時刻[ms]

readonly Train ATCFS.Atc.train_
private
double ATCFS.Atc.train_spd_
private

列車速度[km/h]

const int ATCFS.Atc.USR_PATTERN = 3
private

速度制限パターンの総数

double ATCFS.Atc.Xe
private

減速完了地点からの許容誤差[m]

double ATCFS.Atc.Xk
private

XeおよびXoを高速域で拡大させる係数

double ATCFS.Atc.Xo
private

減速完了地点からの過走限界距離[m]

プロパティ詳解

int ATCFS.Atc.atc_brake_notch_
getsetpackage

ATC出力ブレーキノッチ(HBを含まない)


このクラス詳解は次のファイルから抽出されました: