From cf788e6b7b1028e0378bc48ea901e1d92d2ecc5e Mon Sep 17 00:00:00 2001
From: "P.-A. Loizeau" <p.-a.loizeau@gsi.de>
Date: Fri, 22 Mar 2024 12:16:20 +0100
Subject: [PATCH] [Online] Select STS walk and TRD setup files based on run id

---
 algo/global/Reco.cxx | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/algo/global/Reco.cxx b/algo/global/Reco.cxx
index 27321d89b2..b57f01ee97 100644
--- a/algo/global/Reco.cxx
+++ b/algo/global/Reco.cxx
@@ -115,7 +115,8 @@ void Reco::Init(const Options& opts)
     sts::ReadoutSetup readoutSetup = yaml::ReadFromFile<sts::ReadoutSetup>(Opts().ParamsDir() / readoutFile);
     auto chanMask = yaml::ReadFromFile<sts::ChannelMaskSet>(Opts().ParamsDir() / "StsChannelMaskSet.yaml");
     sts::ReadoutConfig readout{readoutSetup, chanMask};
-    auto walkMap = yaml::ReadFromFile<sts::WalkMap>(Opts().ParamsDir() / "StsWalkMap.yaml");
+    fs::path walkFile = 2724 <= Opts().RunId() ? "StsWalkMap_mcbm2024.yaml" : "StsWalkMap_mcbm2022.yaml";
+    auto walkMap      = yaml::ReadFromFile<sts::WalkMap>(Opts().ParamsDir() / walkFile);
     sts::Unpack::Config cfg{.readout = readout, .walkMap = walkMap};
     fStsUnpack = std::make_unique<sts::Unpack>(cfg);
     if (fSender != nullptr) {
@@ -132,8 +133,9 @@ void Reco::Init(const Options& opts)
   }
 
   if (Opts().Has(Subsystem::TRD) && Opts().Has(Step::Unpack)) {
-    auto cfg   = yaml::ReadFromFile<trd::ReadoutConfig>(Opts().ParamsDir() / "TrdReadoutSetup.yaml");
-    fTrdUnpack = std::make_unique<trd::Unpack>(cfg);
+    fs::path readoutFile = 2724 <= Opts().RunId() ? "TrdReadoutSetup_mcbm2024.yaml" : "TrdReadoutSetup_mcbm2022.yaml";
+    auto cfg             = yaml::ReadFromFile<trd::ReadoutConfig>(Opts().ParamsDir() / readoutFile);
+    fTrdUnpack           = std::make_unique<trd::Unpack>(cfg);
   }
 
   if (Opts().Has(Subsystem::TRD2D) && Opts().Has(Step::Unpack)) {
-- 
GitLab