From 2e2b37046b90c7a466e759ecc696d596b9394637 Mon Sep 17 00:00:00 2001
From: Dominik Smith <smith@th.physik.uni-frankfurt.de>
Date: Mon, 1 Feb 2021 15:27:00 +0100
Subject: [PATCH] Cbm2021EventBuilder: Applied formatting. Added new classes to
 CbmEventBuilderLinkDef and CMakeLists. Including EOverlapMode and
 EventBuilderDetector from 2019 event builder for now to avoid name clash.
 Added option to call 2021 event builder to macro/run/run_reco.C.

---
 macro/run/run_reco.C                          |   7 +-
 reco/eventbuilder/CMakeLists.txt              |   3 +
 reco/eventbuilder/CbmEventBuilderLinkDef.h    |   3 +-
 .../digis/Cbm2021EventBuilderAlgo.cxx         | 222 ++++++++----------
 .../digis/Cbm2021EventBuilderAlgo.h           |  56 ++---
 .../digis/Cbm2021EventBuilderTask.cxx         | 145 ++++++------
 .../digis/Cbm2021EventBuilderTask.h           |  28 +--
 7 files changed, 225 insertions(+), 239 deletions(-)

diff --git a/macro/run/run_reco.C b/macro/run/run_reco.C
index 7afd3921..b318ab8f 100644
--- a/macro/run/run_reco.C
+++ b/macro/run/run_reco.C
@@ -218,8 +218,13 @@ void run_reco(TString input        = "",
 
       // ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ //
       /// to use 2018 version, uncomment this section and comment the prev. one
+
+      /* switch between 2019 and 2021 version here, which have the same interface
       CbmMcbm2019TimeWinEventBuilderTask* evBuildRaw =
         new CbmMcbm2019TimeWinEventBuilderTask();
+*/
+      Cbm2021EventBuilderTask* evBuildRaw = new Cbm2021EventBuilderTask();
+
       evBuildRaw->SetTsParameters(0.0, 1.e7, 0.0);
 
       // Use CbmMuchDigi instead of CbmMuchBeamtimeDigi
@@ -260,7 +265,6 @@ void run_reco(TString input        = "",
   }  //? event-based reco
   // ------------------------------------------------------------------------
 
-
   // -----   Local reconstruction in MVD   ----------------------------------
   if (useMvd) {
 
@@ -452,7 +456,6 @@ void run_reco(TString input        = "",
 
   }  //? time-based reco
 
-
   // -----  Parameter database   --------------------------------------------
   std::cout << std::endl << std::endl;
   std::cout << "-I- " << myName << ": Set runtime DB" << std::endl;
diff --git a/reco/eventbuilder/CMakeLists.txt b/reco/eventbuilder/CMakeLists.txt
index 11025c2e..497cfe31 100644
--- a/reco/eventbuilder/CMakeLists.txt
+++ b/reco/eventbuilder/CMakeLists.txt
@@ -41,6 +41,7 @@ ${CBMROOT_SOURCE_DIR}/rich
 ${CBMROOT_SOURCE_DIR}/tof/TofMC
 ${CBMROOT_SOURCE_DIR}/psd
 ${CBMROOT_SOURCE_DIR}/field
+${CBMROOT_SOURCE_DIR}/core/data/raw
 
 )
 
@@ -66,6 +67,8 @@ link_directories( ${LINK_DIRECTORIES})
 
 set(SRCS
 
+digis/Cbm2021EventBuilderAlgo.cxx
+digis/Cbm2021EventBuilderTask.cxx
 digis/CbmBuildEventsIdeal.cxx
 digis/CbmBuildEventsIdealNew.cxx
 digis/CbmBuildEventsQA.cxx
diff --git a/reco/eventbuilder/CbmEventBuilderLinkDef.h b/reco/eventbuilder/CbmEventBuilderLinkDef.h
index a62bc57b..bdbb3410 100644
--- a/reco/eventbuilder/CbmEventBuilderLinkDef.h
+++ b/reco/eventbuilder/CbmEventBuilderLinkDef.h
@@ -4,7 +4,8 @@
 #pragma link off all classes;
 #pragma link off all functions;
 
-
+#pragma link C++ class Cbm2021EventBuilderAlgo + ;
+#pragma link C++ class Cbm2021EventBuilderTask + ;
 #pragma link C++ class CbmBuildEventsFromTracksIdeal + ;
 #pragma link C++ class CbmBuildEventsFromTracksReal + ;
 #pragma link C++ class CbmEventBuilderQA + ;
diff --git a/reco/eventbuilder/digis/Cbm2021EventBuilderAlgo.cxx b/reco/eventbuilder/digis/Cbm2021EventBuilderAlgo.cxx
index 774ea436..79001029 100644
--- a/reco/eventbuilder/digis/Cbm2021EventBuilderAlgo.cxx
+++ b/reco/eventbuilder/digis/Cbm2021EventBuilderAlgo.cxx
@@ -40,8 +40,7 @@ Cbm2021EventBuilderAlgo::~Cbm2021EventBuilderAlgo() {}
 
 // ---- Init -----------------------------------------------------------
 Bool_t Cbm2021EventBuilderAlgo::InitAlgo() {
-  LOG(info)
-    << "Cbm2021EventBuilderAlgo::InitAlgo => Starting sequence";
+  LOG(info) << "Cbm2021EventBuilderAlgo::InitAlgo => Starting sequence";
 
   // Get a handle from the IO manager
   FairRootManager* ioman = FairRootManager::Instance();
@@ -126,8 +125,7 @@ void Cbm2021EventBuilderAlgo::Finish() {
 }
 
 // ---------------------------------------------------------------------
-Bool_t Cbm2021EventBuilderAlgo::CheckDataAvailable(
-  EventBuilderDetector& det) {
+Bool_t Cbm2021EventBuilderAlgo::CheckDataAvailable(EventBuilderDetector& det) {
   // Get a handle from the IO manager
   FairRootManager* ioman = FairRootManager::Instance();
 
@@ -137,39 +135,33 @@ Bool_t Cbm2021EventBuilderAlgo::CheckDataAvailable(
     if (!fT0DigiVec) {
       LOG(info) << "No T0 digi input found.";
       return kFALSE;
-    }    
-  } 
-  else if (ECbmModuleId::kSts == det.detId) {
+    }
+  } else if (ECbmModuleId::kSts == det.detId) {
     if (!fStsDigis) {
       LOG(info) << "No " << det.sName << " digi input found.";
       return kFALSE;
     }
-  }
-  else if (ECbmModuleId::kMuch == det.detId) {
-    if (!fMuchDigis && !fMuchBeamTimeDigis ) {
+  } else if (ECbmModuleId::kMuch == det.detId) {
+    if (!fMuchDigis && !fMuchBeamTimeDigis) {
       LOG(info) << "No " << det.sName << " digi input found.";
       return kFALSE;
     }
-  }
-  else if (ECbmModuleId::kTrd == det.detId) {
+  } else if (ECbmModuleId::kTrd == det.detId) {
     if (!fTrdDigis) {
       LOG(info) << "No " << det.sName << " digi input found.";
       return kFALSE;
     }
-  }
-  else if (ECbmModuleId::kTof == det.detId) {
+  } else if (ECbmModuleId::kTof == det.detId) {
     if (!fTofDigis) {
       LOG(info) << "No " << det.sName << " digi input found.";
       return kFALSE;
     }
-  }
-  else if (ECbmModuleId::kRich == det.detId) {
+  } else if (ECbmModuleId::kRich == det.detId) {
     if (!fRichDigis) {
       LOG(info) << "No " << det.sName << " digi input found.";
       return kFALSE;
     }
-  }
-  else if (ECbmModuleId::kPsd == det.detId) {
+  } else if (ECbmModuleId::kPsd == det.detId) {
     if (!fPsdDigis) {
       LOG(info) << "No " << det.sName << " digi input found.";
       return kFALSE;
@@ -237,98 +229,103 @@ void Cbm2021EventBuilderAlgo::BuildEvents() {
   }    // switch( *det )
 }
 
-UInt_t Cbm2021EventBuilderAlgo::GetNofDigis( ECbmModuleId detId ) {
+UInt_t Cbm2021EventBuilderAlgo::GetNofDigis(ECbmModuleId detId) {
   switch (detId) {
     case ECbmModuleId::kSts: {
-	return fStsDigis->size();
-    }  
+      return fStsDigis->size();
+    }
     case ECbmModuleId::kMuch: {
       if (fbUseMuchBeamtimeDigi) {
-	return fMuchBeamTimeDigis->size();
-      }  
-      else {
-	return fMuchDigis->size();
-      }  
-    }  
+        return fMuchBeamTimeDigis->size();
+      } else {
+        return fMuchDigis->size();
+      }
+    }
     case ECbmModuleId::kTrd: {
       return fTrdDigis->size();
-    }  
+    }
     case ECbmModuleId::kTof: {
       return fTofDigis->size();
-    }  
+    }
     case ECbmModuleId::kRich: {
       return fRichDigis->size();
-    }  
+    }
     case ECbmModuleId::kPsd: {
       return fPsdDigis->size();
-    }  
+    }
     case ECbmModuleId::kT0: {
-      return fT0DigiVec->size(); //what to do here? Not in digi manager.
-    }  
+      return fT0DigiVec->size();  //what to do here? Not in digi manager.
+    }
     default: {
       LOG(fatal) << "Cbm2021EventBuilderAlgo::GetNofDigis => "
                  << "Trying to get digi number with unsupported detector.";
       return -1;
-    }  
-  }    
+    }
+  }
 }
 
