ATS-Pを再現するクラス [詳解]
#include <AtsP.h>


クラス | |
| class | PatternP |
| 制限速度パターン関連を記述するクラス [詳解] | |
| class | SectionP |
| 停止信号パターン関連を記述するクラス [詳解] | |
公開メンバ関数 | |
| Atsp (void) | |
| virtual | ~Atsp (void) |
| void | InitP (void) |
| Initializeで実行する関数 [詳解] | |
| void | StartP (void) |
| ATS-Pを投入する際に実行する関数 [詳解] | |
| void | ExitP (void) |
| ATS-Pを遮断する際に実行する関数 [詳解] | |
| void | PassedBeaconP (int index, int signal, float distance, int optional) |
| SetBeaconDataで実行される関数 [詳解] | |
| void | ResetSwDownP (void) |
| 復帰ボタンが押下された際に実行する関数 [詳解] | |
| void | ExeP (void) |
| Elapseで実行する関数 [詳解] | |
公開変数類 | |
| int | EmergencyNotch |
| 非常ブレーキノッチ(HBを含む) [詳解] | |
| int | ServiceNotch |
| 常用最大ブレーキノッチ(HBを含む) [詳解] | |
| int | AtsNotch |
| ATS確認ノッチ(B1) [詳解] | |
| const float * | TrainSpeed |
| 列車速度[km/h] [詳解] | |
| const int * | Time |
| ゲーム内時刻[ms] [詳解] | |
| const int * | ManualBrakeNotch |
| 手動ブレーキノッチ(HBを含む) [詳解] | |
| double | Location |
| 列車位置[m] [詳解] | |
| float | max_deceleration_ |
| 常用最大減速度[km/h/s] [詳解] | |
| int | atsp_power_ |
| ATS-P電源(0: 消灯, 1: 点灯) [詳解] | |
| int | atsp_use_ |
| ATS-P(0: 消灯, 1: 点灯) [詳解] | |
| int | atsp_max_spd_ |
| 車両ATS-P最高速度[km/h] [詳解] | |
| float | atsp_deceleration_ |
| ATS-Pブレーキ減速度[km/h/s]. [詳解] | |
| int | atsp_brake_notch_ |
| ATS-P出力ブレーキノッチ(HBを含まない) [詳解] | |
| int | atsp_aprch_lamp_ |
| パターン接近(0: 消灯, 1: 点灯) [詳解] | |
| int | atsp_brake_lamp_ |
| ブレーキ作動(0: 消灯, 1: 点灯) [詳解] | |
| int | atsp_reset_lamp_ |
| ブレーキ解放(0: 消灯, 1: 点灯) [詳解] | |
| int | atsp_ding_ |
| ATS-Pベルの状態 [詳解] | |
非公開メンバ関数 | |
| void | SetPatternList (void) |
| 速度照査パターンを作成する関数 [詳解] | |
| void | AdjDeceleration (int deceleration) |
| 勾配補正設定を行う関数 [詳解] | |
| int | SearchPattern (float distance) |
| 距離に対応する速度を返す関数 [詳解] | |
| void | ValidPattern (int &tget_spd, int pattern_status) |
| パターンが無効の場合に目標速度を車両ATS-P最高速度に修正する関数 [詳解] | |
| int | CalcPatternSpd (int tget_spd, float pattern_end_loc) |
| パターン照査速度を算出する関数 [詳解] | |
| int | IsAprchPattern (int tget_spd, float pattern_end_loc) |
| パターン接近警報を発信する関数 [詳解] | |
| void | CollectPattern (void) |
| パターン情報を集約する関数 [詳解] | |
| void | CalcPattern (void) |
| 各パターン情報からパターン照査速度を算出し、パターン接近警報の状態を取得する関数 [詳解] | |
| void | AtspCheck (void) |
| フラグのON, OFFを行う関数 [詳解] | |
| void | Reset (void) |
| 復帰扱いの判定を行う関数 [詳解] | |
| void | BrakeExe (void) |
| ブレーキノッチを出力する関数 [詳解] | |
| void | DisplayLamp (void) |
| ランプの点灯, 消灯を行う関数 [詳解] | |
| void | PlaySound (void) |
| サウンドを再生する関数 [詳解] | |
基底クラス Base に属する継承非公開メンバ関数 | |
| template<typename T > | |
| T | VectorGetOrDefault (const boost::container::vector< T > &v, int index, char *file, char *func, int line) |
| vectorコンテナへの範囲外アクセス時にデフォルト値を返す関数 [詳解] | |
| template<typename T , std::size_t N> | |
| T | ArrayGetOrDefault (const boost::array< T, N > &a, int index, char *file, char *func, int line) |
| arrayコンテナへの範囲外アクセス時にデフォルト値を返す関数 [詳解] | |
| template<typename T > | |
| T | VectorTryGet (const boost::container::vector< T > &v, int index, char *file, char *func, int line) |
| template<typename T , std::size_t N> | |
| T | ArrayTryGet (const boost::array< T, N > &a, int index, char *file, char *func, int line) |
非公開変数類 | |
| int | max_brake_notch_ |
| 常用最大ブレーキノッチ(HBを含まない) [詳解] | |
| int | default_notch_ |
| 標準ブレーキノッチ [詳解] | |
| boost::container::vector< double > | pattern_list_ |
| 速度照査パターン [詳解] | |
| double | adj_deceleration_ |
| 各ブレーキノッチの減速度補正値[m/s^2] [詳解] | |
| boost::array< float, ALL_PATTERN_P > | pattern_end_loc_list_ |
| 全パターンの減速完了地点[m] [詳解] | |
| boost::array< int, ALL_PATTERN_P > | pattern_is_valid_list_ |
| 全パターンの状態(0: 無効, 1: 有効) [詳解] | |
| boost::array< int, ALL_PATTERN_P > | pattern_tget_spd_list_ |
| 全パターンの目標速度[km/h] [詳解] | |
| boost::array< int, ALL_PATTERN_P > | pattern_pre_spd_list_ |
| 全パターンのパターン照査速度[km/h] [詳解] | |
| boost::array< int, ALL_PATTERN_P > | pattern_aprch_list_ |
| 全パターンのパターン接近警報の状態(0: 無効, 1: 有効) [詳解] | |
| int | next_atsp_ding_ |
| 1フレーム後のATS-Pベルの状態 [詳解] | |
| int | prev_aprch_lamp_ |
| 以前のパターン接近灯(0: 消灯, 1: 点灯) [詳解] | |
| int | debug_timer_ |
| Debug出力する次のゲーム内時刻[ms]. [詳解] | |
| boost::scoped_ptr< SectionP > | section_p_ |
| boost::scoped_ptr< PatternP > | pattern_p_ |
ATS-Pを再現するクラス
| Atsp::Atsp | ( | void | ) |
|
virtual |
|
private |
勾配補正設定を行う関数
| deceleration | 減速度補正値[m/s^2]*1000 |


