]>
Commit | Line | Data |
---|---|---|
dc7ca31d | 1 | #ifndef AliT0CalibData_H |
2 | #define AliT0CalibData_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
7 | //////////////////////////////////////////////// | |
8 | // class for T0 calibration // | |
9 | //////////////////////////////////////////////// | |
10 | ||
11 | #include "TNamed.h" | |
12 | #include "TF1.h" | |
13 | #include "AliT0CalibData.h" | |
14 | #include "TMap.h" | |
15 | #include "TGraph.h" | |
16 | #include "TString.h" | |
17 | #include "TObjArray.h" | |
18 | #include "AliT0.h" | |
e0bba6cc | 19 | #include "AliT0LookUpValue.h" |
dc7ca31d | 20 | |
21 | class AliT0CalibData: public TNamed { | |
22 | ||
23 | public: | |
24 | AliT0CalibData(); | |
25 | AliT0CalibData(const char* name); | |
26 | AliT0CalibData(const AliT0CalibData &calibda); | |
27 | AliT0CalibData& operator= (const AliT0CalibData &calibda); | |
28 | virtual ~AliT0CalibData(); | |
29 | void Reset(); | |
30 | ||
31 | virtual void Print(Option_t* option= "") const; | |
32 | Float_t GetTimeDelayCFD(Int_t channel) const {return fTimeDelayCFD[channel];} | |
33 | Float_t* GetTimeDelayCFD() const {return(float*) fTimeDelayCFD;} | |
94c27e4f | 34 | Float_t GetTimeDelayDA(Int_t channel) const {return fTimeDelayDA[channel];} |
35 | Float_t* GetTimeDelayDA() const {return(float*) fTimeDelayDA;} | |
dc7ca31d | 36 | |
dc7ca31d | 37 | |
c41ceaac | 38 | TGraph *GetWalk(Int_t ipmt ) const {return ((TGraph*)fWalk.At(ipmt));} |
39 | Float_t GetWalkVal(Int_t ipmt, Float_t mv ) const {return ((TGraph*)fWalk.At(ipmt))->Eval(mv);} | |
ca7c0417 | 40 | void SetWalk(Int_t ipmt) ; |
dc7ca31d | 41 | |
42 | TGraph * GetSlew(Int_t ipmt) const {return (TGraph*)fSlewingLED.At(ipmt);} | |
43 | Float_t GetSlewingLED(Int_t ipmt, Float_t mv) const | |
44 | {return((TGraph*)fSlewingLED.At(ipmt))->Eval(mv);} | |
45 | TGraph * GetSlewRec(Int_t ipmt) const {return (TGraph*)fSlewingRec.At(ipmt);} | |
46 | Float_t GetSlewingRec(Int_t ipmt, Float_t mv) const | |
47 | {return((TGraph*)fSlewingRec.At(ipmt))->Eval(mv);} | |
48 | ||
ca7c0417 | 49 | void SetSlewingLED(Int_t ipmt) ; |
50 | void SetSlewingRec(Int_t ipmt) ; | |
dc7ca31d | 51 | |
52 | void SetTimeDelayCFD(Float_t val, Int_t channel) {fTimeDelayCFD[channel]=val;} | |
53 | void SetTimeDelayCFD(Float_t* TimeDelay); | |
94c27e4f | 54 | void SetTimeDelayDA(Float_t val, Int_t channel) {fTimeDelayDA[channel]=val;} |
55 | void SetTimeDelayDA(Float_t* TimeDelay); | |
dc7ca31d | 56 | |
57 | void SetTimeDelayTVD(Int_t r=150) { fTimeDelayTVD = r; }; | |
58 | Float_t GetTimeDelayTVD() { return fTimeDelayTVD; } | |
59 | ||
e0bba6cc | 60 | void ReadAsciiLookup(const Char_t *filename); |
61 | Int_t GetChannel(Int_t trm, Int_t tdc, Int_t chain, Int_t channel); | |
62 | void PrintLookup(Option_t* option= "", Int_t iTRM=0, Int_t iTDC=0, Int_t iChannel=0) const; | |
63 | TMap *GetMapLookup(void) {return &fLookup;} | |
5325480c | 64 | Int_t GetNumberOfTRMs() const {return fNumberOfTRMs;} |
65 | void SetNumberOfTRMs(Int_t ntrms=2) {fNumberOfTRMs = ntrms;} | |
d3541055 | 66 | |
94c27e4f | 67 | void SetMeanT0(Int_t mean=500) { fMeanT0 = mean; }; |
68 | Int_t GetMeanT0 () {return fMeanT0;}; | |
e0bba6cc | 69 | |
dc7ca31d | 70 | protected: |
71 | ||
72 | Float_t fTimeDelayCFD[24]; // Coeff. for time delay (24 different cables & CFD ) | |
94c27e4f | 73 | Float_t fTimeDelayDA[24]; // number of channel with mean time+delay if vertex=0 ) |
dc7ca31d | 74 | Float_t fTimeDelayTVD; //time delay for TVD (vertex trigger channel) |
94c27e4f | 75 | Int_t fMeanT0; //mean of T0distribution with vertex=0; |
dc7ca31d | 76 | TObjArray fWalk; //time - amp. walk |
77 | TObjArray fSlewingLED; //time - amp.LED slew | |
78 | TObjArray fSlewingRec; //time - amp. LED slew for reconstruction | |
e0bba6cc | 79 | TMap fLookup; //lookup table |
5325480c | 80 | Int_t fNumberOfTRMs; // number of TRMs in setup |
e0bba6cc | 81 | |
dc7ca31d | 82 | // |
d3541055 | 83 | ClassDef(AliT0CalibData,5) // T0 Sensor Calibration data |
dc7ca31d | 84 | }; |
85 | ||
86 | typedef AliT0CalibData AliSTARTCalibData; // for backward compatibility | |
87 | ||
88 | #endif | |
89 |