Belle II Software  release-05-01-25
TOPCalAsicShift.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2019 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Marko Staric *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <TObject.h>
14 
15 namespace Belle2 {
25  class TOPCalAsicShift: public TObject {
26  public:
27 
31  enum EStatus {
32  c_Default = 0,
34  c_Unusable = 2
35  };
36 
37 
42  {}
43 
50  void setT0(int moduleID, unsigned asic, double T0);
51 
57  void setUnusable(int moduleID, unsigned asic);
58 
65  double getT0(int moduleID, unsigned asic) const;
66 
73  bool isCalibrated(int moduleID, unsigned asic) const;
74 
81  bool isDefault(int moduleID, unsigned asic) const;
82 
89  bool isUnusable(int moduleID, unsigned asic) const;
90 
91  private:
92 
96  enum {c_numModules = 16,
97  c_numAsics = 64
98  };
99 
100  float m_T0[c_numModules][c_numAsics] = {{0}};
105  };
106 
108 } // end namespace Belle2
109 
Belle2::TOPCalAsicShift::isDefault
bool isDefault(int moduleID, unsigned asic) const
Returns calibration status.
Definition: TOPCalAsicShift.cc:77
Belle2::TOPCalAsicShift::m_status
EStatus m_status[c_numModules][c_numAsics]
calibration status
Definition: TOPCalAsicShift.h:109
Belle2::TOPCalAsicShift::getT0
double getT0(int moduleID, unsigned asic) const
Returns T0 of a single asic.
Definition: TOPCalAsicShift.cc:53
Belle2::TOPCalAsicShift::setUnusable
void setUnusable(int moduleID, unsigned asic)
Switches calibration status to unusable to flag badly calibrated constant.
Definition: TOPCalAsicShift.cc:38
Belle2::TOPCalAsicShift::m_T0
float m_T0[c_numModules][c_numAsics]
calibration constants
Definition: TOPCalAsicShift.h:108
Belle2::TOPCalAsicShift::c_numModules
@ c_numModules
number of modules
Definition: TOPCalAsicShift.h:104
Belle2::TOPCalAsicShift::c_Calibrated
@ c_Calibrated
good calibrated value
Definition: TOPCalAsicShift.h:41
Belle2::TOPCalAsicShift::isCalibrated
bool isCalibrated(int moduleID, unsigned asic) const
Returns calibration status.
Definition: TOPCalAsicShift.cc:68
Belle2::TOPCalAsicShift::ClassDef
ClassDef(TOPCalAsicShift, 1)
ClassDef.
Belle2::TOPCalAsicShift::setT0
void setT0(int moduleID, unsigned asic, double T0)
Sets calibration for a single ASIC and switches status to calibrated.
Definition: TOPCalAsicShift.cc:22
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::TOPCalAsicShift::c_numAsics
@ c_numAsics
number of ASIC's per module
Definition: TOPCalAsicShift.h:105
Belle2::TOPCalAsicShift::c_Default
@ c_Default
uncalibrated default value
Definition: TOPCalAsicShift.h:40
Belle2::TOPCalAsicShift::EStatus
EStatus
Calibration status of a constant.
Definition: TOPCalAsicShift.h:39
Belle2::TOPCalAsicShift::isUnusable
bool isUnusable(int moduleID, unsigned asic) const
Returns calibration status.
Definition: TOPCalAsicShift.cc:86
Belle2::TOPCalAsicShift::c_Unusable
@ c_Unusable
bad calibrated value
Definition: TOPCalAsicShift.h:42
Belle2::TOPCalAsicShift::TOPCalAsicShift
TOPCalAsicShift()
Default constructor.
Definition: TOPCalAsicShift.h:49