|
private |
フラグのON, OFFを行う関数

|
private |
ブレーキノッチを出力する関数

|
private |
各パターン情報からパターン照査速度を算出し、パターン接近警報の状態を取得する関数


|
private |
パターン照査速度を算出する関数
減速完了地点内方は目標速度のフラットパターンとなる
| tget_spd | 目標速度[km/h] |
| pattern_end_loc | 減速完了地点[m] |


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

|
private |
ランプの点灯, 消灯を行う関数

| void Atsp::ExeP | ( | void | ) |
Elapseで実行する関数


| void Atsp::ExitP | ( | void | ) |
ATS-Pを遮断する際に実行する関数

| void Atsp::InitP | ( | void | ) |
Initializeで実行する関数


|
private |
パターン接近警報を発信する関数
| tget_spd | 目標速度[km/h] |
| pattern_end_loc | 減速完了地点[m] |


| void Atsp::PassedBeaconP | ( | int | index, |
| int | signal, | ||
| float | distance, | ||
| int | optional | ||
| ) |
SetBeaconDataで実行される関数
| index | 地上子種別 |
| signal | 対となるセクションの信号番号 |
| distance | 対となるセクションまでの距離[m] |
| optional | 地上子に設定された任意の値 |


|
private |
サウンドを再生する関数

|
private |
復帰扱いの判定を行う関数

| void Atsp::ResetSwDownP | ( | void | ) |
復帰ボタンが押下された際に実行する関数


|
private |
距離に対応する速度を返す関数
指定された距離の近似値に対応する速度を検索する
| distance | 距離[m] |

|
private |
速度照査パターンを作成する関数

| void Atsp::StartP | ( | void | ) |
ATS-Pを投入する際に実行する関数

|
private |
パターンが無効の場合に目標速度を車両ATS-P最高速度に修正する関数
| tget_spd | 目標速度[km/h] |
| pattern_status | パターン状態(0: 無効, 1: 有効) |

|
private |
各ブレーキノッチの減速度補正値[m/s^2]
| int Atsp::AtsNotch |
ATS確認ノッチ(B1)
| int Atsp::atsp_aprch_lamp_ |
パターン接近(0: 消灯, 1: 点灯)
| int Atsp::atsp_brake_lamp_ |
ブレーキ作動(0: 消灯, 1: 点灯)
| int Atsp::atsp_brake_notch_ |
ATS-P出力ブレーキノッチ(HBを含まない)
| float Atsp::atsp_deceleration_ |
ATS-Pブレーキ減速度[km/h/s].
| int Atsp::atsp_ding_ |
ATS-Pベルの状態
| int Atsp::atsp_max_spd_ |
車両ATS-P最高速度[km/h]
| int Atsp::atsp_power_ |
ATS-P電源(0: 消灯, 1: 点灯)
| int Atsp::atsp_reset_lamp_ |
ブレーキ解放(0: 消灯, 1: 点灯)
| int Atsp::atsp_use_ |
ATS-P(0: 消灯, 1: 点灯)
|
private |
Debug出力する次のゲーム内時刻[ms].
|
private |
標準ブレーキノッチ
| int Atsp::EmergencyNotch |
非常ブレーキノッチ(HBを含む)
| double Atsp::Location |
列車位置[m]
| const int* Atsp::ManualBrakeNotch |
手動ブレーキノッチ(HBを含む)
|
private |
常用最大ブレーキノッチ(HBを含まない)
| float Atsp::max_deceleration_ |
常用最大減速度[km/h/s]
|
private |
1フレーム後のATS-Pベルの状態
|
private |
全パターンのパターン接近警報の状態(0: 無効, 1: 有効)
|
private |
全パターンの減速完了地点[m]
|
private |
全パターンの状態(0: 無効, 1: 有効)
|
private |
速度照査パターン
|
private |
|
private |
全パターンのパターン照査速度[km/h]
|
private |
全パターンの目標速度[km/h]
|
private |
以前のパターン接近灯(0: 消灯, 1: 点灯)
|
private |
| int Atsp::ServiceNotch |
常用最大ブレーキノッチ(HBを含む)
| const int* Atsp::Time |
ゲーム内時刻[ms]
| const float* Atsp::TrainSpeed |
列車速度[km/h]
1.8.6