]> git.uio.no Git - u/mrichter/AliRoot.git/blame - START/AliSTARTCalibData.h
Added contructor from TPartice.
[u/mrichter/AliRoot.git] / START / AliSTARTCalibData.h
CommitLineData
9c45c8bb 1#ifndef AliSTARTCalibData_H
2#define AliSTARTCalibData_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 START calibration //
9////////////////////////////////////////////////
10
11#include "TNamed.h"
12#include "TF1.h"
13#include "AliSTARTCalibData.h"
14#include "TMap.h"
15#include "TGraph.h"
16#include "TString.h"
17#include "TObjArray.h"
18#include "AliSTART.h"
19
20class AliSTARTCalibData: public TNamed {
21
22 public:
23 AliSTARTCalibData();
24 AliSTARTCalibData(const char* name);
25 AliSTARTCalibData(const AliSTARTCalibData &calibda);
26 AliSTARTCalibData& operator= (const AliSTARTCalibData &calibda);
27 virtual ~AliSTARTCalibData();
28 void Reset();
29
30 virtual void Print(Option_t* option= "") const;
31 Float_t GetTimeDelayCFD(Int_t channel) const {return fTimeDelayCFD[channel];}
32 Float_t* GetTimeDelayCFD() const {return(float*) fTimeDelayCFD;}
33 Float_t GetTimeDelayLED(Int_t channel) const {return fTimeDelayLED[channel];}
34 Float_t* GetTimeDelayLED() const {return(float*) fTimeDelayLED;}
35
36 Float_t GetGain(Int_t channel) const {return fGain[channel];}
37 Float_t* GetGain() const {return (float*)fGain;}
38 void SetGain(Float_t val, Int_t channel) {fGain[channel]=val;}
39 void SetGain(Float_t* Gain);
40
41 Float_t GetWalk(Int_t ipmt, Float_t mv ) const {return ((TF1*)fWalk.At(ipmt))->Eval(mv);}
42 void SetWalk(Int_t ipmt, const Char_t *filename="calibr/re.root") ;
43
44 TGraph * GetSlew(Int_t ipmt) const {return (TGraph*)fSlewingLED.At(ipmt);}
45 Float_t GetSlewingLED(Int_t ipmt, Float_t mv) const
46 {return((TGraph*)fSlewingLED.At(ipmt))->Eval(mv);}
7bdc4686 47 TGraph * GetSlewRec(Int_t ipmt) const {return (TGraph*)fSlewingRec.At(ipmt);}
48 Float_t GetSlewingRec(Int_t ipmt, Float_t mv) const
49 {return((TGraph*)fSlewingRec.At(ipmt))->Eval(mv);}
9c45c8bb 50
51 void SetSlewingLED(Int_t ipmt, const Char_t *filename) ;
7bdc4686 52 void SetSlewingRec(Int_t ipmt, const Char_t *filename) ;
9c45c8bb 53
54 void SetTimeDelayCFD(Float_t val, Int_t channel) {fTimeDelayCFD[channel]=val;}
55 void SetTimeDelayCFD(Float_t* TimeDelay);
56 void SetTimeDelayLED(Float_t val, Int_t channel) {fTimeDelayLED[channel]=val;}
57 void SetTimeDelayLED(Float_t* TimeDelay);
58
7bdc4686 59 void SetTimeDelayTVD(Int_t r=150) { fTimeDelayTVD = r; };
60 Float_t GetTimeDelayTVD() { return fTimeDelayTVD; }
9c45c8bb 61
62 protected:
63
64 Float_t fTimeDelayCFD[24]; // Coeff. for time delay (24 different cables & CFD )
65 Float_t fTimeDelayLED[24]; // Coeff. for time delay (24 different cables & CFD )
66 Float_t fGain[24]; // Coeff. for gain (24 different cables & CFD )
7bdc4686 67 Float_t fTimeDelayTVD; //time delay for TVD (vertex trigger channel)
9c45c8bb 68 TObjArray fWalk; //time - amp. walk
7bdc4686 69 TObjArray fSlewingLED; //time - amp.LED slew
70 TObjArray fSlewingRec; //time - amp. LED slew for reconstruction
9c45c8bb 71 //
72 ClassDef(AliSTARTCalibData,1) // START Sensor Calibration data
73};
74
75#endif
76