Belle II Software  release-05-02-19
ARICHHapdChipInfo.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2015 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Rok Pestotnik, Manca Mrvar *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 #include <TObject.h>
13 #include <TH2F.h>
14 #include <TGraph.h>
15 #include <vector>
16 
17 namespace Belle2 {
27  class ARICHHapdChipInfo: public TObject {
28  public:
29 
36 
40  explicit ARICHHapdChipInfo(const std::string& serial): m_serial(serial), m_chip(""), m_biasVoltage(0), m_gain(0),
44 
49 
53  std::string getHapdSerial() const {return m_serial; };
54 
58  void setHapdSerial(const std::string& serial) {m_serial = serial; }
59 
63  std::string getChipLabel() const {return m_chip; };
64 
68  void setChipLabel(const std::string& chip) {m_chip = chip; }
69 
74  int getBiasVoltage() const {return m_biasVoltage;}
75 
80  void setBiasVoltage(int voltage) { m_biasVoltage = voltage; }
81 
86  int getGain() const {return m_gain;}
87 
92  void setGain(int gain) { m_gain = gain;}
93 
98  TGraph* getLeakCurrent() const {return m_leakCurrent;}
99 
104  void setLeakCurrent(TGraph* current) {m_leakCurrent = current;}
105 
110  TGraph* getBombardmentGain() const {return m_bombardmentGain;}
111 
116  void setBombardmentGain(TGraph* gain) {m_bombardmentGain = gain;}
117 
122  TGraph* getBombardmentCurrent(unsigned int i) const;
123 
128  void setBombardmentCurrent(std::vector<TGraph*> bcurrent);
129 
134  TGraph* getAvalancheGain() const {return m_avalancheGain;}
135 
140  void setAvalancheGain(TGraph* gain) {m_avalancheGain = gain;}
141 
142 
147  TGraph* getAvalancheCurrent(unsigned int i) const;
148 
153  void setAvalancheCurrent(std::vector<TGraph*> acurrent);
154 
159  TH2F* getBiasVoltage2D() const {return m_biasVoltage2D;}
160 
165  void setBiasVoltage2D(TH2F* h2d) { m_biasVoltage2D = h2d;}
166 
171  TH2F* getBiasCurrent2D() const {return m_biasCurrent2D;}
172 
177  void setBiasCurrent2D(TH2F* h2d) { m_biasCurrent2D = h2d;}
178 
183  int getChannelNumber() const {return m_channelId;}
184 
189  void setChannelNumber(int channel) {m_channelId = channel;}
190 
196  int getCutChannel(unsigned int i) const;
197 
202  void appendCutChannel(int channel) {m_cutChannel.push_back(channel); }
203 
208  void setCutChannel(const std::vector<int>& channels) {m_cutChannel = channels; }
209 
214  int getCutChannelsSize() const {return m_cutChannel.size();}
215 
221  int getBadChannel(unsigned int i) const;
222 
227  void appendBadChannel(int ichannel) { m_badChannel.push_back(ichannel); }
228 
233  void setBadChannel(const std::vector<int>& channels) {m_badChannel = channels; }
234 
239  int getBadChannelsSize() const {return m_badChannel.size();}
240 
241  private:
242  std::string m_serial;
243  std::string m_chip;
244  int m_biasVoltage;
245  int m_gain;
246  TGraph* m_leakCurrent;
248  std::vector<TGraph*> m_bombardmentCurrent;
249  TGraph* m_avalancheGain;
250  std::vector<TGraph*> m_avalancheCurrent;
254  std::vector<int> m_cutChannel;
255  std::vector<int> m_badChannel;
259  };
261 } // end namespace Belle2
Belle2::ARICHHapdChipInfo::getBadChannel
int getBadChannel(unsigned int i) const
Return a channel number from the list of cut channels.
Definition: ARICHHapdChipInfo.cc:49
Belle2::ARICHHapdChipInfo::getBiasVoltage
int getBiasVoltage() const
Return Chip Bias Voltage.
Definition: ARICHHapdChipInfo.h:82
Belle2::ARICHHapdChipInfo::m_chip
std::string m_chip
chip label
Definition: ARICHHapdChipInfo.h:251
Belle2::ARICHHapdChipInfo
Contains manufacturer data of one of the 4 photo sensors chips.
Definition: ARICHHapdChipInfo.h:35
Belle2::ARICHHapdChipInfo::m_channelId
int m_channelId
Channel Number for the Bombardment and Avalanche measurements information.
Definition: ARICHHapdChipInfo.h:261
Belle2::ARICHHapdChipInfo::setHapdSerial
void setHapdSerial(const std::string &serial)
Set Hapd Serial number.
Definition: ARICHHapdChipInfo.h:66
Belle2::ARICHHapdChipInfo::m_cutChannel
std::vector< int > m_cutChannel
List of cut channels on the HAPD chip.
Definition: ARICHHapdChipInfo.h:262
Belle2::ARICHHapdChipInfo::setBiasVoltage
void setBiasVoltage(int voltage)
set Chip Bias Voltage
Definition: ARICHHapdChipInfo.h:88
Belle2::ARICHHapdChipInfo::m_bombardmentGain
TGraph * m_bombardmentGain
Bombardment Gain as a function of high voltage.
Definition: ARICHHapdChipInfo.h:255
Belle2::ARICHHapdChipInfo::m_badChannel
std::vector< int > m_badChannel
List of bad (cut and dead channels) on the HAPD chip.
Definition: ARICHHapdChipInfo.h:263
Belle2::ARICHHapdChipInfo::setGain
void setGain(int gain)
set Chip Gain at Operational Voltage
Definition: ARICHHapdChipInfo.h:100
Belle2::ARICHHapdChipInfo::getAvalancheCurrent
TGraph * getAvalancheCurrent(unsigned int i) const
Return Avalanche Current as a function of bias voltage.
Definition: ARICHHapdChipInfo.cc:29
Belle2::ARICHHapdChipInfo::setBombardmentCurrent
void setBombardmentCurrent(std::vector< TGraph * > bcurrent)
set Bombardment Current as a function of high voltage
Definition: ARICHHapdChipInfo.cc:23
Belle2::ARICHHapdChipInfo::setChipLabel
void setChipLabel(const std::string &chip)
Set Chip label.
Definition: ARICHHapdChipInfo.h:76
Belle2::ARICHHapdChipInfo::getHapdSerial
std::string getHapdSerial() const
Return Hapd Serial number.
Definition: ARICHHapdChipInfo.h:61
Belle2::ARICHHapdChipInfo::m_serial
std::string m_serial
serial number of the sensor
Definition: ARICHHapdChipInfo.h:250
Belle2::ARICHHapdChipInfo::m_avalancheGain
TGraph * m_avalancheGain
Avalanche Gain as a function of bias voltage.
Definition: ARICHHapdChipInfo.h:257
Belle2::ARICHHapdChipInfo::ARICHHapdChipInfo
ARICHHapdChipInfo()
Default constructor.
Definition: ARICHHapdChipInfo.h:41
Belle2::ARICHHapdChipInfo::getBombardmentGain
TGraph * getBombardmentGain() const
Return Bombardment Gain as a function of high voltage.
Definition: ARICHHapdChipInfo.h:118
Belle2::ARICHHapdChipInfo::setAvalancheCurrent
void setAvalancheCurrent(std::vector< TGraph * > acurrent)
set Avalanche Current as a function of bias voltage
Definition: ARICHHapdChipInfo.cc:36
Belle2::ARICHHapdChipInfo::getBadChannelsSize
int getBadChannelsSize() const
Return size of the list of cut channels.
Definition: ARICHHapdChipInfo.h:247
Belle2::ARICHHapdChipInfo::getBombardmentCurrent
TGraph * getBombardmentCurrent(unsigned int i) const
Return Bombardment Current as a function of high voltage.
Definition: ARICHHapdChipInfo.cc:16
Belle2::ARICHHapdChipInfo::m_avalancheCurrent
std::vector< TGraph * > m_avalancheCurrent
Avalanche Current as a function of bias voltage.
Definition: ARICHHapdChipInfo.h:258
Belle2::ARICHHapdChipInfo::appendCutChannel
void appendCutChannel(int channel)
Add a channel number to the list of cut channels.
Definition: ARICHHapdChipInfo.h:210
Belle2::ARICHHapdChipInfo::setChannelNumber
void setChannelNumber(int channel)
Set Channel Number for the Bombardment and Avalanche measurements information.
Definition: ARICHHapdChipInfo.h:197
Belle2::ARICHHapdChipInfo::getCutChannel
int getCutChannel(unsigned int i) const
Return a channel number from the list of cut channels.
Definition: ARICHHapdChipInfo.cc:42
Belle2::ARICHHapdChipInfo::m_biasVoltage2D
TH2F * m_biasVoltage2D
Bias Voltage as a function of the channel.
Definition: ARICHHapdChipInfo.h:259
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::ARICHHapdChipInfo::getBiasVoltage2D
TH2F * getBiasVoltage2D() const
Return Bias Voltage as a function of the channel.
Definition: ARICHHapdChipInfo.h:167
Belle2::ARICHHapdChipInfo::setBadChannel
void setBadChannel(const std::vector< int > &channels)
Set the list of bad channels.
Definition: ARICHHapdChipInfo.h:241
Belle2::ARICHHapdChipInfo::m_gain
int m_gain
Total Gain at Operational Values.
Definition: ARICHHapdChipInfo.h:253
Belle2::ARICHHapdChipInfo::m_leakCurrent
TGraph * m_leakCurrent
Leakege Current as a function of bias voltage.
Definition: ARICHHapdChipInfo.h:254
Belle2::ARICHHapdChipInfo::setLeakCurrent
void setLeakCurrent(TGraph *current)
set Leakeage Current as a function of bias voltage
Definition: ARICHHapdChipInfo.h:112
Belle2::ARICHHapdChipInfo::m_biasCurrent2D
TH2F * m_biasCurrent2D
Bias Current as a function of the channel.
Definition: ARICHHapdChipInfo.h:260
Belle2::ARICHHapdChipInfo::getCutChannelsSize
int getCutChannelsSize() const
Return size of the list of cut channels.
Definition: ARICHHapdChipInfo.h:222
Belle2::ARICHHapdChipInfo::~ARICHHapdChipInfo
~ARICHHapdChipInfo()
Destructor.
Definition: ARICHHapdChipInfo.h:56
Belle2::ARICHHapdChipInfo::setBombardmentGain
void setBombardmentGain(TGraph *gain)
Set Bombardment Gain as a function of high voltage.
Definition: ARICHHapdChipInfo.h:124
Belle2::ARICHHapdChipInfo::setBiasCurrent2D
void setBiasCurrent2D(TH2F *h2d)
set Bias Current as a function of the channel
Definition: ARICHHapdChipInfo.h:185
Belle2::ARICHHapdChipInfo::getGain
int getGain() const
Return Chip Gain at Operational Voltage.
Definition: ARICHHapdChipInfo.h:94
Belle2::ARICHHapdChipInfo::m_bombardmentCurrent
std::vector< TGraph * > m_bombardmentCurrent
Bombardment Current as a function of high voltage.
Definition: ARICHHapdChipInfo.h:256
Belle2::ARICHHapdChipInfo::ClassDef
ClassDef(ARICHHapdChipInfo, 3)
ClassDef.
Belle2::ARICHHapdChipInfo::getChannelNumber
int getChannelNumber() const
Return Channel Number for the Bombardment and Avalanche measurements information.
Definition: ARICHHapdChipInfo.h:191
Belle2::ARICHHapdChipInfo::getLeakCurrent
TGraph * getLeakCurrent() const
Return Leakeage Current as a function of bias voltage.
Definition: ARICHHapdChipInfo.h:106
Belle2::ARICHHapdChipInfo::setBiasVoltage2D
void setBiasVoltage2D(TH2F *h2d)
Set Bias Voltage as a function of the channel.
Definition: ARICHHapdChipInfo.h:173
Belle2::ARICHHapdChipInfo::m_biasVoltage
int m_biasVoltage
chip bias voltage
Definition: ARICHHapdChipInfo.h:252
Belle2::ARICHHapdChipInfo::setAvalancheGain
void setAvalancheGain(TGraph *gain)
set Avalanche Gain as a function of bias voltage
Definition: ARICHHapdChipInfo.h:148
Belle2::ARICHHapdChipInfo::getBiasCurrent2D
TH2F * getBiasCurrent2D() const
Return Bias Current as a function of the channel.
Definition: ARICHHapdChipInfo.h:179
Belle2::ARICHHapdChipInfo::getChipLabel
std::string getChipLabel() const
Return Chip label.
Definition: ARICHHapdChipInfo.h:71
Belle2::ARICHHapdChipInfo::appendBadChannel
void appendBadChannel(int ichannel)
Add a channel number to the list of cut channels.
Definition: ARICHHapdChipInfo.h:235
Belle2::ARICHHapdChipInfo::getAvalancheGain
TGraph * getAvalancheGain() const
Return Avalanche Gain as a function of bias voltage.
Definition: ARICHHapdChipInfo.h:142
Belle2::ARICHHapdChipInfo::setCutChannel
void setCutChannel(const std::vector< int > &channels)
Set the list of cut channels.
Definition: ARICHHapdChipInfo.h:216