Belle II Software development
TRGECLDQMModule.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#ifndef TRCECLDQMMODULE_h
9#define TRCECLDQMMODULE_h
10
11#include <framework/core/HistoModule.h>
12#include "trg/ecl/dataobjects/TRGECLUnpackerStore.h"
13#include "trg/ecl/dataobjects/TRGECLUnpackerEvtStore.h"
14#include "trg/ecl/dataobjects/TRGECLUnpackerSumStore.h"
15#include "trg/ecl/dataobjects/TRGECLCluster.h"
16#include <framework/datastore/StoreArray.h>
17#include <framework/database/DBObjPtr.h>
18#include <framework/dbobjects/HardwareClockSettings.h>
19#include <mdst/dataobjects/EventLevelTriggerTimeInfo.h>
20
21class TH1;
22class TH2;
23
24namespace Belle2 {
31
32 public:
36 virtual ~TRGECLDQMModule();
37
38 public:
40 virtual void initialize() override;
42 virtual void beginRun() override;
44 virtual void event() override;
46 virtual void endRun() override;
48 virtual void terminate() override;
50 virtual void defineHisto() override;
51
52 private:
54 TH1* h_TCId = nullptr;
56 TH1* h_TCthetaId = nullptr;
58 TH1* h_TCphiId_BWD = nullptr;
60 TH1* h_TCphiId_BR = nullptr;
62 TH1* h_TCphiId_FWD = nullptr;
64 TH1* h_TCEnergy = nullptr;
66 TH1* h_TotalEnergy = nullptr;
68 TH1* h_Narrow_TCEnergy = nullptr;
70 TH1* h_Narrow_TotalEnergy = nullptr;
72 TH1* h_n_TChit_event = nullptr;
74 TH1* h_n_TChit_clean = nullptr;
76 TH1* h_n_TChit_injHER = nullptr;
78 TH1* h_n_TChit_injLER = nullptr;
80 TH2* h_nTChit_injtime = nullptr;
82 TH1* h_n_TChit_event_2clk = nullptr;
84 TH1* h_n_TChit_clean_2clk = nullptr;
86 TH1* h_n_TChit_injHER_2clk = nullptr;
88 TH1* h_n_TChit_injLER_2clk = nullptr;
90 TH2* h_nTChit_injtime_2clk = nullptr;
92 TH1* h_Cluster = nullptr;
94 TH1* h_TCTiming = nullptr;
96 TH1* h_TRGTiming = nullptr;
98 TH1* h_Cal_TCTiming = nullptr;
100 TH1* h_Cal_TRGTiming = nullptr;
102 TH1* h_ECL_TriggerBit = nullptr;
104 TH1* h_Cluster_Energy_Sum = nullptr;
105
107 std::vector<int> TCId;
109 std::vector<int> TCHitWin;
111 std::vector<double> TCEnergy;
113 std::vector<double> TCTiming;
115 std::vector<double> RevoFAM;
117 std::vector<double> FineTiming;
119 std::vector<double> RevoTrg;
120
121
132
135 };
136
138}
139
140#endif
Class for accessing objects in the database.
Definition: DBObjPtr.h:21
HistoModule.h is supposed to be used instead of Module.h for the modules with histogram definitions t...
Definition: HistoModule.h:29
Accessor to arrays stored in the data store.
Definition: StoreArray.h:113
Type-safe access to single objects in the data store.
Definition: StoreObjPtr.h:96
TH1 * h_n_TChit_clean
N of TC Hit / event vs. time since injection.
std::vector< double > TCEnergy
Hit TC Energy.
TH1 * h_n_TChit_clean_2clk
N of TC Hit / event vs. time since injection per two ETM clocks.
TH1 * h_TCId
TCId histogram.
TH1 * h_TCphiId_BWD
TCphiId histogram.
TH1 * h_Narrow_TotalEnergy
Total Energy on narrow range.
TH1 * h_TotalEnergy
Total Energy.
TH1 * h_n_TChit_event_2clk
N of TC Hit / event per two ETM clocks.
TH1 * h_Cluster
N of Cluster / event.
virtual void initialize() override
initialize
StoreArray< TRGECLUnpackerStore > trgeclHitArray
Trg ECL Unpakcer TC output.
virtual void event() override
Event.
TH1 * h_Cal_TRGTiming
Event Timing / event.
TH1 * h_n_TChit_injHER
N of TC Hit / events in the injection BG clean region vs. time since injection.
TH1 * h_Narrow_TCEnergy
TC Energy histogram on narrow range.
virtual void endRun() override
End Run.
DBObjPtr< HardwareClockSettings > m_hwclkdb
DB pointerto access the hardware clock information.
TH1 * h_Cluster_Energy_Sum
Energy sum of 2 Top energetic clusters when 3D bhabnha bit on.
virtual void terminate() override
terminate
virtual ~TRGECLDQMModule()
Destrunctor.
std::vector< int > TCHitWin
Hit TCHitWin.
TH1 * h_TCphiId_FWD
TCphiId histogram.
TH1 * h_TRGTiming
Event Timing / event.
TH2 * h_nTChit_injtime
N of TC Hit / events in the LER injection BG region vs. time since injection.
TH1 * h_ECL_TriggerBit
ECL Trigger Bit.
std::vector< double > TCTiming
Hit TC Timing.
TH1 * h_n_TChit_injLER_2clk
N of TC Hit / events in the HER injection BG region vs. time since injection per two ETM clocks.
TH1 * h_n_TChit_injHER_2clk
N of TC Hit / events in the injection BG clean region vs. time since injection per two ETM clocks.
StoreArray< TRGECLUnpackerEvtStore > trgeclEvtArray
Trg ECL Unpakcer Event output.
TH1 * h_TCthetaId
TCthetaId histogram.
virtual void beginRun() override
begin Run
StoreArray< TRGECLUnpackerSumStore > trgeclSumArray
Trg Ecl Unpacker Summary output.
TH1 * h_TCphiId_BR
TCphiId histogram.
TH2 * h_nTChit_injtime_2clk
N of TC Hit / events in the LER injection BG region vs. time since injection per two ETM clocks.
TH1 * h_Cal_TCTiming
TC Timing / event.
TH1 * h_TCEnergy
TC Energy.
std::vector< double > FineTiming
Event Timing.
std::vector< double > RevoTrg
GDL Revolution Clk.
TH1 * h_TCTiming
TC Timing / event.
TH1 * h_n_TChit_event
N of TC Hit / event.
std::vector< double > RevoFAM
FAM Revolution Clk.
TH1 * h_n_TChit_injLER
N of TC Hit / events in the HER injection BG region vs. time since injection.
StoreArray< TRGECLCluster > trgeclCluster
Trg ECL Cluster output.
StoreObjPtr< EventLevelTriggerTimeInfo > m_trgTime
Array to access the FTSW information.
std::vector< int > TCId
Hit TCId.
virtual void defineHisto() override
Define Histogram.
Abstract base class for different kinds of events.