From 0e93a0ff7de4aebdf913d9a72ade0b09a57f96fa Mon Sep 17 00:00:00 2001 From: Florian Uhlig <f.uhlig@gsi.de> Date: Wed, 18 Jan 2023 14:11:09 +0100 Subject: [PATCH] Set proper plugin information in sensors --- reco/detectors/mvd/CbmMvdClusterfinder.cxx | 5 ++--- reco/detectors/mvd/CbmMvdClusterfinderTB.cxx | 16 +++++++++++++--- reco/detectors/mvd/CbmMvdDigiToHit.cxx | 4 ++-- reco/detectors/mvd/CbmMvdDigiToHitTB.cxx | 17 ++++++++++++++--- reco/detectors/mvd/CbmMvdHitfinder.cxx | 4 ++-- reco/detectors/mvd/CbmMvdHitfinderTB.cxx | 17 +++++++++++++++-- 6 files changed, 48 insertions(+), 15 deletions(-) diff --git a/reco/detectors/mvd/CbmMvdClusterfinder.cxx b/reco/detectors/mvd/CbmMvdClusterfinder.cxx index 6cf8f5fb90..90c22458bf 100644 --- a/reco/detectors/mvd/CbmMvdClusterfinder.cxx +++ b/reco/detectors/mvd/CbmMvdClusterfinder.cxx @@ -162,8 +162,7 @@ InitStatus CbmMvdClusterfinder::Init() LOG(fatal) << "Geometry couldn't be loaded from file. No MVD digitizer available."; } - - // Add the digitizer plugin to all sensors + // Add the cluster finder plugin to all sensors std::map<int, CbmMvdSensor*>& sensorMap = fDetector->GetSensorMap(); UInt_t plugincount=fDetector->GetPluginCount(); @@ -172,7 +171,7 @@ InitStatus CbmMvdClusterfinder::Init() CbmMvdSensorClusterfinderTask* clusterTask = new CbmMvdSensorClusterfinderTask(); itr->second->AddPlugin(clusterTask); - itr->second->SetDigiPlugin(plugincount); + itr->second->SetClusterPlugin(plugincount); } fDetector->SetSensorArrayFilled(kTRUE); fDetector->SetPluginCount(plugincount+1); diff --git a/reco/detectors/mvd/CbmMvdClusterfinderTB.cxx b/reco/detectors/mvd/CbmMvdClusterfinderTB.cxx index b38a693237..cdfbec700c 100644 --- a/reco/detectors/mvd/CbmMvdClusterfinderTB.cxx +++ b/reco/detectors/mvd/CbmMvdClusterfinderTB.cxx @@ -145,14 +145,24 @@ InitStatus CbmMvdClusterfinderTB::Init() LOG(fatal) << "Geometry couldn't be loaded from file. No MVD digitizer available."; } - CbmMvdSensorClusterfinderTask* clusterTask = new CbmMvdSensorClusterfinderTask(); + // Add the cluster finder plugin to all sensors + std::map<int, CbmMvdSensor*>& sensorMap = fDetector->GetSensorMap(); + UInt_t plugincount=fDetector->GetPluginCount(); - fDetector->AddPlugin(clusterTask); + for (auto itr = sensorMap.begin(); + itr != sensorMap.end(); itr++) { + CbmMvdSensorClusterfinderTask* clusterTask = new CbmMvdSensorClusterfinderTask(); + + itr->second->AddPlugin(clusterTask); + itr->second->SetClusterPlugin(plugincount); + } + fDetector->SetSensorArrayFilled(kTRUE); + fDetector->SetPluginCount(plugincount+1); fClusterPluginNr = (UInt_t)(fDetector->GetPluginArraySize()); + if (fShowDebugHistos) fDetector->ShowDebugHistos(); fDetector->Init(); - // Screen output LOG(info) << GetName() << " initialised"; diff --git a/reco/detectors/mvd/CbmMvdDigiToHit.cxx b/reco/detectors/mvd/CbmMvdDigiToHit.cxx index 955ca07e9d..0f1407799a 100644 --- a/reco/detectors/mvd/CbmMvdDigiToHit.cxx +++ b/reco/detectors/mvd/CbmMvdDigiToHit.cxx @@ -149,7 +149,7 @@ InitStatus CbmMvdDigiToHit::Init() LOG(fatal) << "Geometry couldn't be loaded from file. No MVD digitizer available."; } - // Add the digitizer plugin to all sensors + // Add the digi2hit plugin to all sensors std::map<int, CbmMvdSensor*>& sensorMap = fDetector->GetSensorMap(); UInt_t plugincount=fDetector->GetPluginCount(); @@ -158,7 +158,7 @@ InitStatus CbmMvdDigiToHit::Init() CbmMvdSensorDigiToHitTask* hitTask = new CbmMvdSensorDigiToHitTask(); itr->second->AddPlugin(hitTask); - itr->second->SetDigiPlugin(plugincount); + itr->second->SetHitPlugin(plugincount); } fDetector->SetSensorArrayFilled(kTRUE); fDetector->SetPluginCount(plugincount+1); diff --git a/reco/detectors/mvd/CbmMvdDigiToHitTB.cxx b/reco/detectors/mvd/CbmMvdDigiToHitTB.cxx index ae289816b8..e756b86277 100644 --- a/reco/detectors/mvd/CbmMvdDigiToHitTB.cxx +++ b/reco/detectors/mvd/CbmMvdDigiToHitTB.cxx @@ -141,10 +141,21 @@ InitStatus CbmMvdDigiToHitTB::Init() LOG(fatal) << "Geometry couldn't be loaded from file. No MVD digitizer available."; } - CbmMvdSensorDigiToHitTask* clusterTask = new CbmMvdSensorDigiToHitTask(); + // Add the digi2hit plugin to all sensors + std::map<int, CbmMvdSensor*>& sensorMap = fDetector->GetSensorMap(); + UInt_t plugincount=fDetector->GetPluginCount(); + + for (auto itr = sensorMap.begin(); + itr != sensorMap.end(); itr++) { + CbmMvdSensorDigiToHitTask* hitTask = new CbmMvdSensorDigiToHitTask(); + + itr->second->AddPlugin(hitTask); + itr->second->SetHitPlugin(plugincount); + } + fDetector->SetSensorArrayFilled(kTRUE); + fDetector->SetPluginCount(plugincount+1); + fHitPluginNr = (UInt_t)(fDetector->GetPluginArraySize()); - fDetector->AddPlugin(clusterTask); - fClusterPluginNr = (UInt_t)(fDetector->GetPluginArraySize()); if (fShowDebugHistos) fDetector->ShowDebugHistos(); fDetector->Init(); diff --git a/reco/detectors/mvd/CbmMvdHitfinder.cxx b/reco/detectors/mvd/CbmMvdHitfinder.cxx index 6575309b66..626773fc18 100644 --- a/reco/detectors/mvd/CbmMvdHitfinder.cxx +++ b/reco/detectors/mvd/CbmMvdHitfinder.cxx @@ -208,7 +208,7 @@ InitStatus CbmMvdHitfinder::Init() fDetector = CbmMvdDetector::Instance(); - // Add the digitizer plugin to all sensors + // Add the hit finder plugin to all sensors std::map<int, CbmMvdSensor*>& sensorMap = fDetector->GetSensorMap(); UInt_t plugincount=fDetector->GetPluginCount(); @@ -217,7 +217,7 @@ InitStatus CbmMvdHitfinder::Init() CbmMvdSensorHitfinderTask* hitfinderTask = new CbmMvdSensorHitfinderTask(); itr->second->AddPlugin(hitfinderTask); - itr->second->SetDigiPlugin(plugincount); + itr->second->SetHitPlugin(plugincount); } fDetector->SetSensorArrayFilled(kTRUE); fDetector->SetPluginCount(plugincount+1); diff --git a/reco/detectors/mvd/CbmMvdHitfinderTB.cxx b/reco/detectors/mvd/CbmMvdHitfinderTB.cxx index 1a85a987a9..9802db4010 100644 --- a/reco/detectors/mvd/CbmMvdHitfinderTB.cxx +++ b/reco/detectors/mvd/CbmMvdHitfinderTB.cxx @@ -153,10 +153,23 @@ InitStatus CbmMvdHitfinderTB::Init() fDetector = CbmMvdDetector::Instance(); - CbmMvdSensorHitfinderTask* HitfinderTask = new CbmMvdSensorHitfinderTask(); - fDetector->AddPlugin(HitfinderTask); + + // Add the hit finder plugin to all sensors + std::map<int, CbmMvdSensor*>& sensorMap = fDetector->GetSensorMap(); + UInt_t plugincount=fDetector->GetPluginCount(); + + for (auto itr = sensorMap.begin(); + itr != sensorMap.end(); itr++) { + CbmMvdSensorHitfinderTask* hitfinderTask = new CbmMvdSensorHitfinderTask(); + + itr->second->AddPlugin(hitfinderTask); + itr->second->SetHitPlugin(plugincount); + } + fDetector->SetSensorArrayFilled(kTRUE); + fDetector->SetPluginCount(plugincount+1); fHitfinderPluginNr = (UInt_t)(fDetector->GetPluginArraySize()); + if (fShowDebugHistos) fDetector->ShowDebugHistos(); fDetector->Init(); -- GitLab