]>
Commit | Line | Data |
---|---|---|
348f80b7 | 1 | #ifndef ALIITSONLINESDDBASE_H |
2 | #define ALIITSONLINESDDBASE_H | |
3 | ||
4 | /////////////////////////////////////////////////////////////////// | |
5 | // // | |
6 | // Class used for SDD baseline and noise analysis // | |
7 | // Origin: F.Prino, Torino, prino@to.infn.it // | |
8 | // // | |
9 | /////////////////////////////////////////////////////////////////// | |
0e5e647a | 10 | #include "AliITSOnlineSDD.h" |
11 | #include <TMath.h> | |
348f80b7 | 12 | |
13 | class TH2F; | |
14 | class TGraph; | |
15 | class AliITSOnlineSDDBase : public AliITSOnlineSDD { | |
16 | ||
17 | public: | |
18 | AliITSOnlineSDDBase(); | |
19 | AliITSOnlineSDDBase(Int_t mod, Int_t sid); | |
20 | virtual ~AliITSOnlineSDDBase(); | |
21 | void Reset(); | |
22 | void AddEvent(TH2F* hrawd); | |
23 | void ValidateAnodes(); | |
24 | ||
25 | void SetMinBaseline(Float_t bas=10.){fMinBaseline=bas;} | |
26 | void SetMaxBaseline(Float_t bas=150.){fMaxBaseline=bas;} | |
27 | void SetMinRawNoise(Float_t ns=0.001){fMinRawNoise=ns;} | |
28 | void SetMaxRawNoise(Float_t ns=9.){fMaxRawNoise=ns;} | |
29 | void SetNSigmaNoise(Float_t ns=4.){fNSigmaNoise=ns;} | |
30 | ||
31 | Bool_t IsAnodeGood(Int_t iAnode)const{ return fGoodAnode[iAnode];} | |
32 | Float_t GetAnodeBaseline(Int_t iAnode) const{ | |
33 | if(fNEvents>0) return fSumBaseline[iAnode]/fNEvents; | |
34 | else return 0; | |
35 | } | |
36 | Float_t GetAnodeRawNoise(Int_t iAnode) const{ | |
37 | if(fNEvents>0) return TMath::Sqrt(fSumRawNoise[iAnode]/fNEvents-TMath::Power(GetAnodeBaseline(iAnode),2)); | |
38 | ||
39 | else return 0; | |
40 | } | |
41 | ||
42 | Float_t CalcMeanRawNoise(); | |
43 | Float_t GetAnodeCommonMode(Int_t iAnode) const{ | |
44 | if(fNEvents>0) return fSumCMN[iAnode]/fNEvents; | |
45 | else return 0; | |
46 | } | |
47 | Int_t GetNEvents() const {return fNEvents;} | |
48 | void WriteToFXS(); | |
49 | ||
50 | protected: | |
51 | ||
52 | private: | |
53 | Int_t fNEvents; | |
54 | Bool_t fGoodAnode[fgkNAnodes]; | |
55 | Float_t fSumBaseline[fgkNAnodes]; | |
56 | Float_t fSumRawNoise[fgkNAnodes]; | |
57 | Float_t fSumCMN[fgkNAnodes]; | |
58 | Float_t fMinBaseline; | |
59 | Float_t fMaxBaseline; | |
60 | Float_t fMinRawNoise; | |
61 | Float_t fMaxRawNoise; | |
62 | Float_t fNSigmaNoise; | |
63 | ||
64 | ClassDef(AliITSOnlineSDDBase,1); | |
65 | }; | |
66 | #endif |