Belle II Software  release-06-02-00
ECLCrystalCalib.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 #include <TObject.h>
11 #include <framework/logging/Logger.h>
12 
13 namespace Belle2 {
20  class ECLCrystalCalib: public TObject {
21 
22  public:
23 
26 
28  const std::vector<float>& getCalibVector() const {return m_CalibConst;};
29 
31  const std::vector<float>& getCalibUncVector() const {return m_CalibConstUnc;};
32 
34  void setCalibVector(const std::vector<float>& CalibConst, const std::vector<float>& CalibConstUnc)
35  {
36  if (CalibConst.size() != 8736 || CalibConstUnc.size() != 8736) {B2FATAL("ECLCrystalCalib: wrong size vector uploaded, " << CalibConst.size() << " " << CalibConstUnc.size() << " instead of 8736");}
37  m_CalibConst = CalibConst;
38  m_CalibConstUnc = CalibConstUnc;
39  };
40 
41  private:
42  std::vector<float> m_CalibConst;
43  std::vector<float> m_CalibConstUnc;
46  };
48 }
General DB object to store one calibration number per ECL crystal.
ECLCrystalCalib()
Constructor.
const std::vector< float > & getCalibUncVector() const
Get vector of uncertainties on calibration constants.
const std::vector< float > & getCalibVector() const
Get vector of calibration constants.
std::vector< float > m_CalibConst
Calibration constants.
ClassDef(ECLCrystalCalib, 1)
ClassDef.
void setCalibVector(const std::vector< float > &CalibConst, const std::vector< float > &CalibConstUnc)
Set vector of constants with uncertainties.
std::vector< float > m_CalibConstUnc
Uncertainty on constants.
Abstract base class for different kinds of events.