From de2aa477280bd35dce0234b87531460c2f3b8e4b Mon Sep 17 00:00:00 2001 From: P-A Loizeau <p.-a.loizeau@gsi.de> Date: Thu, 17 Nov 2022 10:00:25 +0100 Subject: [PATCH] In AlgoBuildRawEvent, fix a bug forcing min 1 digi when max was set --- reco/eventbuilder/digis/CbmAlgoBuildRawEvents.cxx | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/reco/eventbuilder/digis/CbmAlgoBuildRawEvents.cxx b/reco/eventbuilder/digis/CbmAlgoBuildRawEvents.cxx index 29393964b7..38a5eb38de 100644 --- a/reco/eventbuilder/digis/CbmAlgoBuildRawEvents.cxx +++ b/reco/eventbuilder/digis/CbmAlgoBuildRawEvents.cxx @@ -643,15 +643,17 @@ Bool_t CbmAlgoBuildRawEvents::CheckTriggerConditions(CbmEvent* event, const RawE return kFALSE; } - /// Check trigger rejection by minimal number or absence + /// Check trigger rejection by minimal/maximal number or absence, if enabled/requested int32_t iNbDigis = event->GetNofData(det.dataType); - if ((-1 == iNbDigis) || (static_cast<UInt_t>(iNbDigis) < det.fuTriggerMinDigis)) { + + /// a.Check trigger rejection by minimal number (if enabled) + if (0 < det.fuTriggerMinDigis && ((-1 == iNbDigis) || (static_cast<UInt_t>(iNbDigis) < det.fuTriggerMinDigis))) { LOG(debug2) << "Event does not have enough digis: " << iNbDigis << " vs " << det.fuTriggerMinDigis << " for " << det.sName; return kFALSE; } - /// Check trigger rejection by maximal number (if enabled) + /// b.Check trigger rejection by maximal number (if enabled) if (0 <= det.fiTriggerMaxDigis && det.fiTriggerMaxDigis < iNbDigis) { LOG(debug2) << "Event Has too many digis: " << iNbDigis << " vs " << det.fiTriggerMaxDigis << " for " << det.sName; return kFALSE; -- GitLab