-bool Cbm2021EventBuilderAlgo::DetIsPresent( ECbmModuleId detId ) {
+bool Cbm2021EventBuilderAlgo::DetIsPresent(ECbmModuleId detId) {
   switch (detId) {
     case ECbmModuleId::kSts: {
-	return fStsDigis!=nullptr;
-    }  
+      return fStsDigis != nullptr;
+    }
     case ECbmModuleId::kMuch: {
       if (fbUseMuchBeamtimeDigi) {
-	return fMuchBeamTimeDigis!=nullptr;
-      }  
-      else {
-	return fMuchDigis!=nullptr;
-      }  
-    }  
+        return fMuchBeamTimeDigis != nullptr;
+      } else {
+        return fMuchDigis != nullptr;
+      }
+    }
     case ECbmModuleId::kTrd: {
-      return fTrdDigis!=nullptr;
-    }  
+      return fTrdDigis != nullptr;
+    }
     case ECbmModuleId::kTof: {
-      return fTofDigis!=nullptr;
-    }  
+      return fTofDigis != nullptr;
+    }
     case ECbmModuleId::kRich: {
-      return fRichDigis!=nullptr;
-    }  
+      return fRichDigis != nullptr;
+    }
     case ECbmModuleId::kPsd: {
-      return fPsdDigis!=nullptr;
-    }  
+      return fPsdDigis != nullptr;
+    }
     case ECbmModuleId::kT0: {
-      return fT0DigiVec!=nullptr; //what to do here? Not in digi manager.
-    }  
+      return fT0DigiVec != nullptr;  //what to do here? Not in digi manager.
+    }
     default: {
       LOG(fatal) << "Cbm2021EventBuilderAlgo::GetNofDigis => "
                  << "Trying to get digi number with unsupported detector.";
       return -1;
-    }  
-  }    
+    }
+  }
 }
 
