    

 ## On this page

  

 

 # simulation\_framework::core::IEvaluator&lt; T &gt; Class Template Reference

 Last update: 16.07.2025 

class [IEvaluator](classsimulation__framework_1_1core_1_1IEvaluator.xhtml "class IEvaluator") [More...](classsimulation__framework_1_1core_1_1IEvaluator.xhtml#details)

`#include <<a class="el" href="i__evaluator_8h_source.xhtml">i_evaluator.h</a>>`

## <a name="pub-methods"></a>Public Member Functions

virtual void [Init](classsimulation__framework_1_1core_1_1IEvaluator.xhtml#ac62458dfff2bf4a0287bc48335bec4ff) ()=0 virtual void [Reset](classsimulation__framework_1_1core_1_1IEvaluator.xhtml#a4f2140b6e5dc9289d084c601c1f28cf2) ()=0 virtual void [Evaluate](classsimulation__framework_1_1core_1_1IEvaluator.xhtml#a251fb9feee11d29b6c4bd5161a7b7089) ()=0 <a id="ab045bc8abee99d346021bfc26a058e02"></a>virtual void **AddKpi** (std::unique\_ptr&lt; [kpi::IKpi](classsimulation__framework_1_1core_1_1kpi_1_1IKpi.xhtml)&lt; T &gt;&gt; kpi)=0 virtual core::kpi::KpiMessage [GetKpiMessage](classsimulation__framework_1_1core_1_1IEvaluator.xhtml#a81ab03795b81308e647d4f7022a64d4a) () const =0 virtual void [SetInput](classsimulation__framework_1_1core_1_1IEvaluator.xhtml#a17db67a251425e3ecc47d45c03a1b056) (const T &amp;input)=0 <a id="details" name="details"></a>## Detailed Description

### template&lt;typename T&gt;  
class simulation\_framework::core::IEvaluator&lt; T &gt;

class [IEvaluator](classsimulation__framework_1_1core_1_1IEvaluator.xhtml "class IEvaluator")

Interface definition for evaluator where user can add KPIs and do evaluations in a chain based on input message type



## Member Function Documentation

<a id="a251fb9feee11d29b6c4bd5161a7b7089"></a>## [◆ ](#a251fb9feee11d29b6c4bd5161a7b7089)Evaluate()

template&lt;typename T &gt; 

 virtual void [simulation\_framework::core::IEvaluator](classsimulation__framework_1_1core_1_1IEvaluator.xhtml)&lt; T &gt;::Evaluate  ( )   pure virtual 

Do calculation of all KPIs

Implemented in [simulation\_framework::evaluator::GtBaseEvaluator](classsimulation__framework_1_1evaluator_1_1GtBaseEvaluator.xhtml#a09b8959aaaacce2b842abfd304b63674).





<a id="a81ab03795b81308e647d4f7022a64d4a"></a>## [◆ ](#a81ab03795b81308e647d4f7022a64d4a)GetKpiMessage()

template&lt;typename T &gt; 

 virtual core::kpi::KpiMessage [simulation\_framework::core::IEvaluator](classsimulation__framework_1_1core_1_1IEvaluator.xhtml)&lt; T &gt;::GetKpiMessage  ( )  const  pure virtual 

Get the filled KPI messages based on calculation of all KPIs

ReturnsA kpi::KpiMessage object, the vector of KpiContent represents of all added KPIs into this evaluator 



<a id="ac62458dfff2bf4a0287bc48335bec4ff"></a>## [◆ ](#ac62458dfff2bf4a0287bc48335bec4ff)Init()

template&lt;typename T &gt; 

 virtual void [simulation\_framework::core::IEvaluator](classsimulation__framework_1_1core_1_1IEvaluator.xhtml)&lt; T &gt;::Init  ( )   pure virtual 

Implement any initialization related logic happens here

Implemented in [simulation\_framework::evaluator::GtBaseEvaluator](classsimulation__framework_1_1evaluator_1_1GtBaseEvaluator.xhtml#a930cb234264aa995b30eab8c537a15ad).





<a id="a4f2140b6e5dc9289d084c601c1f28cf2"></a>## [◆ ](#a4f2140b6e5dc9289d084c601c1f28cf2)Reset()

template&lt;typename T &gt; 

 virtual void [simulation\_framework::core::IEvaluator](classsimulation__framework_1_1core_1_1IEvaluator.xhtml)&lt; T &gt;::Reset  ( )   pure virtual 

Implement any logic to reset your KPI calculations

Implemented in [simulation\_framework::evaluator::GtBaseEvaluator](classsimulation__framework_1_1evaluator_1_1GtBaseEvaluator.xhtml#acacfb885fab2f83b114e870fa9433f3d).





<a id="a17db67a251425e3ecc47d45c03a1b056"></a>## [◆ ](#a17db67a251425e3ecc47d45c03a1b056)SetInput()

template&lt;typename T &gt; 

 virtual void [simulation\_framework::core::IEvaluator](classsimulation__framework_1_1core_1_1IEvaluator.xhtml)&lt; T &gt;::SetInput  ( const T &amp;  *input*)   pure virtual 

Set input message for KPI calculations

Parameters inputThe generic input for the evaluator to base the KPI calculations on Implemented in [simulation\_framework::evaluator::GtBaseEvaluator](classsimulation__framework_1_1evaluator_1_1GtBaseEvaluator.xhtml#adc68080d44c2f5a294dbb511fe7d1c77).





---

The documentation for this class was generated from the following file:- [i\_evaluator.h](i__evaluator_8h_source.xhtml)