Skip to main content

AVxcelerate Simulation Framework 2025 R2

min_ttc_evaluator

Last update: 16.07.2025
1
3
4#include "autonomy/evaluator/min_ttc_evaluator/min_ttc_evaluator.h"
5
11{
12
17namespace evaluator
18{
19
20MinTtcEvaluator::MinTtcEvaluator(const std::string& kpi_name)
21 : min_ttc_(std::chrono::milliseconds::max()), kpi_name_(kpi_name)
22{
23}
24
25void MinTtcEvaluator::Init() {}
26
27void MinTtcEvaluator::Reset()
28{
29 min_ttc_ = std::chrono::milliseconds::max();
30}
31
32core::kpi::KpiContent MinTtcEvaluator::CalculateKpi(const osi3::GroundTruth& ground_truth)
33{
34 core::kpi::KpiContent kpi_content;
35 kpi_content.name = kpi_name_;
36 kpi_content.data_type = core::kpi::Datatype::Value::kDouble;
37 kpi_content.type = GetKpiType();
38 kpi_content.unit = "ms";
39 kpi_content.timestamp.seconds = ground_truth.timestamp().seconds();
40 kpi_content.timestamp.nanoseconds = ground_truth.timestamp().nanos();
41
42 const auto ttc = ttc_calculator_.Calculate(ground_truth);
43
44 if (ttc < min_ttc_)
45 {
46 min_ttc_ = ttc;
47 }
48
49 kpi_content.value = std::to_string(min_ttc_.count());
50
51 return kpi_content;
52}
53
54core::kpi::Type MinTtcEvaluator::GetKpiType() const
55{
56 return core::kpi::Type::kScalar;
57}
58
59} // namespace evaluator
60} // namespace simulation_framework
The namespace containing evaluator implementations.
The top namespace for simulation framework.

Connect with Ansys