Belle II Software development
ARICHModuleTest.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
11#include <TObject.h>
12#include <string>
13#include <vector>
14#include <TH1D.h>
15#include <TH2D.h>
16#include <TGraph.h>
17
18#include <TClass.h>
19
20namespace Belle2 {
29 class ARICHModuleTest: public TObject {
30 public:
31
36 m_guardBias_th(NULL), m_HV_th(NULL), m_guardBias_2Dx(NULL), m_HV_2Dx(NULL), m_guardBias_2Dy(NULL), m_HV_2Dy(NULL), m_gain(NULL),
37 m_charge(NULL), m_th(NULL), m_scanX(NULL), m_scanY(NULL), m_comment("")
38 {
39 for (unsigned i = 0; i < 4; i++) m_chipVdiff_th[i] = NULL;
40 for (unsigned i = 0; i < 4; i++) m_chipLeak_th[i] = NULL;
41 for (unsigned i = 0; i < 4; i++) m_chipVdiff_2Dx[i] = NULL;
42 for (unsigned i = 0; i < 4; i++) m_chipLeak_2Dx[i] = NULL;
43 for (unsigned i = 0; i < 4; i++) m_chipVdiff_2Dy[i] = NULL;
44 for (unsigned i = 0; i < 4; i++) m_chipLeak_2Dy[i] = NULL;
45 };
46
51
56 int getFebSN() const {return m_febSN; }
57
62 void setFebSN(int serial) {m_febSN = serial; }
63
68 std::string getHapdSN() const {return m_hapdSN; }
69
74 void setHapdSN(const std::string& hapd) {m_hapdSN = hapd; }
75
80 int getHvbSN() const {return m_hvbSN; }
81
86 void setHvbSN(int serial) {m_hvbSN = serial; }
87
92 int getRun() const {return m_run; }
93
98 void setRun(int run) {m_run = run; }
99
104 int getRunPosition() const {return m_runposition; }
105
110 void setRunPosition(int runposition) {m_runposition = runposition; }
111
116 bool getOK() const {return m_isOK; }
117
122 void setOK(bool isOK) {m_isOK = isOK; }
123
129 int getDeadCh(unsigned int i) const;
130
135 void appendDeadCh(int channel) {m_deadCh.push_back(channel); }
136
141 void setDeadChs(const std::vector<int>& deadChs) {m_deadCh = deadChs; }
142
147 int getDeadChsSize() const {return m_deadCh.size();}
148
154 int getStrangeCh(unsigned int i) const;
155
160 void appendStrangeCh(int channel) {m_strangeCh.push_back(channel); }
161
166 void setStrangeChs(const std::vector<int>& strangeChs) {m_strangeCh = strangeChs; }
167
172 int getStrangeChsSize() const {return m_strangeCh.size();}
173
178 TGraph* getGuardBiasTH() const {return m_guardBias_th;}
179
184 void setGuardBiasTH(TGraph* guardBias_th) { m_guardBias_th = guardBias_th;}
185
190 TGraph* getChipVdiffTH(unsigned int i) const;
191
197 void setChipVdiffTH(unsigned int i, TGraph* chipVdiff_th);
198
203 TGraph* getChipLeakTH(unsigned int i) const;
204
210 void setChipLeakTH(unsigned int i, TGraph* chipLeak_th);
211
216 TGraph* getHighVoltageTH() const {return m_HV_th;}
217
222 void setHighVoltageTH(TGraph* HV_th) { m_HV_th = HV_th;}
223
228 TGraph* getGuardBias2Dx() const {return m_guardBias_2Dx;}
229
234 void setGuardBias2Dx(TGraph* guardBias_2Dx) { m_guardBias_2Dx = guardBias_2Dx;}
235
240 TGraph* getChipVdiff2Dx(unsigned int i) const;
241
247 void setChipVdiff2Dx(unsigned int i, TGraph* chipVdiff_2Dx);
248
253 TGraph* getChipLeak2Dx(unsigned int i) const;
254
260 void setChipLeak2Dx(unsigned int i, TGraph* chipLeak_2Dx);
261
266 TGraph* getHighVoltage2Dx() const {return m_HV_2Dx;}
267
272 void setHighVoltage2Dx(TGraph* HV_2Dx) { m_HV_2Dx = HV_2Dx;}
273
278 TGraph* getGuardBias2Dy() const {return m_guardBias_2Dy;}
279
284 void setGuardBias2Dy(TGraph* guardBias_2Dy) { m_guardBias_2Dy = guardBias_2Dy;}
285
290 TGraph* getChipVdiff2Dy(unsigned int i) const;
291
297 void setChipVdiff2Dy(unsigned int i, TGraph* chipVdiff_2Dy);
298
303 TGraph* getChipLeak2Dy(unsigned int i) const;
304
310 void setChipLeak2Dy(unsigned int i, TGraph* chipLeak_2Dy);
311
316 TGraph* getHighVoltage2Dy() const {return m_HV_2Dy;}
317
322 void setHighVoltage2Dy(TGraph* HV_2Dy) { m_HV_2Dy = HV_2Dy;}
323
328 TH1F* getGain() const {return m_gain;}
329
334 void setGain(TH1F* gain) { m_gain = gain;}
335
340 TH2D* getChargeScan() const {return m_charge;}
341
346 void setChargeScan(TH2D* charge) { m_charge = charge;}
347
352 TH2D* getTresholdScan() const {return m_th;}
353
358 void setTresholdScan(TH2D* th) { m_th = th;}
359
364 TH2D* getLaserScanX() const {return m_scanX;}
365
370 void setLaserScanX(TH2D* scanX) { m_scanX = scanX;}
371
376 TH2D* getLaserScanY() const {return m_scanY;}
377
382 void setLaserScanY(TH2D* scanY) { m_scanY = scanY;}
383
388 std::string getComment() const {return m_comment; }
389
394 void setComment(const std::string& comment) {m_comment = comment; }
395
396 private:
397
399 std::string m_hapdSN;
401 int m_run;
403 bool m_isOK;
404 std::vector<int> m_deadCh;
405 std::vector<int> m_strangeCh;
408 TGraph* m_chipVdiff_th[4];
409 TGraph* m_chipLeak_th[4];
410 TGraph* m_HV_th;
412 TGraph* m_chipVdiff_2Dx[4];
413 TGraph* m_chipLeak_2Dx[4];
414 TGraph* m_HV_2Dx;
416 TGraph* m_chipVdiff_2Dy[4];
417 TGraph* m_chipLeak_2Dy[4];
418 TGraph* m_HV_2Dy;
419 TH1F* m_gain;
420 TH2D* m_charge;
421 TH2D* m_th;
422 TH2D* m_scanX;
423 TH2D* m_scanY;
425 std::string m_comment;
428 };
430} // end namespace Belle2
ARICH module test data.
void setChipLeak2Dx(unsigned int i, TGraph *chipLeak_2Dx)
Set leakage current during 2Dx scan.
TH2D * getLaserScanY() const
Get laser scan - Y direction.
std::string m_comment
Optional comment.
void setChipLeak2Dy(unsigned int i, TGraph *chipLeak_2Dy)
Set leakage current during 2Dy scan.
std::vector< int > m_strangeCh
List of strange channels (mapping: channels on HAPD)
TGraph * getHighVoltageTH() const
Get high voltage during treshold scan.
void setChipVdiff2Dy(unsigned int i, TGraph *chipVdiff_2Dy)
Set Chip Vmon - Vset difference during 2Dx scan.
int getStrangeChsSize() const
Get size of the list of strange channels.
TH2D * m_charge
Charge scan 2D.
bool m_isOK
Module is OK if true.
TH1F * m_gain
Gain for each channel.
TH2D * m_scanX
Laser scan 2D - x direction.
int getRunPosition() const
Get module test-run position.
void setGuardBias2Dx(TGraph *guardBias_2Dx)
Set guard bias during 2Dx scan.
std::string getComment() const
Get comment.
TH2D * m_th
Treshold scan 2D.
TGraph * m_chipVdiff_2Dx[4]
Chip Vmon - Vset difference during 2D x scan.
void setChipVdiffTH(unsigned int i, TGraph *chipVdiff_th)
Set Chip Vmon - Vset difference during treshold scan.
TGraph * m_chipLeak_2Dx[4]
Chip leakage current during 2D x scan.
void setHighVoltageTH(TGraph *HV_th)
Set high voltage during treshold scan.
std::string m_hapdSN
HAPD serial number.
int m_runposition
Position on setup.
TGraph * getChipVdiffTH(unsigned int i) const
Get Chip Vmon - Vset difference during treshold scan.
void setLaserScanY(TH2D *scanY)
Set laser scan - Y direction.
TGraph * m_guardBias_th
Guard bias during treshold scan.
int m_febSN
FEB serial number.
TGraph * m_chipVdiff_th[4]
Chip Vmon - Vset difference during treshold scan.
TH2D * getChargeScan() const
Get charge scan.
TGraph * m_chipLeak_2Dy[4]
Chip leakage current during 2D y scan.
TGraph * m_guardBias_2Dy
Guard bias during 2D y scan.
TGraph * getGuardBiasTH() const
Get guard bias during treshold scan.
void setHapdSN(const std::string &hapd)
Set HAPD serial number.
int getRun() const
Get module test run.
TGraph * getHighVoltage2Dy() const
Get high voltage during 2Dy scan.
int getHvbSN() const
Get HVB serial number.
TGraph * m_guardBias_2Dx
Guard bias during 2D x scan.
void setOK(bool isOK)
Set whether module is OK.
TGraph * m_HV_th
High voltage during treshold scan.
TH1F * getGain() const
Get gain.
TGraph * m_HV_2Dx
High voltage during 2D x scan.
ClassDef(ARICHModuleTest, 2)
ClassDef.
TGraph * getChipLeakTH(unsigned int i) const
Get leakage current during treshold scan.
TGraph * getHighVoltage2Dx() const
Get high voltage during 2Dx scan.
TH2D * getTresholdScan() const
Get treshold scan.
void setGuardBias2Dy(TGraph *guardBias_2Dy)
Set guard bias during 2Dy scan.
ARICHModuleTest()
Default constructor.
void setRun(int run)
Set module test run.
TH2D * m_scanY
Laser scan 2D - y direction.
void setHighVoltage2Dy(TGraph *HV_2Dy)
Set high voltage during 2Dy scan.
void setFebSN(int serial)
Set FEB serial number.
TGraph * getGuardBias2Dy() const
Get guard bias during 2Dy scan.
TH2D * getLaserScanX() const
Get laser scan - X direction.
void appendDeadCh(int channel)
Add a channel number to the list of dead channels.
TGraph * m_HV_2Dy
High voltage during 2D y scan.
TGraph * m_chipLeak_th[4]
Chip leakage current during treshold scan.
void setLaserScanX(TH2D *scanX)
Set laser scan - X direction.
int getDeadChsSize() const
Get size of the list of dead channels.
int getFebSN() const
Get FEB serial number.
void setChipLeakTH(unsigned int i, TGraph *chipLeak_th)
Set leakage current during treshold scan.
void setGain(TH1F *gain)
Set gain.
int getDeadCh(unsigned int i) const
Get a channel number from the list of dead channels.
void appendStrangeCh(int channel)
Add a channel number to the list of strange channels.
void setRunPosition(int runposition)
Set module test-run position.
std::vector< int > m_deadCh
List of dead channels (mapping: channels on HAPD)
TGraph * getGuardBias2Dx() const
Get guard bias during 2Dx scan.
TGraph * m_chipVdiff_2Dy[4]
Chip Vmon - Vset difference during 2D y scan.
bool getOK() const
Return true if module is OK.
TGraph * getChipLeak2Dx(unsigned int i) const
Get leakage current during 2Dx scan.
void setDeadChs(const std::vector< int > &deadChs)
Set vector of dead channel numbers.
TGraph * getChipVdiff2Dy(unsigned int i) const
Get Chip Vmon - Vset difference during 2Dy scan.
int m_hvbSN
HVB serial number.
TGraph * getChipVdiff2Dx(unsigned int i) const
Get Chip Vmon - Vset difference during 2Dx scan.
void setHvbSN(int serial)
Set HVB serial number.
void setComment(const std::string &comment)
Set comment.
void setChargeScan(TH2D *charge)
Set charge scan.
void setHighVoltage2Dx(TGraph *HV_2Dx)
Set high voltage during 2Dx scan.
~ARICHModuleTest()
Destructor.
void setTresholdScan(TH2D *th)
Set treshold scan.
TGraph * getChipLeak2Dy(unsigned int i) const
Get leakage current during 2Dy scan.
void setChipVdiff2Dx(unsigned int i, TGraph *chipVdiff_2Dx)
Set Chip Vmon - Vset difference during 2Dx scan.
void setGuardBiasTH(TGraph *guardBias_th)
Set guard bias during treshold scan.
int getStrangeCh(unsigned int i) const
Get a channel number from the list of strange channels.
void setStrangeChs(const std::vector< int > &strangeChs)
Set vector of strange channel numbers.
std::string getHapdSN() const
Get HAPD serial number.
TH1F * hapd[6]
histogram of hits for each hapd
Abstract base class for different kinds of events.