Belle II Software  release-08-01-10
eclWaveformCalibCollectorModule.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 
9 #pragma once
10 
11 /* ECL headers. */
12 #include <ecl/dataobjects/ECLDigit.h>
13 #include <ecl/dataobjects/ECLDsp.h>
14 
15 /* Basf2 headers. */
16 #include <framework/core/Module.h>
17 #include <framework/dataobjects/EventMetaData.h>
18 #include <framework/datastore/StoreArray.h>
19 #include <framework/datastore/StoreObjPtr.h>
20 
21 /* ROOT headers. */
22 #include <TFile.h>
23 #include <TTree.h>
24 
25 namespace Belle2 {
33 
34  public:
35 
38 
40  virtual void initialize() override;
41 
43  virtual void terminate() override;
44 
46  virtual void event() override;
47 
48  private:
49 
52  std::string m_dataOutFileName;
53  TTree* tree{nullptr};
54  TFile* m_rootFile{nullptr};
60  std::vector<float> m_ADCtoEnergy;
70  int m_CellID;
71  int m_runNum;
72  int m_expNum;
73  float m_OnlineE;
74  float m_OfflineE;
75  float m_OfflineHadE;
76  float m_Baseline;
77  float m_BaselineRMS;
78  float m_calibConst;
79  float m_Chi2;
80  float m_Chi2Save0;
81  float m_Chi2Save1;
82  float m_Chi2Save2;
83  int m_FitType;
84  int m_ADC0;
85  int m_ADC1;
86  int m_ADC2;
87  int m_ADC3;
88  int m_ADC4;
89  int m_ADC5;
90  int m_ADC6;
91  int m_ADC7;
92  int m_ADC8;
93  int m_ADC9;
94  int m_ADC10;
95  int m_ADC11;
96  int m_ADC12;
97  int m_ADC13;
98  int m_ADC14;
99  int m_ADC15;
100  int m_ADC16;
101  int m_ADC17;
102  int m_ADC18;
103  int m_ADC19;
104  int m_ADC20;
105  int m_ADC21;
106  int m_ADC22;
107  int m_ADC23;
108  int m_ADC24;
109  int m_ADC25;
110  int m_ADC26;
111  int m_ADC27;
112  int m_ADC28;
113  int m_ADC29;
114  int m_ADC30;
116  };
118 }
Base class for Modules.
Definition: Module.h:72
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
Store information needed to calculate ECL waveform template shapes.
int m_ADC8
To read ntuple branch, ith ADC value of waveform >
float m_OnlineE
To read ntuple branch, waveform energy measured online by FPGA >
int m_ADC9
To read ntuple branch, ith ADC value of waveform >
int m_selectCellID
Root used to select specific CellID to save.
int m_ADC3
To read ntuple branch, ith ADC value of waveform >
float m_Chi2
To read ntuple branch, offline fit chi2 >
int m_ADC13
To read ntuple branch, ith ADC value of waveform >
int m_ADC21
To read ntuple branch, ith ADC value of waveform >
int m_ADC25
To read ntuple branch, ith ADC value of waveform >
float m_Chi2Save0
To read ntuple branch, offline fit chi2 for fit type 0 >
int m_ADC27
To read ntuple branch, ith ADC value of waveform >
float m_Baseline
To read ntuple branch, baseline of waveform >
int m_ADC18
To read ntuple branch, ith ADC value of waveform >
std::string m_dataOutFileName
Root file name for saving the output.
int m_ADC5
To read ntuple branch, ith ADC value of waveform >
int m_ADC20
To read ntuple branch, ith ADC value of waveform >
virtual void initialize() override
Initializes the module.
float m_OfflineHadE
To read ntuple branch, waveform hadron energy measure offline with multi-template fit >
virtual void event() override
Method is called for each event.
double m_LowEnergyThresholdGeV
Low Energy Threshold in GeV.
int m_ADC2
To read ntuple branch, ith ADC value of waveform >
TFile * m_rootFile
Root file for saving the output.
int m_ADC10
To read ntuple branch, ith ADC value of waveform >
eclWaveformCalibCollectorModule()
Constructor: Sets the description, the properties and the parameters of the module.
int m_ADC14
To read ntuple branch, ith ADC value of waveform >
int m_ADC28
To read ntuple branch, ith ADC value of waveform >
StoreArray< ECLDsp > m_eclDSPs
StoreArray ECLDsp.
float m_calibConst
To read ntuple branch, calibration from ADC to GeV >
int m_expNum
To read ntuple branch, waveform ECL crystal cell ID >
StoreArray< ECLDigit > m_eclDigits
StoreArray ECLDigit.
int m_ADC15
To read ntuple branch, ith ADC value of waveform >
int m_ADC22
To read ntuple branch, ith ADC value of waveform >
int m_ADC7
To read ntuple branch, ith ADC value of waveform >
int m_ADC26
To read ntuple branch, ith ADC value of waveform >
int m_ADC30
To read ntuple branch, ith ADC value of waveform >
float m_OfflineE
To read ntuple branch, waveform energy measure offline with multi-template fit >
bool m_includeWaveforms
Flag to save ADC information.
int m_ADC0
To read ntuple branch, ith ADC value of waveform >
int m_ADC29
To read ntuple branch, ith ADC value of waveform >
int m_ADC1
To read ntuple branch, ith ADC value of waveform >
int m_ADC11
To read ntuple branch, ith ADC value of waveform >
int m_ADC24
To read ntuple branch, ith ADC value of waveform >
TTree * tree
Root tree for saving the output.
int m_CellID
To read ntuple branch, waveform ECL crystal cell ID >
int m_ADC16
To read ntuple branch, ith ADC value of waveform >
int m_ADC4
To read ntuple branch, ith ADC value of waveform >
float m_BaselineRMS
To read ntuple branch, RMS squared of waveform baseline >
int m_ADC12
To read ntuple branch, ith ADC value of waveform >
float m_Chi2Save2
To read ntuple branch, offline fit chi2 for fit type 2 >
int m_ADC17
To read ntuple branch, ith ADC value of waveform >
StoreObjPtr< EventMetaData > m_EventMetaData
Event metadata info.
float m_Chi2Save1
To read ntuple branch, offline fit chi2 for fit type 1 >
int m_FitType
To read ntuple branch, offline fit type with best chi2 >
int m_ADC6
To read ntuple branch, ith ADC value of waveform >
int m_ADC23
To read ntuple branch, ith ADC value of waveform >
std::vector< float > m_ADCtoEnergy
calibration vector from adc to energy
double m_HighEnergyThresholdGeV
High Energy Threshold in GeV.
int m_runNum
To read ntuple branch, waveform ECL crystal cell ID >
int m_ADC19
To read ntuple branch, ith ADC value of waveform >
Abstract base class for different kinds of events.