Skip to content

Commit 38ce559

Browse files
authored
Improvements for Flag Reasons and TRFCollections (#5941)
* Provide a default FlagReason constructor for ROOT * Name and Detector getters for TRFCollections
1 parent e238601 commit 38ce559

5 files changed

Lines changed: 21 additions & 0 deletions

File tree

DataFormats/QualityControl/include/DataFormatsQualityControl/FlagReasons.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ class FlagReason
4343
FlagReason(uint16_t id, const char* name, bool bad) : mId(id), mName(name), mBad(bad) {}
4444

4545
public:
46+
FlagReason();
4647
FlagReason& operator=(const FlagReason&) = default;
4748
FlagReason(const FlagReason&) = default;
4849
bool operator==(const FlagReason& rhs) const;

DataFormats/QualityControl/include/DataFormatsQualityControl/TimeRangeFlagCollection.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,9 @@ class TimeRangeFlagCollection
5454
collection_t::const_iterator begin() const;
5555
collection_t::const_iterator end() const;
5656

57+
const std::string& getName() const;
58+
const std::string& getDetector() const;
59+
5760
/// write data to ostream
5861
void streamTo(std::ostream& output) const;
5962

DataFormats/QualityControl/src/FlagReasons.cxx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,11 @@
1616
namespace o2::quality_control
1717
{
1818

19+
FlagReason::FlagReason()
20+
{
21+
*this = FlagReasonFactory::Invalid();
22+
}
23+
1924
std::ostream& operator<<(std::ostream& os, FlagReason const& my)
2025
{
2126
os << "Flag Reason: id - " << my.mId << ", name - " << my.mName << ", bad - " << (my.mBad ? "true" : "false");

DataFormats/QualityControl/src/TimeRangeFlagCollection.cxx

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,4 +73,13 @@ std::ostream& operator<<(std::ostream& output, const TimeRangeFlagCollection& da
7373
return output;
7474
}
7575

76+
const std::string& TimeRangeFlagCollection::getName() const
77+
{
78+
return mName;
79+
}
80+
const std::string& TimeRangeFlagCollection::getDetector() const
81+
{
82+
return mDetID;
83+
}
84+
7685
} // namespace o2::quality_control

DataFormats/QualityControl/test/testFlagReasons.cxx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,9 @@ BOOST_AUTO_TEST_CASE(FlagReasons)
2727
static_assert(std::is_constructible<FlagReason, uint16_t, const char*, bool>::value == false,
2828
"FlagReason should not be constructible outside of its static methods.");
2929

30+
FlagReason rDefault;
31+
BOOST_CHECK_EQUAL(rDefault, FlagReasonFactory::Invalid());
32+
3033
auto r1 = FlagReasonFactory::Unknown();
3134
BOOST_CHECK_EQUAL(r1.getID(), 1);
3235
BOOST_CHECK_EQUAL(r1.getName(), "Unknown");

0 commit comments

Comments
 (0)