Belle II Software  release-08-01-10
EclCovMatrixNtupleModule.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/ECLElementNumbers.h>
13 
14 /* Basf2 headers. */
15 #include <framework/core/Module.h>
16 #include <framework/datastore/StoreArray.h>
17 
18 /* C++ headers. */
19 #include <string>
20 
21 class TTree;
22 class TFile;
23 
24 namespace Belle2 {
30  class ECLDsp;
31  class ECLDigit;
32  class ECLTrig;
33 
36 
37  public:
38 
44 
47 
49  virtual void initialize() override;
50 
52  virtual void terminate() override;
53 
55  virtual void event() override;
56 
57  protected:
59  std::string m_dataOutFileName;
60 
62  std:: string m_dspArrayName;
63 
65  std::string m_digiArrayName;
66 
68  TTree* m_tree{nullptr};
70  TFile* m_rootFile{nullptr};
71 
73  double m_energy{ -1};
75  int m_nevt{ -1};
77  int m_nhits{ -1};
78 
95 
96  private:
99 
102 
105  };
106 
108 } // end namespace Belle2
a module to write ECL waveform and fitted time and amplitude information in a root ntuple
StoreArray< ECLDsp > m_eclDspArray
Store array: ECLDsp.
double m_hitTime[ECLElementNumbers::c_NCrystals]
eclHit Time
int m_theta[ECLElementNumbers::c_NCrystals]
Crystal Theta ID.
std::string m_dataOutFileName
output root file name (given as Module parameter)
virtual void initialize() override
Initializes the module.
virtual void event() override
Method is called for each event.
double m_hitE[ECLElementNumbers::c_NCrystals]
eclHit Energy
TFile * m_rootFile
Root file for saving the output.
double m_DeltaT[ECLElementNumbers::c_NCrystals]
eclTrig Time
virtual void terminate() override
Terminates the module.
std::string m_digiArrayName
eclDigit array name
StoreArray< ECLTrig > m_eclTrigArray
Store array: ECLTrig.
int m_cellID[ECLElementNumbers::c_NCrystals]
Crystal ID.
int m_DspHit[ECLElementNumbers::c_NCrystals][31]
eclDsp sample Array
std::string m_dspArrayName
eclDSPs array name
int m_phi[ECLElementNumbers::c_NCrystals]
Crystal Phi ID.
StoreArray< ECLDigit > m_eclDigiArray
Store array: ECLDigit.
int m_DigiTime[ECLElementNumbers::c_NCrystals]
eclDigit Time
Base class for Modules.
Definition: Module.h:72
Accessor to arrays stored in the data store.
Definition: StoreArray.h:113
const int c_NCrystals
Number of crystals.
Abstract base class for different kinds of events.