From caf3c29e977e6f78237b3e9337bc9360769d518e Mon Sep 17 00:00:00 2001 From: Felix Weiglhofer <weiglhofer@fias.uni-frankfurt.de> Date: Fri, 9 Jun 2023 15:27:41 +0000 Subject: [PATCH] algo: Rename sts::ReadoutMapping to sts::ReadoutConfig. --- algo/CMakeLists.txt | 2 +- .../sts/ReadoutConfig.cxx} | 34 +++++++++---------- .../sts/ReadoutConfig.h} | 16 ++++----- algo/detectors/sts/StsUnpackChain.cxx | 2 +- algo/detectors/sts/StsUnpackChain.h | 6 ++-- algo/global/Reco.cxx | 2 +- 6 files changed, 31 insertions(+), 31 deletions(-) rename algo/{data/sts/ReadoutSetup.cxx => detectors/sts/ReadoutConfig.cxx} (85%) rename algo/{data/sts/ReadoutSetup.h => detectors/sts/ReadoutConfig.h} (93%) diff --git a/algo/CMakeLists.txt b/algo/CMakeLists.txt index bcaa1a9ecd..52ee1cb109 100644 --- a/algo/CMakeLists.txt +++ b/algo/CMakeLists.txt @@ -14,10 +14,10 @@ set(SRCS base/Options.cxx base/util/TimingsFormat.cxx data/sts/LandauTable.cxx - data/sts/ReadoutSetup.cxx evbuild/EventBuilder.cxx trigger/TimeClusterTrigger.cxx evselector/DigiEventSelector.cxx + detectors/sts/ReadoutConfig.cxx detectors/sts/StsHitfinderChain.cxx detectors/sts/StsReadoutConfig.cxx detectors/sts/StsUnpackChain.cxx diff --git a/algo/data/sts/ReadoutSetup.cxx b/algo/detectors/sts/ReadoutConfig.cxx similarity index 85% rename from algo/data/sts/ReadoutSetup.cxx rename to algo/detectors/sts/ReadoutConfig.cxx index aa9f83c907..dfec7cbcb2 100644 --- a/algo/data/sts/ReadoutSetup.cxx +++ b/algo/detectors/sts/ReadoutConfig.cxx @@ -1,7 +1,7 @@ /* Copyright (C) 2022 GSI Helmholtzzentrum fuer Schwerionenforschung, Darmstadt SPDX-License-Identifier: GPL-3.0-only Authors: Volker Friese [committer], Felix Weiglhofer */ -#include "ReadoutSetup.h" +#include "ReadoutConfig.h" #include "CbmStsAddress.h" @@ -14,40 +14,40 @@ using std::setw; using namespace cbm::algo; // --- Constructor ------------------------------------------------------------------ -sts::ReadoutMapping::ReadoutMapping(const ReadoutSetup& config) { Init(config); } +sts::ReadoutConfig::ReadoutConfig(const ReadoutSetup& config) { Init(config); } // ------------------------------------------------------------------------------------ // --- Equipment IDs -------------------------------------------------------------- -std::vector<u16> sts::ReadoutMapping::GetEquipmentIds() +std::vector<u16> sts::ReadoutConfig::GetEquipmentIds() { std::vector<uint16_t> result; - for (auto& entry : fReadoutMapping) + for (auto& entry : fReadoutConfig) result.push_back(entry.first); return result; } // ------------------------------------------------------------------------------------ // --- Number of elinks for a component / equipment ------------------------------- -size_t sts::ReadoutMapping::GetNumElinks(u16 equipmentId) +size_t sts::ReadoutConfig::GetNumElinks(u16 equipmentId) { size_t result = 0; - auto it = fReadoutMapping.find(equipmentId); - if (it != fReadoutMapping.end()) result = fReadoutMapping[equipmentId].size(); + auto it = fReadoutConfig.find(equipmentId); + if (it != fReadoutConfig.end()) result = fReadoutConfig[equipmentId].size(); return result; } // ------------------------------------------------------------------------------------ -size_t sts::ReadoutMapping::GetNumElinks() +size_t sts::ReadoutConfig::GetNumElinks() { size_t result = 0; - for (auto& entry : fReadoutMapping) { + for (auto& entry : fReadoutConfig) { result += entry.second.size(); } return result; } // --- Initialise the mapping structure -------------------------------------------- -void sts::ReadoutMapping::Init(const ReadoutSetup& config) +void sts::ReadoutConfig::Init(const ReadoutSetup& config) { // The readout hierarchy is: component - CROB - FEB - ASIC (elink). Each elink // connects one ASIC. One FEB comprises 8 ASICs and reads out one side of a module (sensor). @@ -68,7 +68,7 @@ void sts::ReadoutMapping::Init(const ReadoutSetup& config) for (uint16_t compIdx = 0; compIdx < numComp; compIdx++) { const auto& component = config.components.at(compIdx); uint16_t equipment = component.equipmentId; - fReadoutMapping[equipment].resize(numElinksPerComp); + fReadoutConfig[equipment].resize(numElinksPerComp); for (uint16_t crobIdx = 0; crobIdx < numCrobPerComp; crobIdx++) { for (uint16_t elinkIdx = 0; elinkIdx < numElinksPerCrob; elinkIdx++) { @@ -97,7 +97,7 @@ void sts::ReadoutMapping::Init(const ReadoutSetup& config) asicInModule = (moduleSide == 1 ? asicInFeb : asicInFeb + numAsicsPerFeb); } } - fReadoutMapping[equipment][elinkIdx] = {moduleAddress, asicInModule, isPulser}; + fReadoutConfig[equipment][elinkIdx] = {moduleAddress, asicInModule, isPulser}; } //# elink } //# CROB @@ -106,11 +106,11 @@ void sts::ReadoutMapping::Init(const ReadoutSetup& config) // ------------------------------------------------------------------------------------ // --- Mapping (equimentId, elink) -> (address, ASIC) -------------------------------- -sts::ReadoutMapping::Entry sts::ReadoutMapping::Map(uint16_t equipmentId, uint16_t elinkId) +sts::ReadoutConfig::Entry sts::ReadoutConfig::Map(uint16_t equipmentId, uint16_t elinkId) { Entry result {-1, 0, false}; - auto equipIter = fReadoutMapping.find(equipmentId); - if (equipIter != fReadoutMapping.end()) { + auto equipIter = fReadoutConfig.find(equipmentId); + if (equipIter != fReadoutConfig.end()) { if (elinkId < equipIter->second.size()) { result = equipIter->second.at(elinkId); } } return result; @@ -118,11 +118,11 @@ sts::ReadoutMapping::Entry sts::ReadoutMapping::Map(uint16_t equipmentId, uint16 // ------------------------------------------------------------------------------------ // ----- Print readout map ------------------------------------------------ -std::string sts::ReadoutMapping::PrintReadoutMap() +std::string sts::ReadoutConfig::PrintReadoutMap() { std::stringstream ss; - for (auto& equipment : fReadoutMapping) { + for (auto& equipment : fReadoutConfig) { auto eqId = equipment.first; for (size_t elink = 0; elink < equipment.second.size(); elink++) { auto address = equipment.second.at(elink).moduleAddress; diff --git a/algo/data/sts/ReadoutSetup.h b/algo/detectors/sts/ReadoutConfig.h similarity index 93% rename from algo/data/sts/ReadoutSetup.h rename to algo/detectors/sts/ReadoutConfig.h index ee09adf131..38e3239f08 100644 --- a/algo/data/sts/ReadoutSetup.h +++ b/algo/detectors/sts/ReadoutConfig.h @@ -1,8 +1,8 @@ /* Copyright (C) 2022 GSI Helmholtzzentrum fuer Schwerionenforschung, Darmstadt SPDX-License-Identifier: GPL-3.0-only Authors: Volker Friese [committer], Felix Weiglhofer */ -#ifndef CBM_ALGO_DATA_STS_READOUT_H -#define CBM_ALGO_DATA_STS_READOUT_H +#ifndef CBM_ALGO_DETECTOR_STS_READOUT_CONFIG_H +#define CBM_ALGO_DETECTOR_STS_READOUT_CONFIG_H #include <map> #include <string> @@ -70,7 +70,7 @@ namespace cbm::algo::sts config::Property(&ReadoutSetup::elinks, "elinks", "Elinks", {}, YAML::Flow)); }; - /** @class ReadoutMapping + /** @class ReadoutConfig ** @author Volker Friese <v.friese@gsi.de> ** @since 3 March 2022 ** @brief Provides the hardware-to-software address mapping for the CBM-STS @@ -80,7 +80,7 @@ namespace cbm::algo::sts ** component. This is to be translated into the module address and the ASIC number within ** the module. **/ - class ReadoutMapping { + class ReadoutConfig { public: struct Entry { @@ -90,10 +90,10 @@ namespace cbm::algo::sts }; /** @brief Empty mapping **/ - ReadoutMapping() = default; + ReadoutConfig() = default; /** @brief Constructor **/ - ReadoutMapping(const ReadoutSetup&); + ReadoutConfig(const ReadoutSetup&); /** @brief Equipment in the configuration ** @return Vector of equipment IDs @@ -124,7 +124,7 @@ namespace cbm::algo::sts private: // --- STS readout map // --- Map index: (equipment, elink) - std::map<u16, std::vector<Entry>> fReadoutMapping = {}; //! + std::map<u16, std::vector<Entry>> fReadoutConfig = {}; //! /** @brief Initialisation of readout map **/ void Init(const ReadoutSetup&); @@ -132,4 +132,4 @@ namespace cbm::algo::sts } // namespace cbm::algo::sts -#endif // CBM_ALGO_DATA_STS_READOUT_H +#endif // CBM_ALGO_DETECTOR_STS_READOUT_CONFIG_H diff --git a/algo/detectors/sts/StsUnpackChain.cxx b/algo/detectors/sts/StsUnpackChain.cxx index 4dfe0add40..f93be3d839 100644 --- a/algo/detectors/sts/StsUnpackChain.cxx +++ b/algo/detectors/sts/StsUnpackChain.cxx @@ -13,7 +13,7 @@ using namespace cbm::algo; -void sts::UnpackChain::Init(sts::ReadoutMapping config) +void sts::UnpackChain::Init(sts::ReadoutConfig config) { fConfig = config; diff --git a/algo/detectors/sts/StsUnpackChain.h b/algo/detectors/sts/StsUnpackChain.h index eacba3cb4d..460dcf169c 100644 --- a/algo/detectors/sts/StsUnpackChain.h +++ b/algo/detectors/sts/StsUnpackChain.h @@ -12,9 +12,9 @@ #include <yaml-cpp/yaml.h> #include "Prelude.h" +#include "ReadoutConfig.h" #include "SubChain.h" #include "UnpackSts.h" -#include "sts/ReadoutSetup.h" class CbmStsDigi; namespace fles @@ -28,12 +28,12 @@ namespace cbm::algo::sts class UnpackChain : public SubChain { public: - void Init(sts::ReadoutMapping config); + void Init(sts::ReadoutConfig config); std::vector<CbmStsDigi> Run(const fles::Timeslice& ts); private: std::unordered_map<u16, UnpackSts> fAlgoSts; - std::optional<sts::ReadoutMapping> fConfig; + std::optional<sts::ReadoutConfig> fConfig; }; } // namespace cbm::algo::sts diff --git a/algo/global/Reco.cxx b/algo/global/Reco.cxx index 1b71db50f1..cea651468a 100644 --- a/algo/global/Reco.cxx +++ b/algo/global/Reco.cxx @@ -35,7 +35,7 @@ void Reco::Init(const Options& opts) fs::path stsUnpackParamsPath = opts.ParamsDir() / "StsReadout.yaml"; yaml = YAML::LoadFile(stsUnpackParamsPath.string()); sts::ReadoutSetup readoutConfig = config::Read<sts::ReadoutSetup>(yaml); - sts::ReadoutMapping mapping(readoutConfig); + sts::ReadoutConfig mapping(readoutConfig); fUnpack.Init(mapping); // STS Hitfinder -- GitLab