From 2d86a44964c3370429b2ebced633ebb9f140d7a5 Mon Sep 17 00:00:00 2001 From: Dominik Smith <d.smith@gsi.de> Date: Thu, 10 Nov 2022 11:34:04 +0100 Subject: [PATCH] Changed event-time computation from mean of Tzd digis to earliest Tzd digi in CbmAlgoBuildRawEvents. --- .../eventbuilder/digis/CbmAlgoBuildRawEvents.cxx | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/reco/eventbuilder/digis/CbmAlgoBuildRawEvents.cxx b/reco/eventbuilder/digis/CbmAlgoBuildRawEvents.cxx index e93fcd43b4..29393964b7 100644 --- a/reco/eventbuilder/digis/CbmAlgoBuildRawEvents.cxx +++ b/reco/eventbuilder/digis/CbmAlgoBuildRawEvents.cxx @@ -613,17 +613,19 @@ Bool_t CbmAlgoBuildRawEvents::HasTrigger(CbmEvent* event) void CbmAlgoBuildRawEvents::SetTzdEventTime(CbmEvent* event) { - int32_t iNbDigis = event->GetNofData(ECbmDataType::kT0Digi); + const int32_t iNbDigis = event->GetNofData(ECbmDataType::kT0Digi); if (0 < iNbDigis) { - double eventTime = 0; - for (int idigi = 0; idigi < iNbDigis; ++idigi) { - uint idx = event->GetIndex(ECbmDataType::kT0Digi, idigi); - const CbmTzdDigi* pDigi = GetDigi<CbmTzdDigi>(idx); + uint idx = event->GetIndex(ECbmDataType::kT0Digi, 0); + const CbmTzdDigi* pDigi = GetDigi<CbmTzdDigi>(idx); + double eventTime = pDigi->GetTime(); + + for (int idigi = 1; idigi < iNbDigis; ++idigi) { + idx = event->GetIndex(ECbmDataType::kT0Digi, idigi); + pDigi = GetDigi<CbmTzdDigi>(idx); if (nullptr == pDigi) continue; - eventTime += pDigi->GetTime(); + eventTime = std::min(pDigi->GetTime(), eventTime); } - eventTime /= iNbDigis; event->SetStartTime(eventTime); } } -- GitLab