Package-level declarations

Types

LMU の共有メモリ由来データから、今回読み上げるべき音声イベントを決定する UseCase。

Link copied to clipboard
data class LmuWindowsApproachState(val startedAtMs: Long, val announced: Boolean, val sustainedAnnounced: Boolean = false)

1 台の周辺車両に対する接近開始時刻と読み上げ済み状態。

Link copied to clipboard
data class LmuWindowsNarratorReadoutDecision(val state: LmuWindowsNarratorState, val events: List<ERROR CLASS: Symbol not found for ReadoutTextEvent>)

LMU 向け読み上げ判定の結果。次回へ渡す状態と、今回再生すべきイベントを含む。

Link copied to clipboard
data class LmuWindowsNarratorReadoutSettings(val enabledStates: Map<ERROR CLASS: Symbol not found for ReadoutItemKey, Boolean>, val currentLap: Int, val skipFirstLap: Boolean, val vehicleApproachSustainedApproachDurationSeconds: Int, val tyreTemperatureHighThresholdCelsius: ERROR CLASS: Symbol not found for Celsius, val tyreTemperatureLowWarningPhases: Set<SessionPhase>, val tyreWearThresholdPercentage: Int, val brakeTemperatureHighThresholdCelsius: ERROR CLASS: Symbol not found for Celsius, val brakeWearLowThresholdPercent: Int, val remainingVirtualEnergyThresholdPercentage: Int, val pitTimingVirtualEnergyLapsThreshold: Int, val pitTimingTyreWearLapsThreshold: Int)

LMU 向け読み上げ判定で参照するユーザー設定と現在周回情報。

Link copied to clipboard
data class LmuWindowsNarratorState(val vehicleApproachState: LmuWindowsVehicleApproachState = LmuWindowsVehicleApproachState(), val previousRaceFlags: LmuWindowsRaceFlagsData? = null, val previousVehicleDamage: LmuWindowsVehicleDamageData? = null, val previousTyreDetached: LmuWindowsTyreDetachedData? = null, val personalBestMs: Long = Long.MAX_VALUE, val previousBestLapTimeMs: Long? = null, val previousLapCount: Int? = null, val tyreOverheating: Boolean = false, val tyreWearWarned: Boolean = false, val brakeOverheating: Boolean = false, val brakeWearWarned: Boolean = false, val previousGamePhaseForTyreLowWarning: SessionPhase? = null, val remainingVirtualEnergyWarned: Boolean = false, val lastAnnouncedPitTimingVirtualEnergyLaps: Int = -1, val lastPitTimingVirtualEnergyEvaluationLap: Int = -1, val pitTimingVirtualEnergyTrackingState: LmuWindowsPitTimingTrackingState = LmuWindowsPitTimingTrackingState(), val lastAnnouncedPitTimingTyreWearLaps: Int = -1, val lastPitTimingTyreWearEvaluationLap: Int = -1, val pitTimingTyreWearTrackingState: LmuWindowsPitTimingTrackingState = LmuWindowsPitTimingTrackingState())

LMU 向け読み上げ判定の継続状態。

Link copied to clipboard
data class LmuWindowsPitTimingTrackingState(val session: Int? = null, val currentLap: Int = -1, val currentLapStartedAtMs: Long = 0, val currentLapStartValue: Double = 0.0, val currentLapHasRefilled: Boolean = false, val currentLapStartedAtBoundary: Boolean = false, val currentValue: Double = 0.0, val refillBaselineValue: Double = 0.0, val lastValidLapConsumption: Double? = null, val bestLapTimeMs: Long = -1L, val hasRefilled: Boolean = false, val isNewSession: Boolean = false, val observedAtMs: Long = 0)

ピットタイミング(バーチャルエネルギー・タイヤ摩耗の予想残り周回数)の推定に使う追跡状態。 直近に完走した(バーチャルエネルギー補充・タイヤ交換なしの)ラップの消費量を、次回以降の推定基準として使う 直近完走ラップ基準の方式。

Link copied to clipboard
data class LmuWindowsVehicleApproachState(val left: Map<Int, LmuWindowsApproachState> = emptyMap(), val right: Map<Int, LmuWindowsApproachState> = emptyMap())

LMU の車両接近読み上げで、左右それぞれの接近継続状態を保持する。

ブレーキの残量(厚さと%)を流す。取得できなかった周期は null を流す。

Link copied to clipboard
Link copied to clipboard

カスタム読み上げ文言を保存する。

Link copied to clipboard

カスタム読み上げ文言を保存する。

カスタム読み上げ文言を保存する。

Link copied to clipboard
data class TyreTemperatureReadoutInput(val tyreCarcassTemperature: LmuWindowsTyreCarcassTemperatureData, val raceFlags: LmuWindowsRaceFlagsData)

タイヤ温度読み上げ判定(過熱・低温警告)の入力データ。 DetermineLmuWindowsNarratorReadoutUseCase.determineTyreTemperatureOverheat / DetermineLmuWindowsNarratorReadoutUseCase.determineTyreTemperatureLow とテレメトリログ記録の 双方でこの型を共有し、判定に使う入力とログに記録する入力がずれないようにする。