From 47944d639717018147b020e1fcd2456fe790e50d Mon Sep 17 00:00:00 2001
From: Alexandru Bercuci <abercuci@niham.nipne.ro>
Date: Mon, 17 Jan 2022 15:12:32 +0200
Subject: [PATCH] remove Trd2d from the list of default loaded detectors in
 BuildRawEvents since it may not be present for some geometrical setups. The
 task is delegated to the steering macro

---
 reco/eventbuilder/digis/CbmAlgoBuildRawEvents.h   | 1 -
 reco/eventbuilder/digis/CbmTaskBuildRawEvents.cxx | 9 ++++-----
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/reco/eventbuilder/digis/CbmAlgoBuildRawEvents.h b/reco/eventbuilder/digis/CbmAlgoBuildRawEvents.h
index 96456f56aa..65d6379776 100644
--- a/reco/eventbuilder/digis/CbmAlgoBuildRawEvents.h
+++ b/reco/eventbuilder/digis/CbmAlgoBuildRawEvents.h
@@ -260,7 +260,6 @@ private:
     RawEventBuilderDetector(ECbmModuleId::kSts, ECbmDataType::kStsDigi, "kSts"),
     RawEventBuilderDetector(ECbmModuleId::kMuch, ECbmDataType::kMuchDigi, "kMuch"),
     RawEventBuilderDetector(ECbmModuleId::kTrd, ECbmDataType::kTrdDigi, "kTrd"),
-    RawEventBuilderDetector(ECbmModuleId::kTrd2d, ECbmDataType::kTrd2dDigi, "kTrd2d"),
     RawEventBuilderDetector(ECbmModuleId::kTof, ECbmDataType::kTofDigi, "kTof"),
     RawEventBuilderDetector(ECbmModuleId::kRich, ECbmDataType::kRichDigi, "kRich"),
     RawEventBuilderDetector(ECbmModuleId::kPsd, ECbmDataType::kPsdDigi, "kPsd")};
diff --git a/reco/eventbuilder/digis/CbmTaskBuildRawEvents.cxx b/reco/eventbuilder/digis/CbmTaskBuildRawEvents.cxx
index ff2271aede..03dc08f99e 100644
--- a/reco/eventbuilder/digis/CbmTaskBuildRawEvents.cxx
+++ b/reco/eventbuilder/digis/CbmTaskBuildRawEvents.cxx
@@ -131,12 +131,11 @@ InitStatus CbmTaskBuildRawEvents::Init()
     fpAlgo->SetTrdDigis(fTrdDigis);
   }
 
-  //Trd2d not included (yet) in digi manager.
-  fTrd2dDigis =
-    const_cast<std::vector<CbmTrdDigi>*>(ioman->InitObjectAs<std::vector<CbmTrdDigi> const*>("TrdFaspDigi"));
-  if (!fTrd2dDigis) { LOG(info) << "No Trd2d digi input."; }
+  //Init TRD digis
+  if (!fDigiMan->IsPresent(ECbmModuleId::kTrd2d)) { LOG(info) << "No TRD-2D digi input."; }
   else {
-    LOG(info) << "TRD2D digi input.";
+    LOG(info) << "TRD-2D digi input.";
+    fTrd2dDigis = new std::vector<CbmTrdDigi>;
     fpAlgo->SetTrd2dDigis(fTrd2dDigis);
   }
 
-- 
GitLab