1 #ifndef ALIITSONLINESDDCMN_H
2 #define ALIITSONLINESDDCMN_H
4 ///////////////////////////////////////////////////////////////////
6 // Class used for SDD noise corrected for common mode analysis //
7 // Origin: F.Prino, Torino, prino@to.infn.it //
9 ///////////////////////////////////////////////////////////////////
10 #include "AliITSOnlineSDD.h"
15 class AliITSOnlineSDDCMN : public AliITSOnlineSDD {
19 AliITSOnlineSDDCMN(Int_t mod, Int_t sid);
20 virtual ~AliITSOnlineSDDCMN();
22 void AddEvent(TH2F* hrawd);
23 void ValidateAnodes();
26 void SetMinNoise(Float_t ns=0.001){fMinCorrNoise=ns;}
27 void SetMaxNoise(Float_t ns=9.){fMaxCorrNoise=ns;}
28 void SetNSigmaNoise(Float_t ns=4.){fNSigmaNoise=ns;}
30 Bool_t IsAnodeGood(Int_t iAnode)const{ return fGoodAnode[iAnode];}
31 Float_t GetAnodeBaseline(Int_t iAnode) const{ return fBaseline[iAnode];}
32 Float_t GetAnodeRawNoise(Int_t iAnode) const{ return fRawNoise[iAnode];}
33 Float_t GetAnodeCommonMode(Int_t iAnode) const{ return fCMN[iAnode];}
34 Float_t GetAnodeCorrNoise(Int_t iAnode) const{
35 if(fNEvents>0) return fSumCorrNoise[iAnode]/fNEvents;
39 Float_t CalcMeanNoise() const;
40 Int_t GetNEvents() const {return fNEvents;}
42 TH1F* GetBaselineAnodeHisto() const;
43 TH1F* GetRawNoiseAnodeHisto() const;
44 TH1F* GetCorrNoiseAnodeHisto() const;
45 TH1F* GetBaselineHisto() const;
46 TH1F* GetRawNoiseHisto() const;
47 TH1F* GetCorrNoiseHisto() const;
50 Bool_t WriteToROOT(TFile *fil);
55 Int_t fNEvents; // number of events
56 Bool_t fGoodAnode[fgkNAnodes]; // anode quality: good(1) - bad (0)
57 Float_t fBaseline[fgkNAnodes]; // array of anode baselines
58 Float_t fRawNoise[fgkNAnodes]; // array of anode raw noise
59 Float_t fSumCorrNoise[fgkNAnodes]; // corrected noise summed over events
60 Float_t fCMN[fgkNAnodes]; // common mode noise coeff.
61 Float_t fMinCorrNoise; // Cut value for minimum corrected noise
62 Float_t fMaxCorrNoise; // Cut value for maximum corrected noise
63 Float_t fNSigmaNoise; // Cut value for corrected noise (n*sigma)
65 ClassDef(AliITSOnlineSDDCMN,1);