From 480b24bcc7a1db2ddc4f372afa8701b1cc014809 Mon Sep 17 00:00:00 2001 From: pillot Date: Tue, 25 Feb 2025 15:21:43 +0100 Subject: [PATCH] remove duplicates before uploading --- .../MUON/MCH/include/DataFormatsMCH/DsChannelId.h | 8 ++++++++ Detectors/MUON/MCH/Conditions/src/bad-channels-ccdb.cxx | 6 +++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/DsChannelId.h b/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/DsChannelId.h index 6485186b66463..cd11d4b71389c 100644 --- a/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/DsChannelId.h +++ b/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/DsChannelId.h @@ -61,5 +61,13 @@ class DsChannelId ClassDefNV(DsChannelId, 1); // class for MCH readout channel }; + +inline bool operator==(const DsChannelId& a, const DsChannelId& b) { return a.value() == b.value(); } +inline bool operator!=(const DsChannelId& a, const DsChannelId& b) { return !(a == b); } +inline bool operator<(const DsChannelId& a, const DsChannelId& b) { return a.value() < b.value(); } +inline bool operator>(const DsChannelId& a, const DsChannelId& b) { return b < a; } +inline bool operator<=(const DsChannelId& a, const DsChannelId& b) { return !(a > b); } +inline bool operator>=(const DsChannelId& a, const DsChannelId& b) { return !(a < b); } + } // namespace o2::mch #endif diff --git a/Detectors/MUON/MCH/Conditions/src/bad-channels-ccdb.cxx b/Detectors/MUON/MCH/Conditions/src/bad-channels-ccdb.cxx index d453277aa644c..d355a209329ca 100644 --- a/Detectors/MUON/MCH/Conditions/src/bad-channels-ccdb.cxx +++ b/Detectors/MUON/MCH/Conditions/src/bad-channels-ccdb.cxx @@ -10,6 +10,7 @@ // or submit itself to any jurisdiction. #include +#include #include #include #include @@ -209,9 +210,12 @@ void uploadBadChannels(const std::string ccdbUrl, const std::string badChannelType, uint64_t startTimestamp, uint64_t endTimestamp, - const BadChannelsVector& bv, + BadChannelsVector& bv, bool makeDefault) { + std::sort(bv.begin(), bv.end()); + bv.erase(std::unique(bv.begin(), bv.end()), bv.end()); + std::cout << std::endl; o2::ccdb::CcdbApi api; api.init(ccdbUrl);