From a8552fe551c31e9c2d017fa66bf160cda8feb0cc Mon Sep 17 00:00:00 2001 From: Niveditha Ramasubramanian Date: Mon, 5 Aug 2024 17:26:37 +0200 Subject: [PATCH 01/22] Adding functionalities to produced merged noise map objects --- .../include/DataFormatsITSMFT/NoiseMap.h | 30 ++++++- .../MFTCalibration/NoiseCalibratorSpec.h | 6 ++ .../calibration/src/NoiseCalibratorSpec.cxx | 89 +++++++++++++++++-- 3 files changed, 115 insertions(+), 10 deletions(-) diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h index ba98bf2e1e101..f730f98e12702 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h @@ -85,14 +85,14 @@ class NoiseMap while (chipID--) { const auto& map = mNoisyPixels[chipID]; for (const auto& pair : map) { - if (pair.second <= t) { + if (pair.second <= t) { continue; - } + } n++; auto key = pair.first; auto row = key2Row(key); auto col = key2Col(key); - std::cout << "chip, row, col, noise: " << chipID << ' ' << row << ' ' << col << ' ' << pair.second << '\n'; + std::cout << "chip, row, col, noise: " << chipID << ' ' << row << ' ' << col << ' ' << pair.second << '\n'; } } return n; @@ -169,7 +169,6 @@ class NoiseMap // Methods required by the calibration framework void print(); void fill(const gsl::span data); - void merge(const NoiseMap* prev) {} const std::map* getChipMap(int chip) const { return chip < (int)mNoisyPixels.size() ? &mNoisyPixels[chip] : nullptr; } @@ -203,6 +202,29 @@ class NoiseMap return std::ceil((1. + 1. / t) / (relErr * relErr)); } + NoiseMap merge(NoiseMap* prev){ + int incre=0; + for (size_t i = 0; i < 920; ++i) { //920 is the total number of chips in MFT + for (const auto& prev_np : prev->mNoisyPixels[i]) { //only enters this for loop if the "i" chip exists. + bool existsInCurrentMap = false; + for (const auto& current_np : mNoisyPixels[i]) { + if(prev_np.first==current_np.first) + { + existsInCurrentMap = true; + break; + } + }//end of for loop on elements of previous noise map + + if (!existsInCurrentMap) { + incre++; + mNoisyPixels[i][prev_np.first] = prev_np.second; + } + }//end of for loop on elements of previous noise map + }//end of for loop on i (chip ID) + return(mNoisyPixels); + }//end of void merge + + size_t size() const { return mNoisyPixels.size(); } void setNumOfStrobes(long n) { mNumOfStrobes = n; } void addStrobes(long n) { mNumOfStrobes += n; } diff --git a/Detectors/ITSMFT/MFT/calibration/include/MFTCalibration/NoiseCalibratorSpec.h b/Detectors/ITSMFT/MFT/calibration/include/MFTCalibration/NoiseCalibratorSpec.h index 2a5b2d6025e37..c28e5d82ca46f 100644 --- a/Detectors/ITSMFT/MFT/calibration/include/MFTCalibration/NoiseCalibratorSpec.h +++ b/Detectors/ITSMFT/MFT/calibration/include/MFTCalibration/NoiseCalibratorSpec.h @@ -16,6 +16,8 @@ #include +#include "CCDB/CcdbApi.h" + #include "Framework/DataProcessorSpec.h" #include "Framework/Task.h" @@ -48,8 +50,10 @@ class NoiseCalibratorSpec : public Task void finaliseCCDB(ConcreteDataMatcher& matcher, void* obj) final; private: + o2::ccdb::CcdbApi api; void updateTimeDependentParams(ProcessingContext& pc); void sendOutputCcdb(DataAllocator& output); + void sendOutputCcdbMerge(DataAllocator& output); void sendOutputCcdbDcs(DataAllocator& output); void sendOutputDcs(DataAllocator& output); void setOutputDcs(const o2::itsmft::NoiseMap& payload); @@ -57,10 +61,12 @@ class NoiseCalibratorSpec : public Task std::unique_ptr mCalibrator = nullptr; std::shared_ptr mCCDBRequest; std::string mPath; + std::string mPathMerge; std::string mMeta; std::vector> mNoiseMapForDcs; std::string mPathDcs; + std::string mPathDcsMerge; std::string mOutputType; double mThresh; diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index d299bb82a51d7..57bcb55ea0e5d 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -1,4 +1,4 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +//AA Copyright 2019-2020 CERN and copyright holders of ALICE O2.A // See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. // All rights not expressly granted are reserved. // @@ -48,6 +48,8 @@ void NoiseCalibratorSpec::init(InitContext& ic) LOGP(info, "Setting the probability threshold to {} with relative error {}", probT, probTRelErr); mStopMeOnly = ic.options().get("stop-me-only"); mPath = ic.options().get("path-CCDB"); + mPathMerge = ic.options().get("path-CCDB-merge"); + mMeta = ic.options().get("meta"); mStart = ic.options().get("tstart"); mEnd = ic.options().get("tend"); @@ -57,6 +59,8 @@ void NoiseCalibratorSpec::init(InitContext& ic) mPathDcs = ic.options().get("path-DCS"); mOutputType = ic.options().get("send-to-server"); mNoiseMapForDcs.clear(); + api.init("http://alice-ccdb.cern.ch"); + //api.init("http://localhost:8080"); } void NoiseCalibratorSpec::run(ProcessingContext& pc) @@ -72,6 +76,8 @@ void NoiseCalibratorSpec::run(ProcessingContext& pc) if (mOutputType.compare("CCDB") == 0) { LOG(info) << "Sending an object to Production-CCDB"; sendOutputCcdb(pc.outputs()); + LOG(info) << "Sending an object to Production-CCDBMerge"; + sendOutputCcdbMerge(pc.outputs()); } else if (mOutputType.compare("DCS") == 0) { LOG(info) << "Sending an object to DCS-CCDB"; sendOutputDcs(pc.outputs()); @@ -92,6 +98,8 @@ void NoiseCalibratorSpec::run(ProcessingContext& pc) if (mOutputType.compare("CCDB") == 0) { LOG(info) << "Sending an object to Production-CCDB"; sendOutputCcdb(pc.outputs()); + LOG(info) << "Sending an object to Production-CCDBMerge"; + sendOutputCcdbMerge(pc.outputs()); } else if (mOutputType.compare("DCS") == 0) { LOG(info) << "Sending an object to DCS-CCDB"; sendOutputDcs(pc.outputs()); @@ -161,7 +169,7 @@ void NoiseCalibratorSpec::sendOutputCcdbDcs(DataAllocator& output) const auto& payload = mCalibrator->getNoiseMap(); // const auto& payload = mCalibrator->getNoiseMap(starTF, endTF); //For TimeSlot calibration - + o2::ccdb::CcdbObjectInfo info(mPath, "NoiseMap", "noise.root", meta, tstart, tend); auto flName = o2::ccdb::CcdbApi::generateFileName("noise"); auto image = o2::ccdb::CcdbApi::createObjectImage(&payload, &info); @@ -175,6 +183,7 @@ void NoiseCalibratorSpec::sendOutputCcdbDcs(DataAllocator& output) output.snapshot(Output{clbUtils::gDataOriginCDBPayload, "MFT_NoiseMap", 0}, *image.get()); output.snapshot(Output{clbUtils::gDataOriginCDBWrapper, "MFT_NoiseMap", 0}, info); + setOutputDcs(payload); o2::ccdb::CcdbObjectInfo infoDcs(mPathDcs, "NoiseMap", "noise.root", meta, tstart, tend); @@ -237,7 +246,71 @@ void NoiseCalibratorSpec::sendOutputCcdb(DataAllocator& output) auto flName = o2::ccdb::CcdbApi::generateFileName("noise"); auto image = o2::ccdb::CcdbApi::createObjectImage(&payload, &info); info.setFileName(flName); - LOG(info) << "Sending object " << info.getPath() << "/" << info.getFileName() + LOG(info) << "Sending object CCDB " << info.getPath() << "/" << info.getFileName() + << " of size " << image->size() + << " bytes, valid for " << info.getStartValidityTimestamp() + << " : " << info.getEndValidityTimestamp(); + + using clbUtils = o2::calibration::Utils; + output.snapshot(Output{clbUtils::gDataOriginCDBPayload, "MFT_NoiseMap", 0}, *image.get()); + output.snapshot(Output{clbUtils::gDataOriginCDBWrapper, "MFT_NoiseMap", 0}, info); +} + +void NoiseCalibratorSpec::sendOutputCcdbMerge(DataAllocator& output) +{ + + LOG(info) << "CCDB-Merge mode"; + + static bool done = false; + if (done) { + return; + } + done = true; + + mCalibrator->finalize(); + + long tstart = mStart; + if (tstart == -1) { + tstart = o2::ccdb::getCurrentTimestamp(); + } + long tend = mEnd; + if (tend == -1) { + constexpr long SECONDSPERYEAR = 365 * 24 * 60 * 60; + tend = o2::ccdb::getFutureTimestamp(SECONDSPERYEAR); + } + + std::map meta; + auto toKeyValPairs = [&meta](std::vector const& tokens) { + for (auto& token : tokens) { + auto keyval = Str::tokenize(token, '=', false); + if (keyval.size() != 2) { + LOG(error) << "Illegal command-line key/value string: " << token; + continue; + } + Str::trim(keyval[1]); + meta[keyval[0]] = keyval[1]; + } + }; + toKeyValPairs(Str::tokenize(mMeta, ';', true)); + + long startTF, endTF; + + auto payload = mCalibrator->getNoiseMap(); + // const auto& payload = mCalibrator->getNoiseMap(starTF, endTF); //For TimeSlot calibration + map headers; + map filter; + auto *payloadPrev1 = api.retrieveFromTFileAny(mPath, filter,-1, &headers); + long validtime = std::stol(headers["Valid-From"]); + validtime=validtime-60; + auto *payloadPrev2 = api.retrieveFromTFileAny(mPath, filter,validtime, &headers); + auto bufferPL= payloadPrev2->merge(payloadPrev1); + auto mergedPL= payload.merge(&bufferPL); + //payload.merge(payloadPrev); + o2::ccdb::CcdbObjectInfo info(mPathMerge, "NoiseMap", "noise.root", meta, tstart, tend); + auto flName = o2::ccdb::CcdbApi::generateFileName("noise"); + auto image = o2::ccdb::CcdbApi::createObjectImage(&mergedPL, &info); + info.setFileName(flName); + LOG(info) << "Sending object ccdb-merge " << info.getPath() << "/" << info.getFileName() << " of size " << image->size() << " bytes, valid for " << info.getStartValidityTimestamp() << " : " << info.getEndValidityTimestamp(); @@ -288,7 +361,7 @@ void NoiseCalibratorSpec::sendOutputDcs(DataAllocator& output) const auto& payload = mCalibrator->getNoiseMap(); // const auto& payload = mCalibrator->getNoiseMap(starTF, endTF); //For TimeSlot calibration - + setOutputDcs(payload); o2::ccdb::CcdbObjectInfo infoDcs(mPathDcs, "NoiseMap", "noise.root", meta, tstart, tend); @@ -310,12 +383,15 @@ void NoiseCalibratorSpec::endOfStream(o2::framework::EndOfStreamContext& ec) if (mOutputType.compare("CCDB") == 0) { LOG(info) << "Sending an object to Production-CCDB"; sendOutputCcdb(ec.outputs()); + LOG(info) << "Sending an object to Production-CCDB-Merge"; + sendOutputCcdbMerge(ec.outputs()); } else if (mOutputType.compare("DCS") == 0) { LOG(info) << "Sending an object to DCS-CCDB"; sendOutputDcs(ec.outputs()); } else { LOG(info) << "Sending an object to Production-CCDB and DCS-CCDB"; sendOutputCcdbDcs(ec.outputs()); + sendOutputCcdbMerge(ec.outputs()); } } @@ -373,8 +449,9 @@ DataProcessorSpec getNoiseCalibratorSpec(bool useDigits) {"prob-rel-err", VariantType::Float, 0.2f, {"Relative error on channel noise to apply the threshold"}}, {"tstart", VariantType::Int64, -1ll, {"Start of validity timestamp"}}, {"tend", VariantType::Int64, -1ll, {"End of validity timestamp"}}, - {"path-CCDB", VariantType::String, "/MFT/Calib/NoiseMap", {"Path to write to in CCDB"}}, - {"path-DCS", VariantType::String, "/MFT/Config/NoiseMap", {"Path to write to in CCDB"}}, + {"path-CCDB", VariantType::String,"/MFT/Calib/NoiseMap", {"Path to write to in CCDB"}}, + {"path-CCDB-merge", VariantType::String,"/MFT/Calib/NoiseMapMerged", {"Path to write merged file to in CCDB"}}, + {"path-DCS", VariantType::String, "/MFT/Config/NoiseMap", {"Path to write to in DCS"}}, {"meta", VariantType::String, "", {"meta data to write in CCDB"}}, {"send-to-server", VariantType::String, "CCDB-DCS", {"meta data to write in DCS-CCDB"}}, {"stop-me-only", VariantType::Bool, false, {"At sufficient statistics stop only this device, otherwise whole workflow"}}}}; From ab527b6341414b7e22a8627b2ba18c14ad08932b Mon Sep 17 00:00:00 2001 From: Niveditha Ramasubramanian Date: Wed, 7 Aug 2024 12:19:45 +0200 Subject: [PATCH 02/22] Adding functionalities to produced merged noise map objects --- .../ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index 57bcb55ea0e5d..b13eafa7f3b03 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -60,8 +60,7 @@ void NoiseCalibratorSpec::init(InitContext& ic) mOutputType = ic.options().get("send-to-server"); mNoiseMapForDcs.clear(); api.init("http://alice-ccdb.cern.ch"); - //api.init("http://localhost:8080"); -} + } void NoiseCalibratorSpec::run(ProcessingContext& pc) { @@ -449,9 +448,9 @@ DataProcessorSpec getNoiseCalibratorSpec(bool useDigits) {"prob-rel-err", VariantType::Float, 0.2f, {"Relative error on channel noise to apply the threshold"}}, {"tstart", VariantType::Int64, -1ll, {"Start of validity timestamp"}}, {"tend", VariantType::Int64, -1ll, {"End of validity timestamp"}}, - {"path-CCDB", VariantType::String,"/MFT/Calib/NoiseMap", {"Path to write to in CCDB"}}, - {"path-CCDB-merge", VariantType::String,"/MFT/Calib/NoiseMapMerged", {"Path to write merged file to in CCDB"}}, - {"path-DCS", VariantType::String, "/MFT/Config/NoiseMap", {"Path to write to in DCS"}}, + {"path-CCDB", VariantType::String,"/MFT/test_Calib/NoiseMap", {"Path to write to in CCDB"}}, + {"path-CCDB-merge", VariantType::String,"/MFT/test_Calib/NoiseMapMerged", {"Path to write merged file to in CCDB"}}, + {"path-DCS", VariantType::String, "/MFT/test_Config/NoiseMap", {"Path to write to in DCS"}}, {"meta", VariantType::String, "", {"meta data to write in CCDB"}}, {"send-to-server", VariantType::String, "CCDB-DCS", {"meta data to write in DCS-CCDB"}}, {"stop-me-only", VariantType::Bool, false, {"At sufficient statistics stop only this device, otherwise whole workflow"}}}}; From d5ab57d4657609ab6d6752d6a85025ccd62ee7e8 Mon Sep 17 00:00:00 2001 From: Niveditha Ramasubramanian Date: Wed, 7 Aug 2024 12:27:35 +0200 Subject: [PATCH 03/22] Clang format --- .../ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index b13eafa7f3b03..47c9073666070 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -60,7 +60,7 @@ void NoiseCalibratorSpec::init(InitContext& ic) mOutputType = ic.options().get("send-to-server"); mNoiseMapForDcs.clear(); api.init("http://alice-ccdb.cern.ch"); - } +} void NoiseCalibratorSpec::run(ProcessingContext& pc) { @@ -448,8 +448,8 @@ DataProcessorSpec getNoiseCalibratorSpec(bool useDigits) {"prob-rel-err", VariantType::Float, 0.2f, {"Relative error on channel noise to apply the threshold"}}, {"tstart", VariantType::Int64, -1ll, {"Start of validity timestamp"}}, {"tend", VariantType::Int64, -1ll, {"End of validity timestamp"}}, - {"path-CCDB", VariantType::String,"/MFT/test_Calib/NoiseMap", {"Path to write to in CCDB"}}, - {"path-CCDB-merge", VariantType::String,"/MFT/test_Calib/NoiseMapMerged", {"Path to write merged file to in CCDB"}}, + {"path-CCDB", VariantType::String, "/MFT/test_Calib/NoiseMap", {"Path to write to in CCDB"}}, + {"path-CCDB-merge", VariantType::String, "/MFT/test_Calib/NoiseMapMerged", {"Path to write merged file to in CCDB"}}, {"path-DCS", VariantType::String, "/MFT/test_Config/NoiseMap", {"Path to write to in DCS"}}, {"meta", VariantType::String, "", {"meta data to write in CCDB"}}, {"send-to-server", VariantType::String, "CCDB-DCS", {"meta data to write in DCS-CCDB"}}, From 3f05ba6813b41705ed27115567c1e39fd0afa8fa Mon Sep 17 00:00:00 2001 From: Niveditha Ramasubramanian Date: Wed, 7 Aug 2024 15:03:00 +0200 Subject: [PATCH 04/22] Fixing typo --- .../ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index 47c9073666070..f45bcafd71199 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -448,9 +448,9 @@ DataProcessorSpec getNoiseCalibratorSpec(bool useDigits) {"prob-rel-err", VariantType::Float, 0.2f, {"Relative error on channel noise to apply the threshold"}}, {"tstart", VariantType::Int64, -1ll, {"Start of validity timestamp"}}, {"tend", VariantType::Int64, -1ll, {"End of validity timestamp"}}, - {"path-CCDB", VariantType::String, "/MFT/test_Calib/NoiseMap", {"Path to write to in CCDB"}}, - {"path-CCDB-merge", VariantType::String, "/MFT/test_Calib/NoiseMapMerged", {"Path to write merged file to in CCDB"}}, - {"path-DCS", VariantType::String, "/MFT/test_Config/NoiseMap", {"Path to write to in DCS"}}, + {"path-CCDB", VariantType::String, "/MFT/Calib/NoiseMap", {"Path to write to in CCDB"}}, + {"path-CCDB-merge", VariantType::String, "/MFT/Calib/NoiseMapMerged", {"Path to write merged file to in CCDB"}}, + {"path-DCS", VariantType::String, "/MFT/Config/NoiseMap", {"Path to write to in DCS"}}, {"meta", VariantType::String, "", {"meta data to write in CCDB"}}, {"send-to-server", VariantType::String, "CCDB-DCS", {"meta data to write in DCS-CCDB"}}, {"stop-me-only", VariantType::Bool, false, {"At sufficient statistics stop only this device, otherwise whole workflow"}}}}; From 25a75e6cd798981a02add179d57c5fa1765de02e Mon Sep 17 00:00:00 2001 From: Niveditha Ramasubramanian Date: Thu, 8 Aug 2024 08:54:36 +0200 Subject: [PATCH 05/22] fixing typos --- .../ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h index f730f98e12702..1a5909a54cd61 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h @@ -204,7 +204,7 @@ class NoiseMap NoiseMap merge(NoiseMap* prev){ int incre=0; - for (size_t i = 0; i < 920; ++i) { //920 is the total number of chips in MFT + for (size_t i = 0; i < (int)mNoisyPixels.size(); ++i) { //920 is the total number of chips in MFT for (const auto& prev_np : prev->mNoisyPixels[i]) { //only enters this for loop if the "i" chip exists. bool existsInCurrentMap = false; for (const auto& current_np : mNoisyPixels[i]) { From d07ffba09d50a7dca1db65c79184773edee5dce3 Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Thu, 8 Aug 2024 07:03:15 +0000 Subject: [PATCH 06/22] Please consider the following formatting changes --- .../include/DataFormatsITSMFT/NoiseMap.h | 51 +++++++++---------- .../calibration/src/NoiseCalibratorSpec.cxx | 39 +++++++------- 2 files changed, 44 insertions(+), 46 deletions(-) diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h index 1a5909a54cd61..e96e1466ba55a 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h @@ -85,14 +85,14 @@ class NoiseMap while (chipID--) { const auto& map = mNoisyPixels[chipID]; for (const auto& pair : map) { - if (pair.second <= t) { + if (pair.second <= t) { continue; - } + } n++; auto key = pair.first; auto row = key2Row(key); auto col = key2Col(key); - std::cout << "chip, row, col, noise: " << chipID << ' ' << row << ' ' << col << ' ' << pair.second << '\n'; + std::cout << "chip, row, col, noise: " << chipID << ' ' << row << ' ' << col << ' ' << pair.second << '\n'; } } return n; @@ -202,29 +202,28 @@ class NoiseMap return std::ceil((1. + 1. / t) / (relErr * relErr)); } - NoiseMap merge(NoiseMap* prev){ - int incre=0; - for (size_t i = 0; i < (int)mNoisyPixels.size(); ++i) { //920 is the total number of chips in MFT - for (const auto& prev_np : prev->mNoisyPixels[i]) { //only enters this for loop if the "i" chip exists. - bool existsInCurrentMap = false; - for (const auto& current_np : mNoisyPixels[i]) { - if(prev_np.first==current_np.first) - { - existsInCurrentMap = true; - break; - } - }//end of for loop on elements of previous noise map - - if (!existsInCurrentMap) { - incre++; - mNoisyPixels[i][prev_np.first] = prev_np.second; - } - }//end of for loop on elements of previous noise map - }//end of for loop on i (chip ID) - return(mNoisyPixels); - }//end of void merge - - + NoiseMap merge(NoiseMap* prev) + { + int incre = 0; + for (size_t i = 0; i < (int)mNoisyPixels.size(); ++i) { // 920 is the total number of chips in MFT + for (const auto& prev_np : prev->mNoisyPixels[i]) { // only enters this for loop if the "i" chip exists. + bool existsInCurrentMap = false; + for (const auto& current_np : mNoisyPixels[i]) { + if (prev_np.first == current_np.first) { + existsInCurrentMap = true; + break; + } + } // end of for loop on elements of previous noise map + + if (!existsInCurrentMap) { + incre++; + mNoisyPixels[i][prev_np.first] = prev_np.second; + } + } // end of for loop on elements of previous noise map + } // end of for loop on i (chip ID) + return (mNoisyPixels); + } // end of void merge + size_t size() const { return mNoisyPixels.size(); } void setNumOfStrobes(long n) { mNumOfStrobes = n; } void addStrobes(long n) { mNumOfStrobes += n; } diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index f45bcafd71199..3265d0f6e016d 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -1,13 +1,13 @@ -//AA Copyright 2019-2020 CERN and copyright holders of ALICE O2.A -// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. -// All rights not expressly granted are reserved. +// AA Copyright 2019-2020 CERN and copyright holders of ALICE O2.A +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// This software is distributed under the terms of the GNU General Public -// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // -// In applying this license CERN does not waive the privileges and immunities -// granted to it by virtue of its status as an Intergovernmental Organization -// or submit itself to any jurisdiction. +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. /// @file NoiseCalibratorSpec.cxx @@ -49,7 +49,7 @@ void NoiseCalibratorSpec::init(InitContext& ic) mStopMeOnly = ic.options().get("stop-me-only"); mPath = ic.options().get("path-CCDB"); mPathMerge = ic.options().get("path-CCDB-merge"); - + mMeta = ic.options().get("meta"); mStart = ic.options().get("tstart"); mEnd = ic.options().get("tend"); @@ -75,7 +75,7 @@ void NoiseCalibratorSpec::run(ProcessingContext& pc) if (mOutputType.compare("CCDB") == 0) { LOG(info) << "Sending an object to Production-CCDB"; sendOutputCcdb(pc.outputs()); - LOG(info) << "Sending an object to Production-CCDBMerge"; + LOG(info) << "Sending an object to Production-CCDBMerge"; sendOutputCcdbMerge(pc.outputs()); } else if (mOutputType.compare("DCS") == 0) { LOG(info) << "Sending an object to DCS-CCDB"; @@ -97,7 +97,7 @@ void NoiseCalibratorSpec::run(ProcessingContext& pc) if (mOutputType.compare("CCDB") == 0) { LOG(info) << "Sending an object to Production-CCDB"; sendOutputCcdb(pc.outputs()); - LOG(info) << "Sending an object to Production-CCDBMerge"; + LOG(info) << "Sending an object to Production-CCDBMerge"; sendOutputCcdbMerge(pc.outputs()); } else if (mOutputType.compare("DCS") == 0) { LOG(info) << "Sending an object to DCS-CCDB"; @@ -168,7 +168,7 @@ void NoiseCalibratorSpec::sendOutputCcdbDcs(DataAllocator& output) const auto& payload = mCalibrator->getNoiseMap(); // const auto& payload = mCalibrator->getNoiseMap(starTF, endTF); //For TimeSlot calibration - + o2::ccdb::CcdbObjectInfo info(mPath, "NoiseMap", "noise.root", meta, tstart, tend); auto flName = o2::ccdb::CcdbApi::generateFileName("noise"); auto image = o2::ccdb::CcdbApi::createObjectImage(&payload, &info); @@ -182,7 +182,6 @@ void NoiseCalibratorSpec::sendOutputCcdbDcs(DataAllocator& output) output.snapshot(Output{clbUtils::gDataOriginCDBPayload, "MFT_NoiseMap", 0}, *image.get()); output.snapshot(Output{clbUtils::gDataOriginCDBWrapper, "MFT_NoiseMap", 0}, info); - setOutputDcs(payload); o2::ccdb::CcdbObjectInfo infoDcs(mPathDcs, "NoiseMap", "noise.root", meta, tstart, tend); @@ -298,13 +297,13 @@ void NoiseCalibratorSpec::sendOutputCcdbMerge(DataAllocator& output) // const auto& payload = mCalibrator->getNoiseMap(starTF, endTF); //For TimeSlot calibration map headers; map filter; - auto *payloadPrev1 = api.retrieveFromTFileAny(mPath, filter,-1, &headers); + auto* payloadPrev1 = api.retrieveFromTFileAny(mPath, filter, -1, &headers); long validtime = std::stol(headers["Valid-From"]); - validtime=validtime-60; - auto *payloadPrev2 = api.retrieveFromTFileAny(mPath, filter,validtime, &headers); - auto bufferPL= payloadPrev2->merge(payloadPrev1); - auto mergedPL= payload.merge(&bufferPL); - //payload.merge(payloadPrev); + validtime = validtime - 60; + auto* payloadPrev2 = api.retrieveFromTFileAny(mPath, filter, validtime, &headers); + auto bufferPL = payloadPrev2->merge(payloadPrev1); + auto mergedPL = payload.merge(&bufferPL); + // payload.merge(payloadPrev); o2::ccdb::CcdbObjectInfo info(mPathMerge, "NoiseMap", "noise.root", meta, tstart, tend); auto flName = o2::ccdb::CcdbApi::generateFileName("noise"); auto image = o2::ccdb::CcdbApi::createObjectImage(&mergedPL, &info); @@ -360,7 +359,7 @@ void NoiseCalibratorSpec::sendOutputDcs(DataAllocator& output) const auto& payload = mCalibrator->getNoiseMap(); // const auto& payload = mCalibrator->getNoiseMap(starTF, endTF); //For TimeSlot calibration - + setOutputDcs(payload); o2::ccdb::CcdbObjectInfo infoDcs(mPathDcs, "NoiseMap", "noise.root", meta, tstart, tend); From 6d434f66ca49bf5f73efdaaa70a3dcdd2870112e Mon Sep 17 00:00:00 2001 From: Niveditha Ramasubramanian Date: Thu, 8 Aug 2024 10:40:23 +0200 Subject: [PATCH 07/22] fixing typos --- .../ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h | 2 +- Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h index e96e1466ba55a..d6a81d73b9a95 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h @@ -205,7 +205,7 @@ class NoiseMap NoiseMap merge(NoiseMap* prev) { int incre = 0; - for (size_t i = 0; i < (int)mNoisyPixels.size(); ++i) { // 920 is the total number of chips in MFT + for (size_t i = 0; i < (int)mNoisyPixels.size(); ++i) { for (const auto& prev_np : prev->mNoisyPixels[i]) { // only enters this for loop if the "i" chip exists. bool existsInCurrentMap = false; for (const auto& current_np : mNoisyPixels[i]) { diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index 3265d0f6e016d..13cde9e729a34 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -1,4 +1,4 @@ -// AA Copyright 2019-2020 CERN and copyright holders of ALICE O2.A +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. // See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. // All rights not expressly granted are reserved. // From f51a8ddbc1417e6c5e6963345dc54cc6fe5b4f6e Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Thu, 8 Aug 2024 08:41:23 +0000 Subject: [PATCH 08/22] Please consider the following formatting changes --- .../ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h index d6a81d73b9a95..8fbc80ae460ca 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h @@ -205,8 +205,8 @@ class NoiseMap NoiseMap merge(NoiseMap* prev) { int incre = 0; - for (size_t i = 0; i < (int)mNoisyPixels.size(); ++i) { - for (const auto& prev_np : prev->mNoisyPixels[i]) { // only enters this for loop if the "i" chip exists. + for (size_t i = 0; i < (int)mNoisyPixels.size(); ++i) { + for (const auto& prev_np : prev->mNoisyPixels[i]) { // only enters this for loop if the "i" chip exists. bool existsInCurrentMap = false; for (const auto& current_np : mNoisyPixels[i]) { if (prev_np.first == current_np.first) { From fc8a0643d806c5645f724a0fdba4898c19ce2660 Mon Sep 17 00:00:00 2001 From: Niveditha Ramasubramanian Date: Thu, 8 Aug 2024 10:50:33 +0200 Subject: [PATCH 09/22] fixing typos in copyright issue notice --- .../MFT/calibration/src/NoiseCalibratorSpec.cxx | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index 13cde9e729a34..4962421f46db1 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -1,13 +1,13 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. -// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. -// All rights not expressly granted are reserved. +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// This software is distributed under the terms of the GNU General Public -// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // -// In applying this license CERN does not waive the privileges and immunities -// granted to it by virtue of its status as an Intergovernmental Organization -// or submit itself to any jurisdiction. +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. /// @file NoiseCalibratorSpec.cxx From 619ef884edbd40312a96700af9db1099c46777c7 Mon Sep 17 00:00:00 2001 From: Niveditha Ramasubramanian Date: Fri, 30 Aug 2024 15:06:06 +0200 Subject: [PATCH 10/22] making small changes to make code more stable --- .../include/DataFormatsITSMFT/NoiseMap.h | 19 ++++++------------- .../calibration/src/NoiseCalibratorSpec.cxx | 13 ++++++++----- 2 files changed, 14 insertions(+), 18 deletions(-) diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h index 8fbc80ae460ca..c7687b820ddfe 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h @@ -1,3 +1,4 @@ + // Copyright 2019-2020 CERN and copyright holders of ALICE O2. // See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. // All rights not expressly granted are reserved. @@ -202,23 +203,15 @@ class NoiseMap return std::ceil((1. + 1. / t) / (relErr * relErr)); } - NoiseMap merge(NoiseMap* prev) + NoiseMap merge(const NoiseMap* prev) { int incre = 0; for (size_t i = 0; i < (int)mNoisyPixels.size(); ++i) { for (const auto& prev_np : prev->mNoisyPixels[i]) { // only enters this for loop if the "i" chip exists. - bool existsInCurrentMap = false; - for (const auto& current_np : mNoisyPixels[i]) { - if (prev_np.first == current_np.first) { - existsInCurrentMap = true; - break; - } - } // end of for loop on elements of previous noise map - - if (!existsInCurrentMap) { - incre++; - mNoisyPixels[i][prev_np.first] = prev_np.second; - } + if (mNoisyPixels[i].find(prev_np.first) == mNoisyPixels[i].end()) { + mNoisyPixels[i][prev_np.first] = prev_np.second; + incre++; + } } // end of for loop on elements of previous noise map } // end of for loop on i (chip ID) return (mNoisyPixels); diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index 4962421f46db1..3ed7affb1946b 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -299,11 +299,14 @@ void NoiseCalibratorSpec::sendOutputCcdbMerge(DataAllocator& output) map filter; auto* payloadPrev1 = api.retrieveFromTFileAny(mPath, filter, -1, &headers); long validtime = std::stol(headers["Valid-From"]); - validtime = validtime - 60; - auto* payloadPrev2 = api.retrieveFromTFileAny(mPath, filter, validtime, &headers); - auto bufferPL = payloadPrev2->merge(payloadPrev1); - auto mergedPL = payload.merge(&bufferPL); - // payload.merge(payloadPrev); + auto mergedPL = payload; + if(validtime>0) + { + validtime = validtime - 60; + auto* payloadPrev2 = api.retrieveFromTFileAny(mPath, filter, validtime, &headers); + auto bufferPL = payloadPrev2->merge(payloadPrev1); + mergedPL = payload.merge(&bufferPL); + } o2::ccdb::CcdbObjectInfo info(mPathMerge, "NoiseMap", "noise.root", meta, tstart, tend); auto flName = o2::ccdb::CcdbApi::generateFileName("noise"); auto image = o2::ccdb::CcdbApi::createObjectImage(&mergedPL, &info); From 5baa85007141548b0390148c1e948485f64d3b85 Mon Sep 17 00:00:00 2001 From: Niveditha Ramasubramanian Date: Fri, 30 Aug 2024 15:09:34 +0200 Subject: [PATCH 11/22] fixing typos --- .../Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h | 1 - 1 file changed, 1 deletion(-) diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h index c7687b820ddfe..075d3ae2f3f1d 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h @@ -1,4 +1,3 @@ - // Copyright 2019-2020 CERN and copyright holders of ALICE O2. // See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. // All rights not expressly granted are reserved. From 64478f5066d6e1d3a94a3798cc8a4ffea09c5ecf Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Fri, 30 Aug 2024 13:10:08 +0000 Subject: [PATCH 12/22] Please consider the following formatting changes --- .../common/include/DataFormatsITSMFT/NoiseMap.h | 10 +++++----- .../MFT/calibration/src/NoiseCalibratorSpec.cxx | 13 ++++++------- 2 files changed, 11 insertions(+), 12 deletions(-) diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h index 075d3ae2f3f1d..49e6f531eeb76 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h @@ -207,12 +207,12 @@ class NoiseMap int incre = 0; for (size_t i = 0; i < (int)mNoisyPixels.size(); ++i) { for (const auto& prev_np : prev->mNoisyPixels[i]) { // only enters this for loop if the "i" chip exists. - if (mNoisyPixels[i].find(prev_np.first) == mNoisyPixels[i].end()) { - mNoisyPixels[i][prev_np.first] = prev_np.second; - incre++; - } + if (mNoisyPixels[i].find(prev_np.first) == mNoisyPixels[i].end()) { + mNoisyPixels[i][prev_np.first] = prev_np.second; + incre++; + } } // end of for loop on elements of previous noise map - } // end of for loop on i (chip ID) + } // end of for loop on i (chip ID) return (mNoisyPixels); } // end of void merge diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index 3ed7affb1946b..db82b051a88fd 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -300,13 +300,12 @@ void NoiseCalibratorSpec::sendOutputCcdbMerge(DataAllocator& output) auto* payloadPrev1 = api.retrieveFromTFileAny(mPath, filter, -1, &headers); long validtime = std::stol(headers["Valid-From"]); auto mergedPL = payload; - if(validtime>0) - { - validtime = validtime - 60; - auto* payloadPrev2 = api.retrieveFromTFileAny(mPath, filter, validtime, &headers); - auto bufferPL = payloadPrev2->merge(payloadPrev1); - mergedPL = payload.merge(&bufferPL); - } + if (validtime > 0) { + validtime = validtime - 60; + auto* payloadPrev2 = api.retrieveFromTFileAny(mPath, filter, validtime, &headers); + auto bufferPL = payloadPrev2->merge(payloadPrev1); + mergedPL = payload.merge(&bufferPL); + } o2::ccdb::CcdbObjectInfo info(mPathMerge, "NoiseMap", "noise.root", meta, tstart, tend); auto flName = o2::ccdb::CcdbApi::generateFileName("noise"); auto image = o2::ccdb::CcdbApi::createObjectImage(&mergedPL, &info); From d4272d2864197e7ce74f52f11d6295d6f90e4da6 Mon Sep 17 00:00:00 2001 From: Niveditha Ramasubramanian Date: Mon, 2 Sep 2024 12:11:42 +0200 Subject: [PATCH 13/22] modifying checks on validtime --- Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index 3ed7affb1946b..c8de40cdd9ee2 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -302,7 +302,7 @@ void NoiseCalibratorSpec::sendOutputCcdbMerge(DataAllocator& output) auto mergedPL = payload; if(validtime>0) { - validtime = validtime - 60; + validtime = validtime - 1; auto* payloadPrev2 = api.retrieveFromTFileAny(mPath, filter, validtime, &headers); auto bufferPL = payloadPrev2->merge(payloadPrev1); mergedPL = payload.merge(&bufferPL); From 98ffaf316a8c62c0763d49f75c34d4b9540483d8 Mon Sep 17 00:00:00 2001 From: Niveditha Ramasubramanian Date: Mon, 2 Sep 2024 12:18:53 +0200 Subject: [PATCH 14/22] modifying checks on validtime --- Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index db82b051a88fd..8c79dcfebd8db 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -301,7 +301,7 @@ void NoiseCalibratorSpec::sendOutputCcdbMerge(DataAllocator& output) long validtime = std::stol(headers["Valid-From"]); auto mergedPL = payload; if (validtime > 0) { - validtime = validtime - 60; + validtime = validtime - 1; auto* payloadPrev2 = api.retrieveFromTFileAny(mPath, filter, validtime, &headers); auto bufferPL = payloadPrev2->merge(payloadPrev1); mergedPL = payload.merge(&bufferPL); From ee5bdaabd48cc62d2c8dd2b5eaf380916dd6ff20 Mon Sep 17 00:00:00 2001 From: Niveditha Ramasubramanian Date: Fri, 21 Feb 2025 14:24:48 +0100 Subject: [PATCH 15/22] Adding ccdbmerged object to the right call function --- Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx | 1 + 1 file changed, 1 insertion(+) diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index 8c79dcfebd8db..a279ce9be6d6f 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -83,6 +83,7 @@ void NoiseCalibratorSpec::run(ProcessingContext& pc) } else { LOG(info) << "Sending an object to Production-CCDB and DCS-CCDB"; sendOutputCcdbDcs(pc.outputs()); + sendOutputCcdbMerge(pc.outputs()); } pc.services().get().readyToQuit(mStopMeOnly ? QuitRequest::Me : QuitRequest::All); } From 3828a8592b7be768d50966bd473cd1ae9c97d418 Mon Sep 17 00:00:00 2001 From: Niveditha Ramasubramanian Date: Fri, 21 Feb 2025 14:36:49 +0100 Subject: [PATCH 16/22] fixing space issues --- Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index a279ce9be6d6f..ecbaac70257ab 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -83,7 +83,9 @@ void NoiseCalibratorSpec::run(ProcessingContext& pc) } else { LOG(info) << "Sending an object to Production-CCDB and DCS-CCDB"; sendOutputCcdbDcs(pc.outputs()); - sendOutputCcdbMerge(pc.outputs()); + LOG(info) << "Sending an object to Production-CCDBMerge"; + sendOutputCcdbMerge(pc.outputs()); + } pc.services().get().readyToQuit(mStopMeOnly ? QuitRequest::Me : QuitRequest::All); } From 3727951e23cdee7473793539f8f4e161af83e683 Mon Sep 17 00:00:00 2001 From: Niveditha Ramasubramanian Date: Fri, 21 Feb 2025 14:41:04 +0100 Subject: [PATCH 17/22] fixing space issues --- Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index ecbaac70257ab..8e0a2ee52bbd0 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -84,8 +84,7 @@ void NoiseCalibratorSpec::run(ProcessingContext& pc) LOG(info) << "Sending an object to Production-CCDB and DCS-CCDB"; sendOutputCcdbDcs(pc.outputs()); LOG(info) << "Sending an object to Production-CCDBMerge"; - sendOutputCcdbMerge(pc.outputs()); - + sendOutputCcdbMerge(pc.outputs()); } pc.services().get().readyToQuit(mStopMeOnly ? QuitRequest::Me : QuitRequest::All); } From ec61362e125ac85a2edf612c10cb0124b6b2660e Mon Sep 17 00:00:00 2001 From: Niveditha Ramasubramanian Date: Fri, 21 Feb 2025 17:05:36 +0100 Subject: [PATCH 18/22] fixing space issues --- .../ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index 8e0a2ee52bbd0..b7d7909936ed1 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -1,4 +1,4 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. // See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. // All rights not expressly granted are reserved. // @@ -100,13 +100,15 @@ void NoiseCalibratorSpec::run(ProcessingContext& pc) LOG(info) << "Sending an object to Production-CCDB"; sendOutputCcdb(pc.outputs()); LOG(info) << "Sending an object to Production-CCDBMerge"; - sendOutputCcdbMerge(pc.outputs()); + sendOutputCcdbMerge(pc.outputs()); } else if (mOutputType.compare("DCS") == 0) { LOG(info) << "Sending an object to DCS-CCDB"; sendOutputDcs(pc.outputs()); } else { LOG(info) << "Sending an object to Production-CCDB and DCS-CCDB"; - sendOutputCcdbDcs(pc.outputs()); + sendOutputCcdbDcs(pc.outputs()); + LOG(info) << "Sending an object to Production-CCDBMerge"; + sendOutputCcdbMerge(pc.outputs()); } pc.services().get().readyToQuit(mStopMeOnly ? QuitRequest::Me : QuitRequest::All); } From 2e1aff87b74fdd351651b960d9152e85c06a5ca9 Mon Sep 17 00:00:00 2001 From: Niveditha Ramasubramanian Date: Fri, 21 Feb 2025 17:08:43 +0100 Subject: [PATCH 19/22] fixing space issues --- .../MFT/calibration/src/NoiseCalibratorSpec.cxx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index b7d7909936ed1..4c05ab767972d 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -1,4 +1,4 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. + // Copyright 2019-2020 CERN and copyright holders of ALICE O2. // See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. // All rights not expressly granted are reserved. // @@ -27,7 +27,7 @@ #include "Framework/CCDBParamSpec.h" #include "DetectorsCommonDataFormats/DetectorNameConf.h" -using namespace o2::framework; + using namespace o2::framework; using namespace o2::utils; namespace o2 @@ -83,8 +83,8 @@ void NoiseCalibratorSpec::run(ProcessingContext& pc) } else { LOG(info) << "Sending an object to Production-CCDB and DCS-CCDB"; sendOutputCcdbDcs(pc.outputs()); - LOG(info) << "Sending an object to Production-CCDBMerge"; - sendOutputCcdbMerge(pc.outputs()); + LOG(info) << "Sending an object to Production-CCDBMerge"; + sendOutputCcdbMerge(pc.outputs()); } pc.services().get().readyToQuit(mStopMeOnly ? QuitRequest::Me : QuitRequest::All); } @@ -106,8 +106,8 @@ void NoiseCalibratorSpec::run(ProcessingContext& pc) sendOutputDcs(pc.outputs()); } else { LOG(info) << "Sending an object to Production-CCDB and DCS-CCDB"; - sendOutputCcdbDcs(pc.outputs()); - LOG(info) << "Sending an object to Production-CCDBMerge"; + sendOutputCcdbDcs(pc.outputs()); +  LOG(info) << "Sending an object to Production-CCDBMerge"; sendOutputCcdbMerge(pc.outputs()); } pc.services().get().readyToQuit(mStopMeOnly ? QuitRequest::Me : QuitRequest::All); From 14c22bbf244201ffb6c5d5f24669e87699280bf6 Mon Sep 17 00:00:00 2001 From: Niveditha Ramasubramanian Date: Fri, 21 Feb 2025 17:14:39 +0100 Subject: [PATCH 20/22] copyright header issue --- Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index 4c05ab767972d..d844583d5da5e 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -1,4 +1,4 @@ - // Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. // See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. // All rights not expressly granted are reserved. // From 6b638a1e4742ecb3be38a0487366464d2fbbfbd2 Mon Sep 17 00:00:00 2001 From: Niveditha Ramasubramanian Date: Fri, 21 Feb 2025 17:17:39 +0100 Subject: [PATCH 21/22] clang format issue --- Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index d844583d5da5e..d0e939e2706fb 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -27,7 +27,7 @@ #include "Framework/CCDBParamSpec.h" #include "DetectorsCommonDataFormats/DetectorNameConf.h" - using namespace o2::framework; +using namespace o2::framework; using namespace o2::utils; namespace o2 From c09d90fee95285d3e6f7e9dcb698ff4fb300f87b Mon Sep 17 00:00:00 2001 From: nivram-phy Date: Fri, 28 Feb 2025 16:33:56 +0100 Subject: [PATCH 22/22] Update NoiseCalibratorSpec.cxx --- .../ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index 748417af015ec..617e02ebb9d9c 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -106,9 +106,9 @@ void NoiseCalibratorSpec::run(ProcessingContext& pc) sendOutputDcs(pc.outputs()); } else { LOG(info) << "Sending an object to Production-CCDB and DCS-CCDB"; - sendOutputCcdbDcs(pc.outputs()); -  LOG(info) << "Sending an object to Production-CCDBMerge"; - sendOutputCcdbMerge(pc.outputs()); + sendOutputCcdbDcs(pc.outputs()); + LOG(info) << "Sending an object to Production-CCDBMerge"; + sendOutputCcdbMerge(pc.outputs()); } pc.services().get().readyToQuit(mStopMeOnly ? QuitRequest::Me : QuitRequest::All); }