    

 ## On this page

  

 

 # predictive\_min\_ttc\_evaluator

 Last update: 16.07.2025 

<a id="l00001" name="l00001"></a> 1 

<a id="l00003" name="l00003"></a> 3 

<a id="l00004" name="l00004"></a> 4\#pragma once

<a id="l00005" name="l00005"></a> 5 

<a id="l00006" name="l00006"></a> 6\#include "autonomy/evaluator/predictive\_ttc\_calculator/predictive\_ttc\_calculator.h"

<a id="l00007" name="l00007"></a> 7\#include "core/kpi/i\_kpi/i\_kpi.h"

<a id="l00008" name="l00008"></a> 8 

<a id="l00013" name="l00013"></a> 13namespace [simulation\_framework](namespacesimulation__framework.xhtml)

<a id="l00014" name="l00014"></a> 14{

<a id="l00015" name="l00015"></a> 15 

<a id="l00020" name="l00020"></a> 20namespace [evaluator](namespaceevaluator.xhtml)

<a id="l00021" name="l00021"></a> 21{

<a id="l00022" name="l00022"></a> 22 

<a id="l00024" name="l00024"></a> 24 

<a id="l00030" name="l00030"></a>[ 30](classsimulation__framework_1_1evaluator_1_1PredictiveMinTtcEvaluator.xhtml)class [PredictiveMinTtcEvaluator](classsimulation__framework_1_1evaluator_1_1PredictiveMinTtcEvaluator.xhtml) : public [core::kpi::IKpi](classsimulation__framework_1_1core_1_1kpi_1_1IKpi.xhtml)&lt;osi3::GroundTruth&gt;

<a id="l00031" name="l00031"></a> 31{

<a id="l00032" name="l00032"></a> 32 public:

<a id="l00033" name="l00033"></a> 33 [PredictiveMinTtcEvaluator](classsimulation__framework_1_1evaluator_1_1PredictiveMinTtcEvaluator.xhtml)(const std::string&amp; kpi_name = "predictive\_min\_ttc");

<a id="l00034" name="l00034"></a> 34 [~PredictiveMinTtcEvaluator](classsimulation__framework_1_1evaluator_1_1PredictiveMinTtcEvaluator.xhtml)() = default;

<a id="l00035" name="l00035"></a> 35 

<a id="l00036" name="l00036"></a> 36 void [Init](classsimulation__framework_1_1evaluator_1_1PredictiveMinTtcEvaluator.xhtml#aad25aefd4cb26ff9697c441d39de2deb)() override;

<a id="l00037" name="l00037"></a> 37 void [Reset](classsimulation__framework_1_1evaluator_1_1PredictiveMinTtcEvaluator.xhtml#a8f78acf7646d8476fdbbdc931fbc3ffe)() override;

<a id="l00038" name="l00038"></a> 38 [core::kpi::KpiContent](structsimulation__framework_1_1core_1_1kpi_1_1KpiContent.xhtml) [CalculateKpi](classsimulation__framework_1_1evaluator_1_1PredictiveMinTtcEvaluator.xhtml#a8778dbbad77b21dec72930729a8f52a7)(const osi3::GroundTruth&amp; ground_truth) override;

<a id="l00039" name="l00039"></a> 39 core::kpi::Type [GetKpiType](classsimulation__framework_1_1evaluator_1_1PredictiveMinTtcEvaluator.xhtml#afa04796b1e66b16c1f33ee011530cb90)() const override;

<a id="l00040" name="l00040"></a> 40 

<a id="l00041" name="l00041"></a> 41 private:

<a id="l00042" name="l00042"></a> 42 std::chrono::milliseconds min_ttc_;

<a id="l00043" name="l00043"></a> 43 std::string kpi_name_;

<a id="l00044" name="l00044"></a> 44 [PredictiveTimeToCollisionCalculator](classsimulation__framework_1_1evaluator_1_1PredictiveTimeToCollisionCalculator.xhtml) predictive_ttc_calculator_{};

<a id="l00045" name="l00045"></a> 45};



<a id="l00046" name="l00046"></a> 46 

<a id="l00047" name="l00047"></a> 47} // namespace evaluator

<a id="l00048" name="l00048"></a> 48} // namespace simulation\_framework

[simulation\_framework::core::kpi::IKpi](classsimulation__framework_1_1core_1_1kpi_1_1IKpi.xhtml)

Represents core KPI calculation logic.

**Definition** [i\_kpi.h:39](i__kpi_8h_source.xhtml#l00038)



[simulation\_framework::evaluator::PredictiveMinTtcEvaluator](classsimulation__framework_1_1evaluator_1_1PredictiveMinTtcEvaluator.xhtml)

class PredictiveMinTtcEvaluator

**Definition** [predictive\_min\_ttc\_evaluator.h:31](predictive__min__ttc__evaluator_8h_source.xhtml#l00030)



[simulation\_framework::evaluator::PredictiveMinTtcEvaluator::CalculateKpi](classsimulation__framework_1_1evaluator_1_1PredictiveMinTtcEvaluator.xhtml#a8778dbbad77b21dec72930729a8f52a7)

core::kpi::KpiContent CalculateKpi(const osi3::GroundTruth &amp;ground_truth) override

Executes the core KPI calculation logic.

**Definition** [predictive\_min\_ttc\_evaluator.cpp:23](predictive__min__ttc__evaluator_8cpp_source.xhtml#l00023)



[simulation\_framework::evaluator::PredictiveMinTtcEvaluator::Reset](classsimulation__framework_1_1evaluator_1_1PredictiveMinTtcEvaluator.xhtml#a8f78acf7646d8476fdbbdc931fbc3ffe)

void Reset() override

Resets the KPI logic.

**Definition** [predictive\_min\_ttc\_evaluator.cpp:18](predictive__min__ttc__evaluator_8cpp_source.xhtml#l00018)



[simulation\_framework::evaluator::PredictiveMinTtcEvaluator::Init](classsimulation__framework_1_1evaluator_1_1PredictiveMinTtcEvaluator.xhtml#aad25aefd4cb26ff9697c441d39de2deb)

void Init() override

Initializes the KPI logic.

**Definition** [predictive\_min\_ttc\_evaluator.cpp:16](predictive__min__ttc__evaluator_8cpp_source.xhtml#l00016)



[simulation\_framework::evaluator::PredictiveMinTtcEvaluator::GetKpiType](classsimulation__framework_1_1evaluator_1_1PredictiveMinTtcEvaluator.xhtml#afa04796b1e66b16c1f33ee011530cb90)

core::kpi::Type GetKpiType() const override

Retrieves the KPI type.

**Definition** [predictive\_min\_ttc\_evaluator.cpp:45](predictive__min__ttc__evaluator_8cpp_source.xhtml#l00045)



[simulation\_framework::evaluator::PredictiveTimeToCollisionCalculator](classsimulation__framework_1_1evaluator_1_1PredictiveTimeToCollisionCalculator.xhtml)

class PredictiveTimeToCollisionCalculator

**Definition** [predictive\_ttc\_calculator.h:45](predictive__ttc__calculator_8h_source.xhtml#l00044)



[evaluator](namespaceevaluator.xhtml)

The namespace containing evaluator implementations.



[simulation\_framework](namespacesimulation__framework.xhtml)

The top namespace for simulation framework.



[simulation\_framework::core::kpi::KpiContent](structsimulation__framework_1_1core_1_1kpi_1_1KpiContent.xhtml)

struct KpiContent

**Definition** [kpi\_definition.h:67](kpi__definition_8h_source.xhtml#l00066)