From 1598cf271bbe99df2b4f35dff5e8afb07d48b6a2 Mon Sep 17 00:00:00 2001 From: Piotr Konopka Date: Fri, 16 Apr 2021 13:10:06 +0200 Subject: [PATCH 1/2] Provide a default FlagReason constructor for ROOT --- .../include/DataFormatsQualityControl/FlagReasons.h | 1 + DataFormats/QualityControl/src/FlagReasons.cxx | 5 +++++ DataFormats/QualityControl/test/testFlagReasons.cxx | 3 +++ 3 files changed, 9 insertions(+) diff --git a/DataFormats/QualityControl/include/DataFormatsQualityControl/FlagReasons.h b/DataFormats/QualityControl/include/DataFormatsQualityControl/FlagReasons.h index 00e17ffb01e10..933401e001796 100644 --- a/DataFormats/QualityControl/include/DataFormatsQualityControl/FlagReasons.h +++ b/DataFormats/QualityControl/include/DataFormatsQualityControl/FlagReasons.h @@ -43,6 +43,7 @@ class FlagReason FlagReason(uint16_t id, const char* name, bool bad) : mId(id), mName(name), mBad(bad) {} public: + FlagReason(); FlagReason& operator=(const FlagReason&) = default; FlagReason(const FlagReason&) = default; bool operator==(const FlagReason& rhs) const; diff --git a/DataFormats/QualityControl/src/FlagReasons.cxx b/DataFormats/QualityControl/src/FlagReasons.cxx index eca5298601002..86f1a37da3814 100644 --- a/DataFormats/QualityControl/src/FlagReasons.cxx +++ b/DataFormats/QualityControl/src/FlagReasons.cxx @@ -16,6 +16,11 @@ namespace o2::quality_control { +FlagReason::FlagReason() +{ + *this = FlagReasonFactory::Invalid(); +} + std::ostream& operator<<(std::ostream& os, FlagReason const& my) { os << "Flag Reason: id - " << my.mId << ", name - " << my.mName << ", bad - " << (my.mBad ? "true" : "false"); diff --git a/DataFormats/QualityControl/test/testFlagReasons.cxx b/DataFormats/QualityControl/test/testFlagReasons.cxx index 4c5d479a75f8e..27936af831a98 100644 --- a/DataFormats/QualityControl/test/testFlagReasons.cxx +++ b/DataFormats/QualityControl/test/testFlagReasons.cxx @@ -27,6 +27,9 @@ BOOST_AUTO_TEST_CASE(FlagReasons) static_assert(std::is_constructible::value == false, "FlagReason should not be constructible outside of its static methods."); + FlagReason rDefault; + BOOST_CHECK_EQUAL(rDefault, FlagReasonFactory::Invalid()); + auto r1 = FlagReasonFactory::Unknown(); BOOST_CHECK_EQUAL(r1.getID(), 1); BOOST_CHECK_EQUAL(r1.getName(), "Unknown"); From 41c577c0a13047de3c310d13f8d630a6e1d2def9 Mon Sep 17 00:00:00 2001 From: Piotr Konopka Date: Fri, 16 Apr 2021 13:10:44 +0200 Subject: [PATCH 2/2] Name and Detector getters for TRFCollections --- .../DataFormatsQualityControl/TimeRangeFlagCollection.h | 3 +++ .../QualityControl/src/TimeRangeFlagCollection.cxx | 9 +++++++++ 2 files changed, 12 insertions(+) diff --git a/DataFormats/QualityControl/include/DataFormatsQualityControl/TimeRangeFlagCollection.h b/DataFormats/QualityControl/include/DataFormatsQualityControl/TimeRangeFlagCollection.h index a0dd08c2deb1b..c838eb722906b 100644 --- a/DataFormats/QualityControl/include/DataFormatsQualityControl/TimeRangeFlagCollection.h +++ b/DataFormats/QualityControl/include/DataFormatsQualityControl/TimeRangeFlagCollection.h @@ -54,6 +54,9 @@ class TimeRangeFlagCollection collection_t::const_iterator begin() const; collection_t::const_iterator end() const; + const std::string& getName() const; + const std::string& getDetector() const; + /// write data to ostream void streamTo(std::ostream& output) const; diff --git a/DataFormats/QualityControl/src/TimeRangeFlagCollection.cxx b/DataFormats/QualityControl/src/TimeRangeFlagCollection.cxx index a981107596582..626b385856f58 100644 --- a/DataFormats/QualityControl/src/TimeRangeFlagCollection.cxx +++ b/DataFormats/QualityControl/src/TimeRangeFlagCollection.cxx @@ -73,4 +73,13 @@ std::ostream& operator<<(std::ostream& output, const TimeRangeFlagCollection& da return output; } +const std::string& TimeRangeFlagCollection::getName() const +{ + return mName; +} +const std::string& TimeRangeFlagCollection::getDetector() const +{ + return mDetID; +} + } // namespace o2::quality_control \ No newline at end of file