Belle II Software  release-05-01-25
ARICHModulesInfo.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Luka Santelj *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <vector>
14 #include <TObject.h>
15 
16 // number of HAPDs in ARICH
17 #define N_HAPDS 420
18 
19 //number of channels per HAPD
20 #define N_CHANNELS 144
21 
22 namespace Belle2 {
28 
35  class ARICHModulesInfo : public TObject {
36 
37  public:
38 
41 
48  double getChannelQE(unsigned modId, unsigned chNo) const;
49 
56  void setChannelQE(unsigned modId, unsigned chId, double qe);
57 
64  void addModule(unsigned modId, std::vector<float>& qeList, bool active);
65 
71  bool isInstalled(unsigned modId) const;
72 
78  bool isActive(unsigned modId) const;
79 
83  void print() const;
84 
85  private:
86 
87  std::vector<uint8_t> m_ChannelQE;
89  bool m_active[N_HAPDS];
90  bool m_installed[N_HAPDS];
94  };
95 
97 } // namespace
Belle2::ARICHModulesInfo::setChannelQE
void setChannelQE(unsigned modId, unsigned chId, double qe)
Set channel quantum efficiency.
Definition: ARICHModulesInfo.cc:36
Belle2::ARICHModulesInfo::m_active
bool m_active[N_HAPDS]
array of active HAPDs
Definition: ARICHModulesInfo.h:89
Belle2::ARICHModulesInfo::isActive
bool isActive(unsigned modId) const
Check if module is active.
Definition: ARICHModulesInfo.cc:67
Belle2::ARICHModulesInfo::print
void print() const
Dump data.
Definition: ARICHModulesInfo.cc:74
Belle2::ARICHModulesInfo
The Class for information on HAPD modules installed in ARICH.
Definition: ARICHModulesInfo.h:35
Belle2::ARICHModulesInfo::m_installed
bool m_installed[N_HAPDS]
array of installed HAPDs
Definition: ARICHModulesInfo.h:90
Belle2::ARICHModulesInfo::addModule
void addModule(unsigned modId, std::vector< float > &qeList, bool active)
Add installed module.
Definition: ARICHModulesInfo.cc:44
Belle2::ARICHModulesInfo::ARICHModulesInfo
ARICHModulesInfo()
Default constructor.
Definition: ARICHModulesInfo.cc:20
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::ARICHModulesInfo::getChannelQE
double getChannelQE(unsigned modId, unsigned chNo) const
Get channel quantum efficiency.
Definition: ARICHModulesInfo.cc:27
Belle2::ARICHModulesInfo::m_ChannelQE
std::vector< uint8_t > m_ChannelQE
Channel QE at 400nm.
Definition: ARICHModulesInfo.h:87
Belle2::ARICHModulesInfo::ClassDef
ClassDef(ARICHModulesInfo, 1)
ClassDef, must be the last term before the closing {}.
Belle2::ARICHModulesInfo::isInstalled
bool isInstalled(unsigned modId) const
Check if module is installed.
Definition: ARICHModulesInfo.cc:60