Belle II Software development
ARICHHapdInfo.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 <string>
12#include <TGraph.h>
13#include <arich/dbobjects/ARICHHapdChipInfo.h>
14
15namespace Belle2 {
23 class ARICHHapdInfo: public TObject {
24 public:
25
29 enum {c_NumberOfChips = 4,
30 };
31
36 m_pulseHeight(NULL)
37 {
38 for (unsigned i = 0; i < 4; i++) m_HAPDChipInfo[i] = NULL;
39 }
40
41
45 ARICHHapdInfo(const std::string& serial, float qe400, float hv, int gb, float I, ARICHHapdChipInfo** HAPDChipInfo, TGraph* qe,
46 TGraph* pulseHeight): m_serial(serial), m_qe400(qe400), m_highVoltage(hv), m_guardBias(gb), m_current(I), m_quantumEfficiency(qe),
47 m_pulseHeight(pulseHeight)
48 {
49 for (unsigned i = 0; i < 4; i++) m_HAPDChipInfo[i] = HAPDChipInfo[i];
50 }
51
56
61 std::string getSerialNumber() const {return m_serial;}
62
67 void setSerialNumber(const std::string& serial) {m_serial = serial; }
68
73 float getQuantumEfficiency400() const {return m_qe400;}
74
79 void setQuantumEfficiency400(float qe) {m_qe400 = qe;}
80
85 float getHighVoltage() const {return m_highVoltage;}
86
91 void setHighVoltage(float hv) {m_highVoltage = hv;}
92
97 int getGuardBias() const {return m_guardBias;}
98
103 void setGuardBias(int gb) {m_guardBias = gb;}
104
109 float getCurrent() const {return m_current;}
110
115 void setCurrent(float I) {m_current = I;}
116
122 ARICHHapdChipInfo* getHapdChipInfo(unsigned int i) const;
123
129 void setHapdChipInfo(unsigned int i, ARICHHapdChipInfo* chipInfo);
130
136
142
148
153 void setPulseHeightDistribution(TGraph* adc) {m_pulseHeight = adc;}
154
155
156 private:
157 std::string m_serial;
158 float m_qe400;
161 float m_current;
167 };
169} // end namespace Belle2
170
Contains manufacturer data of one of the 4 photo sensors chips.
Contains manufacturer data of the photo sensor - HAPD.
Definition: ARICHHapdInfo.h:23
std::string getSerialNumber() const
Return HAPD Serial Number.
Definition: ARICHHapdInfo.h:61
void setSerialNumber(const std::string &serial)
Set HAPD Serial Number.
Definition: ARICHHapdInfo.h:67
void setHapdChipInfo(unsigned int i, ARICHHapdChipInfo *chipInfo)
Set HapdChipInfo of the chip i.
void setQuantumEfficiency(TGraph *qe)
Set Quantum Efficiency as a function of wavelength.
TGraph * getQuantumEfficiency() const
Return Quantum Efficiency as a function of wavelength.
float getHighVoltage() const
Return operational High Voltage.
Definition: ARICHHapdInfo.h:85
TGraph * getPulseHeightDistribution() const
Return pulse height distribution of one of the HAPD channels.
void setQuantumEfficiency400(float qe)
Set quantum efficiency at 400 nm.
Definition: ARICHHapdInfo.h:79
float m_current
Current (A)
~ARICHHapdInfo()
Destructor.
Definition: ARICHHapdInfo.h:55
void setCurrent(float I)
Set Operational current.
TGraph * m_pulseHeight
Pulse height distribution.
@ c_NumberOfChips
number of HAPD Chips on the sensor
Definition: ARICHHapdInfo.h:29
void setGuardBias(int gb)
Set operational Guard Bias.
std::string m_serial
serial number of the sensor
ARICHHapdInfo(const std::string &serial, float qe400, float hv, int gb, float I, ARICHHapdChipInfo **HAPDChipInfo, TGraph *qe, TGraph *pulseHeight)
Constructor.
Definition: ARICHHapdInfo.h:45
TGraph * m_quantumEfficiency
Quantum Efficiency as a function of wavelength.
ARICHHapdInfo()
Default constructor.
Definition: ARICHHapdInfo.h:35
ClassDef(ARICHHapdInfo, 2)
ClassDef.
void setHighVoltage(float hv)
Set operational High Voltage.
Definition: ARICHHapdInfo.h:91
int getGuardBias() const
Return operational Guard Bias.
Definition: ARICHHapdInfo.h:97
int m_guardBias
guard HV (V)
float m_highVoltage
Operational high voltage.
ARICHHapdChipInfo * getHapdChipInfo(unsigned int i) const
Return HapdChipInfo of the chip i.
float m_qe400
quantum efficiency at 400 nm
ARICHHapdChipInfo * m_HAPDChipInfo[4]
HapdChipInfo id of the i-th chip in the sensor.
float getCurrent() const
Return Operational current.
float getQuantumEfficiency400() const
Return quantum efficiency at 400 nm.
Definition: ARICHHapdInfo.h:73
void setPulseHeightDistribution(TGraph *adc)
Set pulse height distribution of one of the HAPD channels.
Abstract base class for different kinds of events.