Belle II Software  release-08-01-08
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 
21 class TH1;
22 class TH2;
23 
24 namespace Belle2 {
33  class TRGECLDQMModule : public HistoModule {
34 
35  public:
39  virtual ~TRGECLDQMModule();
40 
41  public:
43  virtual void initialize() override;
45  virtual void beginRun() override;
47  virtual void event() override;
49  virtual void endRun() override;
51  virtual void terminate() override;
53  virtual void defineHisto() override;
54 
55  private:
57  TH1* h_TCId = nullptr;
59  TH1* h_TCthetaId = nullptr;
61  TH1* h_TCphiId_BWD = nullptr;
63  TH1* h_TCphiId_BR = nullptr;
65  TH1* h_TCphiId_FWD = nullptr;
67  TH1* h_TCEnergy = nullptr;
69  TH1* h_TotalEnergy = nullptr;
71  TH1* h_Narrow_TCEnergy = nullptr;
73  TH1* h_Narrow_TotalEnergy = nullptr;
75  TH1* h_n_TChit_event = nullptr;
77  TH1* h_n_TChit_clean = nullptr;
79  TH1* h_n_TChit_injHER = nullptr;
81  TH1* h_n_TChit_injLER = nullptr;
83  TH2* h_nTChit_injtime = nullptr;
85  TH1* h_n_TChit_event_2clk = nullptr;
87  TH1* h_n_TChit_clean_2clk = nullptr;
89  TH1* h_n_TChit_injHER_2clk = nullptr;
91  TH1* h_n_TChit_injLER_2clk = nullptr;
93  TH2* h_nTChit_injtime_2clk = nullptr;
95  TH1* h_Cluster = nullptr;
97  TH1* h_TCTiming = nullptr;
99  TH1* h_TRGTiming = nullptr;
101  TH1* h_Cal_TCTiming = nullptr;
103  TH1* h_Cal_TRGTiming = nullptr;
105  TH1* h_ECL_TriggerBit = nullptr;
107  TH1* h_Cluster_Energy_Sum = nullptr;
108 
110  std::vector<int> TCId;
112  std::vector<int> TCHitWin;
114  std::vector<double> TCEnergy;
116  std::vector<double> TCTiming;
118  std::vector<double> RevoFAM;
120  std::vector<double> FineTiming;
122  std::vector<double> RevoTrg;
123 
124 
135 
138  };
139 
141 }
142 
143 #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.