Skip to content

Commit ee90945

Browse files
authored
[MCH] updates for async QC (#1851)
- do not try to load reference plots if time stamp is not provided - read TF length from gRPC in digits task
1 parent 1fda257 commit ee90945

4 files changed

Lines changed: 15 additions & 8 deletions

File tree

Modules/MUON/MCH/include/MCH/DigitsTask.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@ class DigitsTask /*final*/ : public TaskInterface // todo add back the "final" w
9393

9494
uint32_t mNOrbits[FecId::sFeeNum][FecId::sLinkNum];
9595
uint32_t mLastOrbitSeen[FecId::sFeeNum][FecId::sLinkNum];
96+
int mNOrbitsPerTF{ -1 };
9697

9798
// 2D Histograms, using Elec view (where x and y uniquely identify each pad based on its Elec info (fee, link, de)
9899
std::unique_ptr<MergeableTH2Ratio> mHistogramOccupancyElec; // Occupancy histogram (Elec view)

Modules/MUON/MCH/src/DigitsPostProcessing.cxx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,10 @@ void DigitsPostProcessing::configure(const boost::property_tree::ptree& config)
4747
mCcdbObjects.emplace(orbitsSourceName(), CcdbObjectHelper());
4848
mCcdbObjects.emplace(orbitsSignalSourceName(), CcdbObjectHelper());
4949

50-
mCcdbObjectsRef.emplace(rateSourceName(), CcdbObjectHelper());
51-
mCcdbObjectsRef.emplace(rateSignalSourceName(), CcdbObjectHelper());
50+
if (mRefTimeStamp > 0) {
51+
mCcdbObjectsRef.emplace(rateSourceName(), CcdbObjectHelper());
52+
mCcdbObjectsRef.emplace(rateSignalSourceName(), CcdbObjectHelper());
53+
}
5254

5355
for (auto source : mchConfig.dataSources) {
5456
std::string sourceType, sourceName;

Modules/MUON/MCH/src/DigitsTask.cxx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
#include "MCHMappingInterface/Segmentation.h"
2929
#include "MCHRawDecoder/DataDecoder.h"
3030
#include "QualityControl/QcInfoLogger.h"
31+
#include "DetectorsBase/GRPGeomHelper.h"
3132
#include <Framework/InputRecord.h>
3233
#include <CommonConstants/LHCConstants.h>
3334
#include <DetectorsRaw/HBFUtils.h>
@@ -127,6 +128,8 @@ void DigitsTask::monitorData(o2::framework::ProcessingContext& ctx)
127128
{
128129
bool hasOrbits = checkInput(ctx, "orbits");
129130

131+
mNOrbitsPerTF = o2::base::GRPGeomHelper::instance().getNHBFPerTF();
132+
130133
if (hasOrbits) {
131134
// if (ctx.inputs().isValid("orbits")) {
132135
auto orbits = ctx.inputs().get<gsl::span<uint64_t>>("orbits");
@@ -174,7 +177,7 @@ void DigitsTask::addDefaultOrbitsInTF()
174177
{
175178
for (int fee = 0; fee < FecId::sFeeNum; fee++) {
176179
for (int li = 0; li < FecId::sLinkNum; li++) {
177-
mNOrbits[fee][li] += o2::raw::HBFUtils::Instance().getNOrbitsPerTF();
180+
mNOrbits[fee][li] += mNOrbitsPerTF;
178181
}
179182
}
180183
}

Modules/MUON/MCH/src/PreclustersPostProcessing.cxx

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,13 +38,14 @@ void PreclustersPostProcessing::configure(const boost::property_tree::ptree& con
3838
mFullHistos = mchConfig.getParameter<bool>("FullHistos", false);
3939

4040
mCcdbObjects.emplace(effSourceName(), CcdbObjectHelper());
41-
mCcdbObjectsRef.emplace(effSourceName(), CcdbObjectHelper());
42-
4341
mCcdbObjects.emplace(clusterChargeSourceName(), CcdbObjectHelper());
44-
mCcdbObjectsRef.emplace(clusterChargeSourceName(), CcdbObjectHelper());
45-
4642
mCcdbObjects.emplace(clusterSizeSourceName(), CcdbObjectHelper());
47-
mCcdbObjectsRef.emplace(clusterSizeSourceName(), CcdbObjectHelper());
43+
44+
if (mRefTimeStamp > 0) {
45+
mCcdbObjectsRef.emplace(effSourceName(), CcdbObjectHelper());
46+
mCcdbObjectsRef.emplace(clusterChargeSourceName(), CcdbObjectHelper());
47+
mCcdbObjectsRef.emplace(clusterSizeSourceName(), CcdbObjectHelper());
48+
}
4849

4950
for (auto source : mchConfig.dataSources) {
5051
std::string sourceType, sourceName;

0 commit comments

Comments
 (0)