-template<> const CbmStsDigi* Cbm2021EventBuilderAlgo::GetDigi( UInt_t uDigi ) {
-	return &((*fStsDigis)[uDigi]);
+template<>
+const CbmStsDigi* Cbm2021EventBuilderAlgo::GetDigi(UInt_t uDigi) {
+  return &((*fStsDigis)[uDigi]);
 }
-template<> const CbmMuchBeamTimeDigi* Cbm2021EventBuilderAlgo::GetDigi( UInt_t uDigi ) {
-	return &((*fMuchBeamTimeDigis)[uDigi]);
+template<>
+const CbmMuchBeamTimeDigi* Cbm2021EventBuilderAlgo::GetDigi(UInt_t uDigi) {
+  return &((*fMuchBeamTimeDigis)[uDigi]);
 }
-template<> const CbmMuchDigi* Cbm2021EventBuilderAlgo::GetDigi( UInt_t uDigi ) {
-	return &((*fMuchDigis)[uDigi]);
+template<>
+const CbmMuchDigi* Cbm2021EventBuilderAlgo::GetDigi(UInt_t uDigi) {
+  return &((*fMuchDigis)[uDigi]);
 }
-template<> const CbmTrdDigi* Cbm2021EventBuilderAlgo::GetDigi( UInt_t uDigi ) {
-	return &((*fTrdDigis)[uDigi]);
+template<>
+const CbmTrdDigi* Cbm2021EventBuilderAlgo::GetDigi(UInt_t uDigi) {
+  return &((*fTrdDigis)[uDigi]);
 }
-template<> const CbmTofDigi* Cbm2021EventBuilderAlgo::GetDigi( UInt_t uDigi ) {
-	return &((*fTofDigis)[uDigi]);
+template<>
+const CbmTofDigi* Cbm2021EventBuilderAlgo::GetDigi(UInt_t uDigi) {
+  return &((*fTofDigis)[uDigi]);
 }
-template<> const CbmRichDigi* Cbm2021EventBuilderAlgo::GetDigi( UInt_t uDigi ) {
-	return &((*fRichDigis)[uDigi]);
+template<>
+const CbmRichDigi* Cbm2021EventBuilderAlgo::GetDigi(UInt_t uDigi) {
+  return &((*fRichDigis)[uDigi]);
 }
-template<> const CbmPsdDigi* Cbm2021EventBuilderAlgo::GetDigi( UInt_t uDigi ) {
-	return &((*fPsdDigis)[uDigi]);
+template<>
+const CbmPsdDigi* Cbm2021EventBuilderAlgo::GetDigi(UInt_t uDigi) {
+  return &((*fPsdDigis)[uDigi]);
 }
 
 template<class DigiSeed>
@@ -392,9 +389,8 @@ void Cbm2021EventBuilderAlgo::LoopOnSeeds() {
                  << "T0 as reference detector but vector not found!";
   }  // if (ECbmModuleId::kT0 == fRefDet.detId)
   else {
-    UInt_t uNbRefDigis = (0 < GetNofDigis(fRefDet.detId)
-                            ? GetNofDigis(fRefDet.detId)
-                            : 0);
+    UInt_t uNbRefDigis =
+      (0 < GetNofDigis(fRefDet.detId) ? GetNofDigis(fRefDet.detId) : 0);
     /// Loop on size of vector
     for (UInt_t uDigi = 0; uDigi < uNbRefDigis; ++uDigi) {
       LOG(debug) << Form("Checking seed %6u / %6u", uDigi, uNbRefDigis);
@@ -419,7 +415,7 @@ void Cbm2021EventBuilderAlgo::LoopOnSeeds() {
 }
 
 void Cbm2021EventBuilderAlgo::CheckSeed(Double_t dSeedTime,
-                                                   UInt_t uSeedDigiIdx) {
+                                        UInt_t uSeedDigiIdx) {
   /// If previous event valid and event overlap not allowed, check if we are in overlap
   /// and react accordingly
   if (nullptr != fCurrentEvent
@@ -589,9 +585,8 @@ void Cbm2021EventBuilderAlgo::CheckSeed(Double_t dSeedTime,
 }
 
 template<class DigiCheck>
-void Cbm2021EventBuilderAlgo::SearchMatches(
-  Double_t dSeedTime,
-  EventBuilderDetector& detMatch) {
+void Cbm2021EventBuilderAlgo::SearchMatches(Double_t dSeedTime,
+                                            EventBuilderDetector& detMatch) {
   /// This algo relies on time sorted vectors for the selected detectors
   UInt_t uLocalIndexStart = detMatch.fuStartIndex;
   UInt_t uLocalIndexEnd   = detMatch.fuStartIndex;
@@ -632,9 +627,8 @@ void Cbm2021EventBuilderAlgo::SearchMatches(
                  << "T0 as selection detector but vector not found!";
   }  // if( ECbmModuleId::kT0 == detMatch.detId )
   else {
-    UInt_t uNbSelDigis = (0 < GetNofDigis(detMatch.detId)
-                            ? GetNofDigis(detMatch.detId)
-                            : 0);
+    UInt_t uNbSelDigis =
+      (0 < GetNofDigis(detMatch.detId) ? GetNofDigis(detMatch.detId) : 0);
     /// Loop on size of vector
     for (UInt_t uDigi = detMatch.fuStartIndex; uDigi < uNbSelDigis; ++uDigi) {
       const DigiCheck* pDigi = GetDigi<DigiCheck>(uDigi);
@@ -676,9 +670,8 @@ void Cbm2021EventBuilderAlgo::SearchMatches(
   detMatch.fuEndIndex   = uLocalIndexEnd;
 }
 
-void Cbm2021EventBuilderAlgo::AddDigiToEvent(
-  EventBuilderDetector& det,
-  Int_t _entry) {
+void Cbm2021EventBuilderAlgo::AddDigiToEvent(EventBuilderDetector& det,
+                                             Int_t _entry) {
   fCurrentEvent->AddData(det.dataType, _entry);
 }
 
@@ -699,9 +692,9 @@ Bool_t Cbm2021EventBuilderAlgo::HasTrigger(CbmEvent* event) {
   return kTRUE;
 }
 
-Bool_t Cbm2021EventBuilderAlgo::CheckTriggerConditions(
-  CbmEvent* event,
-  EventBuilderDetector& det) {
+Bool_t
+Cbm2021EventBuilderAlgo::CheckTriggerConditions(CbmEvent* event,
+                                                EventBuilderDetector& det) {
   /// Check if both Trigger conditions disabled for this detector
   if (0 == det.fuTriggerMinDigis && det.fiTriggerMaxDigis < 0) {
     return kTRUE;
@@ -820,8 +813,7 @@ void Cbm2021EventBuilderAlgo::FillHistos() {
     dPreEvtTime = evt->GetStartTime();
   }  // for( CbmEvent * evt: fEventVector )
 }
-void Cbm2021EventBuilderAlgo::ResetHistograms(
-  Bool_t /*bResetTime*/) {
+void Cbm2021EventBuilderAlgo::ResetHistograms(Bool_t /*bResetTime*/) {
   fhEventTime->Reset();
   fhEventDt->Reset();
   fhEventSize->Reset();
@@ -843,14 +835,13 @@ void Cbm2021EventBuilderAlgo::ResetHistograms(
 */
 }
 //----------------------------------------------------------------------
-void Cbm2021EventBuilderAlgo::SetReferenceDetector(
-  ECbmModuleId refDet,
-  ECbmDataType dataTypeIn,
-  std::string sNameIn,
-  UInt_t uTriggerMinDigisIn,
-  Int_t iTriggerMaxDigisIn,
-  Double_t fdTimeWinBegIn,
-  Double_t fdTimeWinEndIn) {
+void Cbm2021EventBuilderAlgo::SetReferenceDetector(ECbmModuleId refDet,
+                                                   ECbmDataType dataTypeIn,
+                                                   std::string sNameIn,
+                                                   UInt_t uTriggerMinDigisIn,
+                                                   Int_t iTriggerMaxDigisIn,
+                                                   Double_t fdTimeWinBegIn,
+                                                   Double_t fdTimeWinEndIn) {
 
   /// FIXME: Deprecated method to be removed later. For now create temp object.
   SetReferenceDetector(EventBuilderDetector(refDet,
@@ -862,12 +853,12 @@ void Cbm2021EventBuilderAlgo::SetReferenceDetector(
                                             fdTimeWinEndIn));
 }
 void Cbm2021EventBuilderAlgo::AddDetector(ECbmModuleId selDet,
-                                                     ECbmDataType dataTypeIn,
-                                                     std::string sNameIn,
-                                                     UInt_t uTriggerMinDigisIn,
-                                                     Int_t iTriggerMaxDigisIn,
-                                                     Double_t fdTimeWinBegIn,
-                                                     Double_t fdTimeWinEndIn) {
+                                          ECbmDataType dataTypeIn,
+                                          std::string sNameIn,
+                                          UInt_t uTriggerMinDigisIn,
+                                          Int_t iTriggerMaxDigisIn,
+                                          Double_t fdTimeWinBegIn,
+                                          Double_t fdTimeWinEndIn) {
 
   /// FIXME: Deprecated method to be removed later. For now create temp object.
   AddDetector(EventBuilderDetector(selDet,
@@ -887,10 +878,9 @@ void Cbm2021EventBuilderAlgo::SetReferenceDetector(
        det != fvDets.end();
        ++det) {
     if ((*det) == refDetIn) {
-      LOG(warning)
-        << "Cbm2021EventBuilderAlgo::SetReferenceDetector => "
-           "Reference detector already in selection detector list!"
-        << refDetIn.sName;
+      LOG(warning) << "Cbm2021EventBuilderAlgo::SetReferenceDetector => "
+                      "Reference detector already in selection detector list!"
+                   << refDetIn.sName;
       LOG(warning)
         << "                                                         => "
            "It will be automatically removed from selection detector list!";
@@ -927,8 +917,7 @@ void Cbm2021EventBuilderAlgo::SetReferenceDetector(
   /// Update the variable storing the size if widest time window for overlap detection
   UpdateWidestTimeWinRange();
 }
-void Cbm2021EventBuilderAlgo::AddDetector(
-  EventBuilderDetector selDet) {
+void Cbm2021EventBuilderAlgo::AddDetector(EventBuilderDetector selDet) {
   if (fRefDet == selDet) {
     LOG(fatal) << "Cbm2021EventBuilderAlgo::AddDetector => Cannot "
                   "add the reference detector as selection detector!"
@@ -955,8 +944,7 @@ void Cbm2021EventBuilderAlgo::AddDetector(
   /// Update the variable storing the size if widest time window for overlap detection
   UpdateWidestTimeWinRange();
 }
-void Cbm2021EventBuilderAlgo::RemoveDetector(
-  EventBuilderDetector selDet) {
+void Cbm2021EventBuilderAlgo::RemoveDetector(EventBuilderDetector selDet) {
   /// Loop on selection detectors
   for (std::vector<EventBuilderDetector>::iterator det = fvDets.begin();
        det != fvDets.end();
@@ -971,9 +959,8 @@ void Cbm2021EventBuilderAlgo::RemoveDetector(
                << selDet.sName;
 }
 //----------------------------------------------------------------------
-void Cbm2021EventBuilderAlgo::SetTriggerMinNumber(
-  ECbmModuleId selDet,
-  UInt_t uVal) {
+void Cbm2021EventBuilderAlgo::SetTriggerMinNumber(ECbmModuleId selDet,
+                                                  UInt_t uVal) {
   /// Check first if reference detector
   if (fRefDet.detId == selDet) {
     fRefDet.fuTriggerMinDigis = uVal;
@@ -1003,9 +990,8 @@ void Cbm2021EventBuilderAlgo::SetTriggerMinNumber(
        "Doing nothing, detector neither reference nor in selection list!"
     << selDet;
 }
-void Cbm2021EventBuilderAlgo::SetTriggerMaxNumber(
-  ECbmModuleId selDet,
-  Int_t iVal) {
+void Cbm2021EventBuilderAlgo::SetTriggerMaxNumber(ECbmModuleId selDet,
+                                                  Int_t iVal) {
   /// Check first if reference detector
   if (fRefDet.detId == selDet) {
     fRefDet.fiTriggerMaxDigis = iVal;
@@ -1036,8 +1022,8 @@ void Cbm2021EventBuilderAlgo::SetTriggerMaxNumber(
     << selDet;
 }
 void Cbm2021EventBuilderAlgo::SetTriggerWindow(ECbmModuleId selDet,
-                                                          Double_t dWinBeg,
-                                                          Double_t dWinEnd) {
+                                               Double_t dWinBeg,
+                                               Double_t dWinEnd) {
   /// Check if valid time window: end strictly after beginning
   if (dWinEnd <= dWinBeg)
     LOG(fatal) << "Cbm2021EventBuilderAlgo::SetTriggerWindow => "
diff --git a/reco/eventbuilder/digis/Cbm2021EventBuilderAlgo.h b/reco/eventbuilder/digis/Cbm2021EventBuilderAlgo.h
index f132b866..0ccfd51b 100644
--- a/reco/eventbuilder/digis/Cbm2021EventBuilderAlgo.h
+++ b/reco/eventbuilder/digis/Cbm2021EventBuilderAlgo.h
@@ -9,6 +9,7 @@
 #define CBM2021EVENTBUILDERALGO_H
 
 /// CBM headers
+#include "../../fles/mcbm2018/tasks/CbmMcbm2019TimeWinEventBuilderAlgo.h"  // for EOverlapMode and EventBuilderDetector
 #include "CbmMuchBeamTimeDigi.h"
 #include "CbmMuchDigi.h"
 #include "CbmPsdDigi.h"
@@ -29,7 +30,7 @@
 #include <tuple>
 #include <vector>
 
-#include <boost/any.hpp> 
+#include <boost/any.hpp>
 
 class TimesliceMetaData;
 class CbmEvent;
@@ -39,6 +40,7 @@ class TH2;
 class TNamed;
 class TCanvas;
 
+/*    get from CbmMcbm2019TimeWinEventBuilderAlgo.h for now
 enum class EOverlapMode { NoOverlap, MergeOverlap, AllowOverlap };
 
 class EventBuilderDetector {
@@ -110,15 +112,15 @@ static const EventBuilderDetector kEventBuilderDetT0 =
 static const EventBuilderDetector kEventBuilderDetUndef =
   EventBuilderDetector();
 
+*/
+
 class Cbm2021EventBuilderAlgo {
 public:
   /** Default constructor **/
   Cbm2021EventBuilderAlgo();
 
-  Cbm2021EventBuilderAlgo(
-    const Cbm2021EventBuilderAlgo&) = delete;
-  Cbm2021EventBuilderAlgo
-  operator=(const Cbm2021EventBuilderAlgo&) = delete;
+  Cbm2021EventBuilderAlgo(const Cbm2021EventBuilderAlgo&) = delete;
+  Cbm2021EventBuilderAlgo operator=(const Cbm2021EventBuilderAlgo&) = delete;
 
   /** Destructor **/
   ~Cbm2021EventBuilderAlgo();
@@ -195,25 +197,18 @@ public:
   }
 
   /// Set digi containers
-  void SetStsDigis( std::vector<CbmStsDigi>* StsDigis ){
-    fStsDigis = StsDigis;
-  }
-  void SetMuchDigis( std::vector<CbmMuchDigi>* MuchDigis ){
+  void SetStsDigis(std::vector<CbmStsDigi>* StsDigis) { fStsDigis = StsDigis; }
+  void SetMuchDigis(std::vector<CbmMuchDigi>* MuchDigis) {
     fMuchDigis = MuchDigis;
   }
-  void SetTrdDigis( std::vector<CbmTrdDigi>* TrdDigis ){
-    fTrdDigis = TrdDigis;
-  }
-  void SetTofDigis( std::vector<CbmTofDigi>* TofDigis ){
-    fTofDigis = TofDigis;
-  }
-  void SetRichDigis( std::vector<CbmRichDigi>* RichDigis ){
+  void SetTrdDigis(std::vector<CbmTrdDigi>* TrdDigis) { fTrdDigis = TrdDigis; }
+  void SetTofDigis(std::vector<CbmTofDigi>* TofDigis) { fTofDigis = TofDigis; }
+  void SetRichDigis(std::vector<CbmRichDigi>* RichDigis) {
     fRichDigis = RichDigis;
   }
-  void SetPsdDigis( std::vector<CbmPsdDigi>* PsdDigis ){
-    fPsdDigis = PsdDigis;
-  }
-  void SetMuchBeamTimeDigis( std::vector<CbmMuchBeamTimeDigi>* MuchBeamTimeDigis ){
+  void SetPsdDigis(std::vector<CbmPsdDigi>* PsdDigis) { fPsdDigis = PsdDigis; }
+  void
+  SetMuchBeamTimeDigis(std::vector<CbmMuchBeamTimeDigi>* MuchBeamTimeDigis) {
     fMuchBeamTimeDigis = MuchBeamTimeDigis;
   }
 
@@ -280,17 +275,18 @@ private:
   TClonesArray* fTimeSliceMetaDataArray     = nullptr;  //!
   const TimesliceMetaData* pTsMetaData      = nullptr;
 
-  const std::vector<CbmMuchDigi>* fMuchDigis = nullptr;
+  const std::vector<CbmMuchDigi>* fMuchDigis                 = nullptr;
   const std::vector<CbmMuchBeamTimeDigi>* fMuchBeamTimeDigis = nullptr;
-  const std::vector<CbmStsDigi>* fStsDigis = nullptr;
-  const std::vector<CbmTrdDigi>* fTrdDigis = nullptr;
-  const std::vector<CbmTofDigi>* fTofDigis = nullptr;
-  const std::vector<CbmRichDigi>* fRichDigis = nullptr;
-  const std::vector<CbmPsdDigi>* fPsdDigis = nullptr;
-
-  bool DetIsPresent( ECbmModuleId detId ); 
-  UInt_t GetNofDigis( ECbmModuleId detId ); 
-  template <class Digi> const Digi* GetDigi( UInt_t uDigi );
+  const std::vector<CbmStsDigi>* fStsDigis                   = nullptr;
+  const std::vector<CbmTrdDigi>* fTrdDigis                   = nullptr;
+  const std::vector<CbmTofDigi>* fTofDigis                   = nullptr;
+  const std::vector<CbmRichDigi>* fRichDigis                 = nullptr;
+  const std::vector<CbmPsdDigi>* fPsdDigis                   = nullptr;
+
+  bool DetIsPresent(ECbmModuleId detId);
+  UInt_t GetNofDigis(ECbmModuleId detId);
+  template<class Digi>
+  const Digi* GetDigi(UInt_t uDigi);
 
   /// Data ouptut
   CbmEvent* fCurrentEvent =
diff --git a/reco/eventbuilder/digis/Cbm2021EventBuilderTask.cxx b/reco/eventbuilder/digis/Cbm2021EventBuilderTask.cxx
index d338f840..ecd72312 100644
--- a/reco/eventbuilder/digis/Cbm2021EventBuilderTask.cxx
+++ b/reco/eventbuilder/digis/Cbm2021EventBuilderTask.cxx
@@ -5,11 +5,11 @@
  *              GNU Lesser General Public Licence (LGPL) version 3,             *
  *                  copied verbatim in the file "LICENSE"                       *
  ********************************************************************************/
-#include "Cbm2021EventBuilderAlgo.h"
 #include "Cbm2021EventBuilderTask.h"
+#include "Cbm2021EventBuilderAlgo.h"
 
-#include "CbmEvent.h"
 #include "CbmDigiManager.h"
+#include "CbmEvent.h"
 
 #include "FairLogger.h"
 #include "FairRootManager.h"
@@ -29,8 +29,7 @@ Cbm2021EventBuilderTask::Cbm2021EventBuilderTask()
 }
 
 // ---- Destructor ----------------------------------------------------
-Cbm2021EventBuilderTask::~Cbm2021EventBuilderTask() {
-}
+Cbm2021EventBuilderTask::~Cbm2021EventBuilderTask() {}
 
 // ----  Initialisation  ----------------------------------------------
 void Cbm2021EventBuilderTask::SetParContainers() {
@@ -44,15 +43,13 @@ InitStatus Cbm2021EventBuilderTask::Init() {
 
   // Get a pointer to the previous already existing data level
   fDigiMan = CbmDigiManager::Instance();
-  if (fbUseMuchBeamtimeDigi) {
-    fDigiMan->UseMuchBeamTimeDigi();
-  }  
+  if (fbUseMuchBeamtimeDigi) { fDigiMan->UseMuchBeamTimeDigi(); }
   fDigiMan->Init();
 
   //Init STS digis
   if (!fDigiMan->IsPresent(ECbmModuleId::kSts)) {
     LOG(info) << "No STS digi input.";
-  }else{
+  } else {
     LOG(info) << "STS digi input.";
     fStsDigis = new std::vector<CbmStsDigi>;
     fpAlgo->SetStsDigis(fStsDigis);
@@ -61,12 +58,12 @@ InitStatus Cbm2021EventBuilderTask::Init() {
   //Init MUCH digis
   if (!fDigiMan->IsPresent(ECbmModuleId::kMuch)) {
     LOG(info) << "No MUCH digi input.";
-  }else{
+  } else {
     LOG(info) << "MUCH digi input.";
-    if( fbUseMuchBeamtimeDigi ){
+    if (fbUseMuchBeamtimeDigi) {
       fMuchBeamTimeDigis = new std::vector<CbmMuchBeamTimeDigi>;
       fpAlgo->SetMuchBeamTimeDigis(fMuchBeamTimeDigis);
-    }else{
+    } else {
       fMuchDigis = new std::vector<CbmMuchDigi>;
       fpAlgo->SetMuchDigis(fMuchDigis);
     }
@@ -75,7 +72,7 @@ InitStatus Cbm2021EventBuilderTask::Init() {
   //Init TRD digis
   if (!fDigiMan->IsPresent(ECbmModuleId::kTrd)) {
     LOG(info) << "No TRD digi input.";
-  }else{
+  } else {
     LOG(info) << "TRD digi input.";
     fTrdDigis = new std::vector<CbmTrdDigi>;
     fpAlgo->SetTrdDigis(fTrdDigis);
@@ -84,7 +81,7 @@ InitStatus Cbm2021EventBuilderTask::Init() {
   //Init TOF digis
   if (!fDigiMan->IsPresent(ECbmModuleId::kTof)) {
     LOG(info) << "No TOF digi input.";
-  }else{
+  } else {
     LOG(info) << "TOF digi input.";
     fTofDigis = new std::vector<CbmTofDigi>;
     fpAlgo->SetTofDigis(fTofDigis);
@@ -93,7 +90,7 @@ InitStatus Cbm2021EventBuilderTask::Init() {
   //Init RICH digis
   if (!fDigiMan->IsPresent(ECbmModuleId::kRich)) {
     LOG(info) << "No RICH digi input.";
-  }else{
+  } else {
     LOG(info) << "RICH digi input.";
     fRichDigis = new std::vector<CbmRichDigi>;
     fpAlgo->SetRichDigis(fRichDigis);
@@ -102,7 +99,7 @@ InitStatus Cbm2021EventBuilderTask::Init() {
   //Init PSD digis
   if (!fDigiMan->IsPresent(ECbmModuleId::kPsd)) {
     LOG(info) << "No PSD digi input.";
-  }else{
+  } else {
     LOG(info) << "PSD digi input.";
     fPsdDigis = new std::vector<CbmPsdDigi>;
     fpAlgo->SetPsdDigis(fPsdDigis);
@@ -127,83 +124,90 @@ InitStatus Cbm2021EventBuilderTask::ReInit() { return kSUCCESS; }
 
 // ---- Exec ----------------------------------------------------------
 void Cbm2021EventBuilderTask::Exec(Option_t* /*option*/) {
-  LOG(debug2)
-    << "Cbm2021EventBuilderTask::Exec => Starting sequence";
+  LOG(debug2) << "Cbm2021EventBuilderTask::Exec => Starting sequence";
 
   //Read STS digis
   if (fDigiMan->IsPresent(ECbmModuleId::kSts)) {
     fStsDigis->clear();
-    for( Int_t i=0; i<fDigiMan->GetNofDigis(ECbmModuleId::kSts); i++){
-	const CbmStsDigi* Digi = fDigiMan->Get<CbmStsDigi>(i);
-	fStsDigis->insert( fStsDigis->begin()+i, *Digi );
+    for (Int_t i = 0; i < fDigiMan->GetNofDigis(ECbmModuleId::kSts); i++) {
+      const CbmStsDigi* Digi = fDigiMan->Get<CbmStsDigi>(i);
+      fStsDigis->insert(fStsDigis->begin() + i, *Digi);
     }
-    LOG(debug) << "Read: "<< fStsDigis->size() << " STS digis.";
-    LOG(debug) << "In DigiManager: "<< fDigiMan->GetNofDigis(ECbmModuleId::kSts) << " STS digis.";
+    LOG(debug) << "Read: " << fStsDigis->size() << " STS digis.";
+    LOG(debug) << "In DigiManager: "
+               << fDigiMan->GetNofDigis(ECbmModuleId::kSts) << " STS digis.";
   }
 
   //Read MUCH digis
   if (fDigiMan->IsPresent(ECbmModuleId::kMuch)) {
-    if( fbUseMuchBeamtimeDigi ){
+    if (fbUseMuchBeamtimeDigi) {
       fMuchBeamTimeDigis->clear();
-      for( Int_t i=0; i<fDigiMan->GetNofDigis(ECbmModuleId::kMuch); i++){
-  	const CbmMuchBeamTimeDigi* Digi = fDigiMan->Get<CbmMuchBeamTimeDigi>(i);
-  	fMuchBeamTimeDigis->insert( fMuchBeamTimeDigis->begin()+i, *Digi );
+      for (Int_t i = 0; i < fDigiMan->GetNofDigis(ECbmModuleId::kMuch); i++) {
+        const CbmMuchBeamTimeDigi* Digi = fDigiMan->Get<CbmMuchBeamTimeDigi>(i);
+        fMuchBeamTimeDigis->insert(fMuchBeamTimeDigis->begin() + i, *Digi);
       }
-      LOG(debug) << "Read: "<< fDigiMan->GetNofDigis(ECbmModuleId::kMuch) << " MUCH digis.";
-      LOG(debug) << "In DigiManager: "<< fMuchBeamTimeDigis->size() << " MUCH digis.";
-    }else{
+      LOG(debug) << "Read: " << fDigiMan->GetNofDigis(ECbmModuleId::kMuch)
+                 << " MUCH digis.";
+      LOG(debug) << "In DigiManager: " << fMuchBeamTimeDigis->size()
+                 << " MUCH digis.";
+    } else {
       fMuchDigis->clear();
-      for( Int_t i=0; i<fDigiMan->GetNofDigis(ECbmModuleId::kMuch); i++){
-  	const CbmMuchDigi* Digi = fDigiMan->Get<CbmMuchDigi>(i);
-  	fMuchDigis->insert( fMuchDigis->begin()+i, *Digi );
+      for (Int_t i = 0; i < fDigiMan->GetNofDigis(ECbmModuleId::kMuch); i++) {
+        const CbmMuchDigi* Digi = fDigiMan->Get<CbmMuchDigi>(i);
+        fMuchDigis->insert(fMuchDigis->begin() + i, *Digi);
       }
-      LOG(debug) << "Read: "<< fDigiMan->GetNofDigis(ECbmModuleId::kMuch) << " MUCH digis.";
-      LOG(debug) << "In DigiManager: "<< fMuchDigis->size() << " MUCH digis.";
+      LOG(debug) << "Read: " << fDigiMan->GetNofDigis(ECbmModuleId::kMuch)
+                 << " MUCH digis.";
+      LOG(debug) << "In DigiManager: " << fMuchDigis->size() << " MUCH digis.";
     }
   }
 
   //Read TRD digis
   if (fDigiMan->IsPresent(ECbmModuleId::kTrd)) {
     fTrdDigis->clear();
-    for( Int_t i=0; i<fDigiMan->GetNofDigis(ECbmModuleId::kTrd); i++){
-	const CbmTrdDigi* Digi = fDigiMan->Get<CbmTrdDigi>(i);
-	fTrdDigis->insert( fTrdDigis->begin()+i, *Digi );
+    for (Int_t i = 0; i < fDigiMan->GetNofDigis(ECbmModuleId::kTrd); i++) {
+      const CbmTrdDigi* Digi = fDigiMan->Get<CbmTrdDigi>(i);
+      fTrdDigis->insert(fTrdDigis->begin() + i, *Digi);
     }
-    LOG(debug) << "Read: "<< fDigiMan->GetNofDigis(ECbmModuleId::kTrd) << " TRD digis.";
-    LOG(debug) << "In DigiManager: "<< fTrdDigis->size() << " TRD digis.";
+    LOG(debug) << "Read: " << fDigiMan->GetNofDigis(ECbmModuleId::kTrd)
+               << " TRD digis.";
+    LOG(debug) << "In DigiManager: " << fTrdDigis->size() << " TRD digis.";
   }
 
   //Read TOF digis
   if (fDigiMan->IsPresent(ECbmModuleId::kTof)) {
     fTofDigis->clear();
-    for( Int_t i=0; i<fDigiMan->GetNofDigis(ECbmModuleId::kTof); i++){
-	const CbmTofDigi* Digi = fDigiMan->Get<CbmTofDigi>(i);
-	fTofDigis->insert( fTofDigis->begin()+i, *Digi );
+    for (Int_t i = 0; i < fDigiMan->GetNofDigis(ECbmModuleId::kTof); i++) {
+      const CbmTofDigi* Digi = fDigiMan->Get<CbmTofDigi>(i);
+      fTofDigis->insert(fTofDigis->begin() + i, *Digi);
     }
-    LOG(debug) << "Read: "<< fDigiMan->GetNofDigis(ECbmModuleId::kTof) << " TOF digis.";
-    LOG(debug) << "In DigiManager: "<< fTofDigis->size() << " TOF digis.";
+    LOG(debug) << "Read: " << fDigiMan->GetNofDigis(ECbmModuleId::kTof)
+               << " TOF digis.";
+    LOG(debug) << "In DigiManager: " << fTofDigis->size() << " TOF digis.";
   }
 
   //Read RICH digis
   if (fDigiMan->IsPresent(ECbmModuleId::kRich)) {
     fRichDigis->clear();
-    for( Int_t i=0; i<fDigiMan->GetNofDigis(ECbmModuleId::kRich); i++){
-	const CbmRichDigi* Digi = fDigiMan->Get<CbmRichDigi>(i);
-	fRichDigis->insert( fRichDigis->begin()+i, *Digi );
+    for (Int_t i = 0; i < fDigiMan->GetNofDigis(ECbmModuleId::kRich); i++) {
+      const CbmRichDigi* Digi = fDigiMan->Get<CbmRichDigi>(i);
+      fRichDigis->insert(fRichDigis->begin() + i, *Digi);
     }
-    LOG(debug) << "Read: "<< fDigiMan->GetNofDigis(ECbmModuleId::kRich) << " RICH digis.";
-    LOG(debug) << "In DigiManager: "<< fRichDigis->size() << " RICH digis.";
+    LOG(debug) << "Read: " << fDigiMan->GetNofDigis(ECbmModuleId::kRich)
+               << " RICH digis.";
+    LOG(debug) << "In DigiManager: " << fRichDigis->size() << " RICH digis.";
   }
 
   //Read PSD digis
   if (fDigiMan->IsPresent(ECbmModuleId::kPsd)) {
     fPsdDigis->clear();
-    for( Int_t i=0; i<fDigiMan->GetNofDigis(ECbmModuleId::kPsd); i++){
-	const CbmPsdDigi* Digi = fDigiMan->Get<CbmPsdDigi>(i);
-	fPsdDigis->insert( fPsdDigis->begin()+i, *Digi );
+    for (Int_t i = 0; i < fDigiMan->GetNofDigis(ECbmModuleId::kPsd); i++) {
+      const CbmPsdDigi* Digi = fDigiMan->Get<CbmPsdDigi>(i);
+      fPsdDigis->insert(fPsdDigis->begin() + i, *Digi);
     }
-    LOG(debug) << "Read: "<< fDigiMan->GetNofDigis(ECbmModuleId::kPsd) << " PSD digis.";
-    LOG(debug) << "In DigiManager: "<< fPsdDigis->size() << " PSD digis.";
+    LOG(debug) << "Read: " << fDigiMan->GetNofDigis(ECbmModuleId::kPsd)
+               << " PSD digis.";
+    LOG(debug) << "In DigiManager: " << fPsdDigis->size() << " PSD digis.";
   }
 
   /// Call Algo ProcessTs method
@@ -289,50 +293,43 @@ void Cbm2021EventBuilderTask::SetReferenceDetector(
   EventBuilderDetector refDet) {
   if (nullptr != fpAlgo) fpAlgo->SetReferenceDetector(refDet);
 }
-void Cbm2021EventBuilderTask::AddDetector(
-  EventBuilderDetector selDet) {
+void Cbm2021EventBuilderTask::AddDetector(EventBuilderDetector selDet) {
   if (nullptr != fpAlgo) fpAlgo->AddDetector(selDet);
 }
-void Cbm2021EventBuilderTask::RemoveDetector(
-  EventBuilderDetector selDet) {
+void Cbm2021EventBuilderTask::RemoveDetector(EventBuilderDetector selDet) {
   if (nullptr != fpAlgo) fpAlgo->RemoveDetector(selDet);
 }
 
-void Cbm2021EventBuilderTask::SetTriggerMinNumber(
-  ECbmModuleId selDet,
-  UInt_t uVal) {
+void Cbm2021EventBuilderTask::SetTriggerMinNumber(ECbmModuleId selDet,
+                                                  UInt_t uVal) {
   if (nullptr != fpAlgo) fpAlgo->SetTriggerMinNumber(selDet, uVal);
 }
-void Cbm2021EventBuilderTask::SetTriggerMaxNumber(
-  ECbmModuleId selDet,
-  Int_t iVal) {
+void Cbm2021EventBuilderTask::SetTriggerMaxNumber(ECbmModuleId selDet,
+                                                  Int_t iVal) {
   if (nullptr != fpAlgo) fpAlgo->SetTriggerMaxNumber(selDet, iVal);
 }
 
 void Cbm2021EventBuilderTask::SetTriggerWindow(ECbmModuleId det,
-                                                          Double_t dWinBeg,
-                                                          Double_t dWinEnd) {
+                                               Double_t dWinBeg,
+                                               Double_t dWinEnd) {
   if (nullptr != fpAlgo) fpAlgo->SetTriggerWindow(det, dWinBeg, dWinEnd);
 }
 
 
-void Cbm2021EventBuilderTask::SetTsParameters(
-  Double_t dTsStartTime,
-  Double_t dTsLength,
-  Double_t dTsOverLength) {
+void Cbm2021EventBuilderTask::SetTsParameters(Double_t dTsStartTime,
+                                              Double_t dTsLength,
+                                              Double_t dTsOverLength) {
   if (nullptr != fpAlgo)
     fpAlgo->SetTsParameters(dTsStartTime, dTsLength, dTsOverLength);
 }
 
-void Cbm2021EventBuilderTask::SetEventOverlapMode(
-  EOverlapMode mode) {
+void Cbm2021EventBuilderTask::SetEventOverlapMode(EOverlapMode mode) {
   if (nullptr != fpAlgo) fpAlgo->SetEventOverlapMode(mode);
 }
 void Cbm2021EventBuilderTask::SetIgnoreTsOverlap(Bool_t bFlagIn) {
   if (nullptr != fpAlgo) fpAlgo->SetIgnoreTsOverlap(bFlagIn);
 }
-void Cbm2021EventBuilderTask::ChangeMuchBeamtimeDigiFlag(
-  Bool_t bFlagIn) {
+void Cbm2021EventBuilderTask::ChangeMuchBeamtimeDigiFlag(Bool_t bFlagIn) {
   if (nullptr != fpAlgo) fpAlgo->ChangeMuchBeamtimeDigiFlag(bFlagIn);
   fbUseMuchBeamtimeDigi = bFlagIn;
 }
diff --git a/reco/eventbuilder/digis/Cbm2021EventBuilderTask.h b/reco/eventbuilder/digis/Cbm2021EventBuilderTask.h
index 48c46db8..1f5ced7c 100644
--- a/reco/eventbuilder/digis/Cbm2021EventBuilderTask.h
+++ b/reco/eventbuilder/digis/Cbm2021EventBuilderTask.h
@@ -6,7 +6,10 @@
  *                  copied verbatim in the file "LICENSE"                       *
  ********************************************************************************/
 #ifndef CBMM2021EVENTBUILDERTASK_H
-#define CBMM2021EVENTBUILDERTASK_H 
+#define CBMM2021EVENTBUILDERTASK_H
+
+// CBM headers
+#include "../../fles/mcbm2018/tasks/CbmMcbm2019TimeWinEventBuilderAlgo.h"  // for EOverlapMode and EventBuilderDetector
 
 /// FAIRROOT headers
 #include "FairTask.h"
@@ -30,7 +33,6 @@
 
 class CbmDigiManager;
 class Cbm2021EventBuilderAlgo;
-class EventBuilderDetector;
 class TClonesArray;
 
 class Cbm2021EventBuilderTask : public FairTask {
@@ -38,10 +40,8 @@ public:
   /** Default constructor **/
   Cbm2021EventBuilderTask();
 
-  Cbm2021EventBuilderTask(
-    const Cbm2021EventBuilderTask&) = delete;
-  Cbm2021EventBuilderTask
-  operator=(const Cbm2021EventBuilderTask&) = delete;
+  Cbm2021EventBuilderTask(const Cbm2021EventBuilderTask&) = delete;
+  Cbm2021EventBuilderTask operator=(const Cbm2021EventBuilderTask&) = delete;
 
   /** Constructor with parameters (Optional) **/
   //  Cbm2021EventBuilderTask(Int_t verbose);
@@ -92,14 +92,14 @@ private:
   void FillOutput();
   void SaveHistos();
 
-  CbmDigiManager* fDigiMan = nullptr;  
-  std::vector<CbmMuchDigi>* fMuchDigis = nullptr;
+  CbmDigiManager* fDigiMan                             = nullptr;
+  std::vector<CbmMuchDigi>* fMuchDigis                 = nullptr;
   std::vector<CbmMuchBeamTimeDigi>* fMuchBeamTimeDigis = nullptr;
-  std::vector<CbmStsDigi>* fStsDigis = nullptr;
-  std::vector<CbmTrdDigi>* fTrdDigis = nullptr;
-  std::vector<CbmTofDigi>* fTofDigis = nullptr;
-  std::vector<CbmRichDigi>* fRichDigis = nullptr;
-  std::vector<CbmPsdDigi>* fPsdDigis = nullptr;
+  std::vector<CbmStsDigi>* fStsDigis                   = nullptr;
+  std::vector<CbmTrdDigi>* fTrdDigis                   = nullptr;
+  std::vector<CbmTofDigi>* fTofDigis                   = nullptr;
+  std::vector<CbmRichDigi>* fRichDigis                 = nullptr;
+  std::vector<CbmPsdDigi>* fPsdDigis                   = nullptr;
 
   Bool_t fbUseMuchBeamtimeDigi = kTRUE;  //! Switch between MUCH digi classes
 
@@ -115,4 +115,4 @@ private:
   ClassDef(Cbm2021EventBuilderTask, 1);
 };
 
-#endif  // CBMM2021EVENTBUILDERTASK_H 
+#endif  // CBMM2021EVENTBUILDERTASK_H
-- 
GitLab