]>
Commit | Line | Data |
---|---|---|
a8827307 | 1 | #ifndef ALIEMCALCALIBAPD_H |
2 | #define ALIEMCALCALIBAPD_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | /* $Id: $ */ | |
8 | ||
9 | #include <TObject.h> | |
10 | class TString; | |
11 | ||
12 | /* | |
13 | Objects of this class read txt file with APD data | |
14 | AliEMCALCalibAPD inherits TObject only to use AliLog "functions". | |
15 | */ | |
16 | ||
17 | class AliEMCALCalibAPD : public TObject { | |
18 | public: | |
19 | AliEMCALCalibAPD(); | |
20 | ||
21 | void ReadCalibAPDInfo(Int_t nAPD, const TString &txtFileName); // info file is for nSm=1 to 12 SuperModules | |
22 | void WriteCalibAPDInfo(const TString &txtFileName); // info file is for nSm=1 to 12 SuperModules | |
23 | ||
24 | virtual ~AliEMCALCalibAPD(); | |
25 | ||
26 | struct AliEMCALCalibAPDData { | |
27 | Int_t fAPDNum; // assigned APD-PA number; Catania 10000-, Houston: 20000- | |
28 | UInt_t fSerialNum; // Serial Number; from Hamamatsu | |
29 | Char_t fStatus[10]; // Status info: should be "tested" | |
30 | Char_t fLocation[20]; // where was the test done: "Catania" or "Houston" | |
31 | Int_t fRunNum; // DATE run at test station | |
32 | Int_t fTestPos; // location of APD during test | |
33 | ||
34 | Float_t fV30; // Catania/Houston Voltage V30 (V) at T = 25 deg C | |
cdb5074a | 35 | Float_t fV50; // Catania/Houston Voltage V50 (V) at T = 25 deg C |
a8827307 | 36 | Float_t fVoltCoeff; // 1/M x dM/dV |
37 | Float_t fPar[3]; // fit parameters, p0,p1,p2 - for ADC vs bias measurement | |
38 | Float_t fParErr[3]; // error on fit parameters | |
39 | ||
40 | Int_t fBreakDown; // Hamamatsu Breakdown Voltage (V) | |
41 | Float_t fHamV50; // Hamamatsu Voltage V50 (V) | |
42 | Float_t fDarkCurrent; // Hamamatsu Dark Current (A) | |
43 | Float_t fTestTemp; // Hamamatsu Testing Temperature (deg C) | |
44 | ||
45 | }; | |
46 | ||
47 | // pointer to stored info. | |
48 | Int_t GetNCalibAPD() const { return fNCalibAPD; }; | |
49 | AliEMCALCalibAPDData * GetCalibAPDData() const { return fData; }; | |
50 | ||
51 | // - via the index in the stored array: | |
52 | virtual AliEMCALCalibAPDData GetCalibAPDDataId(Int_t apdIndex) const; | |
53 | // - or via the actual APD number | |
54 | virtual AliEMCALCalibAPDData GetCalibAPDDataNum(Int_t apdNum) const; | |
55 | ||
56 | protected: | |
57 | ||
58 | Int_t fNCalibAPD; // Number of APDs | |
59 | AliEMCALCalibAPDData *fData; // array with the data | |
60 | ||
61 | private: | |
62 | ||
63 | AliEMCALCalibAPD(const AliEMCALCalibAPD &); | |
64 | AliEMCALCalibAPD &operator = (const AliEMCALCalibAPD &); | |
65 | ||
66 | ClassDef(AliEMCALCalibAPD, 1) //CalibAPD data reader | |
67 | }; | |
68 | ||
69 | #endif |