QualityControl  1.5.1
O2 Data Quality Control Framework
PhysicsTaskPreclusters.h
Go to the documentation of this file.
1 
8 #ifndef QC_MODULE_MUONCHAMBERS_PHYSICSTASKPRECLUSTERS_H
9 #define QC_MODULE_MUONCHAMBERS_PHYSICSTASKPRECLUSTERS_H
10 
11 #include <vector>
12 
13 #include <TH2.h>
15 #include "MCH/GlobalHistogram.h"
16 #include "MCHBase/Digit.h"
17 #include "MCHBase/PreCluster.h"
18 
19 namespace o2
20 {
21 namespace quality_control_modules
22 {
23 namespace muonchambers
24 {
25 
29 class PhysicsTaskPreclusters /*final*/ : public o2::quality_control::core::TaskInterface // todo add back the "final" when doxygen is fixed
30 {
31  public:
35  ~PhysicsTaskPreclusters() override;
36 
37  // Definition of the methods for the template method pattern
38  void initialize(o2::framework::InitContext& ctx) override;
39  void startOfActivity(o2::quality_control::core::Activity& activity) override;
40  void startOfCycle() override;
41  void monitorData(o2::framework::ProcessingContext& ctx) override;
42  void endOfCycle() override;
43  void endOfActivity(o2::quality_control::core::Activity& activity) override;
44  void reset() override;
45 
46  bool plotPrecluster(const o2::mch::PreCluster& preCluster, gsl::span<const o2::mch::Digit> digits);
47  void printPreclusters(gsl::span<const o2::mch::PreCluster> preClusters, gsl::span<const o2::mch::Digit> digits);
48 
49  private:
50  double MeanPseudoeffDE[1100];
51  double MeanPseudoeffDECycle[1100];
52  // Arrays needed to compute the Pseudo-efficiency on the elapsed cycle
53  double LastPreclBNBDE[1100];
54  double NewPreclBNBDE[1100];
55  double LastPreclNumDE[1100];
56  double NewPreclNumDE[1100];
57 
58  std::vector<std::unique_ptr<mch::Digit>> digits;
59 
60  // TH1 of Mean Pseudo-efficiency on DEs, integrated or only on the elapsed cycle - Sent for Trending
61  TH1F* mMeanPseudoeffPerDE;
62  TH1F* mMeanPseudoeffPerDECycle;
63 
64  std::map<int, TH1F*> mHistogramClchgDE;
65  std::map<int, TH1F*> mHistogramClchgDEOnCycle;
66  std::map<int, TH1F*> mHistogramClsizeDE;
67 
68  std::map<int, TH2F*> mHistogramPreclustersXY[4];
69  std::map<int, TH2F*> mHistogramPseudoeffXY[3];
70 
71  GlobalHistogram* mHistogramPseudoeff[3];
72 };
73 
74 } // namespace muonchambers
75 } // namespace quality_control_modules
76 } // namespace o2
77 
78 #endif // QC_MODULE_MUONCHAMBERS_PHYSICSDATAPROCESSOR_H
Quality Control Task for the analysis of MCH physics data.
Definition: PhysicsTaskPreclusters.h:29
Skeleton of a QC task.
Definition: TaskInterface.h:53
~PhysicsTaskPreclusters() override
Destructor.
Definition: PhysicsTaskPreclusters.cxx:41
Dummy class that should be removed when there is the official one. This corresponds to a Run1/2 "run"...
Definition: Activity.h:25
PhysicsTaskPreclusters()
Constructor.
Definition: PhysicsTaskPreclusters.cxx:39