Belle II Software prerelease-11-00-00c
DQMHistAnalysisHLTModule.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8#pragma once
9
10#include <dqm/core/DQMHistAnalysis.h>
11
12#include <TCanvas.h>
13
14#include <map>
15#include <string>
16
17namespace Belle2 {
29 public:
30
35
39 void initialize() override final;
40
44 void beginRun() override final;
45
49 void event() override final;
50
54 void terminate() override final;
55
56 private:
58 std::string m_bhabhaName = "accept_bhabha";
60 std::map<std::string, std::string> m_columnMapping;
62 std::vector<std::string> m_l1Histograms;
64 std::vector<std::string> m_retentionPerUnit;
66 std::pair<TCanvas*, TH1F*> m_hEfficiency = {nullptr, nullptr};
68 std::pair<TCanvas*, TH1F*> m_hEfficiencyTotal = {nullptr, nullptr};
70 std::pair<TCanvas*, TH1F*> m_hCrossSection = {nullptr, nullptr};
72 std::pair<TCanvas*, TH1F*> m_hRatios = {nullptr, nullptr};
74 std::map<std::string, std::pair<TCanvas*, TH1F*>> m_hl1Ratios;
76 std::map<std::string, std::pair<TCanvas*, TH1F*>> m_hRetentionPerUnit;
78 std::pair<TCanvas*, TH1F*> m_hMeanTime = {nullptr, nullptr};
80 std::pair<TCanvas*, TH1D*> m_hErrorFlagFraction = {nullptr, nullptr};
82 std::pair<TCanvas*, TH1D*> m_hFilteredFractionPerUnit = {nullptr, nullptr};
84 std::pair<TCanvas*, TH1F*> m_hMeanBudgetTimePerUnit = {nullptr, nullptr};
86 std::pair<TCanvas*, TH1F*> m_hMeanProcessingTimePerUnit = {nullptr, nullptr};
88 std::pair<TCanvas*, TH1F*> m_hMeanMemory = {nullptr, nullptr};
89 };
90
91}
void initialize() override final
Initializer.
std::string m_bhabhaName
name of the bhabha trigger
std::pair< TCanvas *, TH1F * > m_hCrossSection
Histogram with final cross sections.
std::map< std::string, std::pair< TCanvas *, TH1F * > > m_hRetentionPerUnit
Histogram with retention rate per unit of some hlt filter lines.
std::map< std::string, std::pair< TCanvas *, TH1F * > > m_hl1Ratios
Histogram with hlt&l1 ratios to l1 numbers.
std::vector< std::string > m_retentionPerUnit
Which HLT filter lines to use for calculation retention rate per unit.
void terminate() override final
This method is called at the end of the event processing.
std::pair< TCanvas *, TH1D * > m_hFilteredFractionPerUnit
Histogram with fraction of events filtered per unit.
void event() override final
This method is called for each event.
std::vector< std::string > m_l1Histograms
Which l1 triggers to show.
std::pair< TCanvas *, TH1F * > m_hMeanBudgetTimePerUnit
Histogram with mean budget time per unit per process.
std::pair< TCanvas *, TH1F * > m_hMeanProcessingTimePerUnit
Histogram with mean processing time per unit per process.
std::pair< TCanvas *, TH1F * > m_hMeanMemory
Histogram with mean memory change per process.
std::pair< TCanvas *, TH1D * > m_hErrorFlagFraction
Histogram with fraction of events with error flags.
std::pair< TCanvas *, TH1F * > m_hRatios
Histogram with final ratios to bhabha.
std::pair< TCanvas *, TH1F * > m_hEfficiency
Histogram with final efficiencies to HLT.
std::pair< TCanvas *, TH1F * > m_hEfficiencyTotal
Histogram with final efficiencies to all events.
void beginRun() override final
Called when entering a new run.
std::map< std::string, std::string > m_columnMapping
Which columns to use.
std::pair< TCanvas *, TH1F * > m_hMeanTime
Histogram with mean processing time per process.
DQMHistAnalysisModule()
Constructor / Destructor.
Abstract base class for different kinds of events.