Belle II Software  release-05-01-25
ECLDigitWaveformParameters.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2018 - Belle II Collaboration *
4  * *
5  * DB object to store photon, hadron and diode shape parameters *
6  * per ECL crystal. *
7  * *
8  * Author: The Belle II Collaboration *
9  * Contributors: Savino Longo *
10  * *
11  * This software is provided "as is" without any warranty. *
12  **************************************************************************/
13 
14 #pragma once
15 
16 #include <TObject.h>
17 
18 namespace Belle2 {
25  class ECLDigitWaveformParameters: public TObject {
26  public:
27 
32  {
33 
34  for (int i = 0; i < 11; i++) {
35  for (int j = 0; j < 8736; j++) {
36  m_PhotonPars[j][i] = 0.;
37  m_HadronPars[j][i] = 0.;
38  m_DiodePars[j][i] = 0.;
39  }
40  }
41 
42  };
43 
45  const float* getPhotonParameters(int cellID) const {return m_PhotonPars[cellID - 1];};
46 
48  const float* getHadronParameters(int cellID) const {return m_HadronPars[cellID - 1];};
49 
51  const float* getDiodeParameters(int cellID) const {return m_DiodePars[cellID - 1];};
52 
54  void setTemplateParameters(int cellID, const float photonInput[11],
55  const float hadronInput[11],
56  const float diodeInput[11])
57  {
58  for (int i = 0; i < 11; i++) {
59  m_PhotonPars[cellID - 1][i] = photonInput[i];
60  m_HadronPars[cellID - 1][i] = hadronInput[i];
61  m_DiodePars[cellID - 1][i] = diodeInput[i];
62  }
63  };
64 
69 
70  private:
71  float m_PhotonPars[8736][11];
72  float m_HadronPars[8736][11];
73  float m_DiodePars[8736][11];
75  //2 convert vector of double to array of floats (SL)
76  //1 Initial Version
78  };
80 } // end namespace Belle2
Belle2::ECLDigitWaveformParameters::m_PhotonPars
float m_PhotonPars[8736][11]
photon parameters all crystals
Definition: ECLDigitWaveformParameters.h:79
Belle2::ECLDigitWaveformParameters::m_DiodePars
float m_DiodePars[8736][11]
diode parameters all crystals
Definition: ECLDigitWaveformParameters.h:84
Belle2::ECLDigitWaveformParameters::~ECLDigitWaveformParameters
~ECLDigitWaveformParameters()
Destructor.
Definition: ECLDigitWaveformParameters.h:79
Belle2::ECLDigitWaveformParameters::getHadronParameters
const float * getHadronParameters(int cellID) const
Get array of hadron template parameters.
Definition: ECLDigitWaveformParameters.h:59
Belle2::ECLDigitWaveformParameters::setTemplateParameters
void setTemplateParameters(int cellID, const float photonInput[11], const float hadronInput[11], const float diodeInput[11])
Set photon, hadron and diode template parameters for crystal.
Definition: ECLDigitWaveformParameters.h:65
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::ECLDigitWaveformParameters::getDiodeParameters
const float * getDiodeParameters(int cellID) const
Get array of diode template parameters.
Definition: ECLDigitWaveformParameters.h:62
Belle2::ECLDigitWaveformParameters::ECLDigitWaveformParameters
ECLDigitWaveformParameters()
Default constructor.
Definition: ECLDigitWaveformParameters.h:42
Belle2::ECLDigitWaveformParameters::getPhotonParameters
const float * getPhotonParameters(int cellID) const
Get array of photon template parameters.
Definition: ECLDigitWaveformParameters.h:56
Belle2::ECLDigitWaveformParameters::ClassDef
ClassDef(ECLDigitWaveformParameters, 2)
ClassDef.
Belle2::ECLDigitWaveformParameters::m_HadronPars
float m_HadronPars[8736][11]
hadron parameters all crystals
Definition: ECLDigitWaveformParameters.h:83