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:
55
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_Cluster = nullptr;
87 TH1* h_TCTiming = nullptr;
89 TH1* h_TRGTiming = nullptr;
91 TH1* h_Cal_TCTiming = nullptr;
93 TH1* h_Cal_TRGTiming = nullptr;
95 TH1* h_ECL_TriggerBit = nullptr;
97 TH1* h_Cluster_Energy_Sum = nullptr;
98
109
111 TH1* h_n_TChit_part_event_clkgrp[3] = {nullptr};
113 TH1* h_n_TChit_part_clean_clkgrp[3] = {nullptr};
115 TH1* h_n_TChit_part_injHER_clkgrp[3] = {nullptr};
117 TH1* h_n_TChit_part_injLER_clkgrp[3] = {nullptr};
119 TH2* h_nTChit_part_injtime_clkgrp[3] = {nullptr};
120
122 std::vector<int> TCId;
124 std::vector<int> TCHitWin;
126 std::vector<double> TCEnergy;
128 std::vector<double> TCTiming;
130 std::vector<double> RevoFAM;
132 std::vector<double> FineTiming;
134 std::vector<double> RevoTrg;
135
136
147
150 };
151
153}
154
155#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_part_injHER_clkgrp[3]
N of TC Hit / events in the injection BG clean region vs. time since injection per two ETM clocks for...
TH1 * h_n_TChit_clean
N of TC Hit / event vs. time since injection.
TH1 * h_n_TChit_injLER_clkgrp
N of TC Hit / events in the HER injection BG region vs. time since injection per two ETM clocks.
std::vector< double > TCEnergy
Hit TC Energy.
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_clean_clkgrp
N of TC Hit / event vs. time since injection per two ETM clocks.
TH1 * h_Cluster
N of Cluster / event.
virtual void initialize() override
initialize
TH1 * h_n_TChit_part_event_clkgrp[3]
N of TC Hit / event per two ETM clocks.
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.
TH2 * h_nTChit_injtime_clkgrp
N of TC Hit / events in the LER injection BG region vs. time since injection per two ETM clocks.
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
TH1 * h_n_TChit_event_clkgrp
N of TC Hit / event per two ETM clocks.
virtual ~TRGECLDQMModule()
Destrunctor.
TH1 * h_n_TChit_injHER_clkgrp
N of TC Hit / events in the injection BG clean region vs. time since injection per two ETM clocks.
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.
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_n_TChit_part_clean_clkgrp[3]
N of TC Hit / event vs. time since injection per two ETM clocks for each part (FWD,...
TH2 * h_nTChit_part_injtime_clkgrp[3]
N of TC Hit / events in the LER injection BG region vs. time since injection per two ETM clocks for e...
TH1 * h_TCphiId_BR
TCphiId histogram.
TH1 * h_Cal_TCTiming
TC Timing / event.
TH1 * h_TCEnergy
TC Energy.
std::vector< double > FineTiming
Event Timing.
int m_grpclknum
The number of clocks to group the number of TCs of ECLTRG.
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_part_injLER_clkgrp[3]
N of TC Hit / events in the HER injection BG region vs. time since injection per two ETM clocks for e...
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.