]> git.uio.no Git - u/mrichter/AliRoot.git/blame - ITS/AliITSOnlineSDDTP.h
Following the changes in the MUON code (Ivana)
[u/mrichter/AliRoot.git] / ITS / AliITSOnlineSDDTP.h
CommitLineData
348f80b7 1#ifndef ALIITSONLINESDDTP_H
2#define ALIITSONLINESDDTP_H
3
4
5///////////////////////////////////////////////////////////////////
6// //
7// Class used for SDD Test Pulse analysis //
8// Origin: F.Prino, Torino, prino@to.infn.it //
9// //
10///////////////////////////////////////////////////////////////////
11
0e5e647a 12#include "AliITSOnlineSDD.h"
348f80b7 13
14class TH2F;
348f80b7 15class AliITSOnlineSDDTP : public AliITSOnlineSDD {
16
17 public:
18 AliITSOnlineSDDTP();
beb262b4 19 AliITSOnlineSDDTP(Int_t mod, Int_t sid,Float_t xDAC);
348f80b7 20 virtual ~AliITSOnlineSDDTP();
21 void Reset();
22 void AddEvent(TH2F* hrawd);
23 void ValidateAnodes();
24 void ReadBaselines();
25
26 void SetNSigmaGain(Float_t sig=3.){fNSigmaGain=sig;}
3083967f 27 Bool_t IsModuleGood()const;
348f80b7 28 Bool_t IsAnodeGood(Int_t iAnode)const{ return fGoodAnode[iAnode];}
3083967f 29 Float_t GetAnodeBaseline(Int_t iAnode) const{ return fBaseline[iAnode];}
30 Float_t GetAnodeRawNoise(Int_t iAnode) const{ return fRawNoise[iAnode];}
31 Float_t GetAnodeCommonMode(Int_t iAnode) const{ return fCMN[iAnode];}
32 Float_t GetAnodeCorrNoise(Int_t iAnode) const{return fCorrNoise[iAnode];}
348f80b7 33 Int_t GetNEvents() const {return fNEvents;}
34 Float_t GetChannelGain(Int_t iAnode)const{
beb262b4 35 if(fNEvents>0) return fSumTPPeak[iAnode]/fNEvents/fDAC;
348f80b7 36 else return 0;
37 }
38 void StatGain(Float_t &mean, Float_t &rms);
e44f571c 39 void WriteToASCII();
3083967f 40 Bool_t WriteToROOT(TFile *fil);
348f80b7 41
42 protected:
43
44 private:
beb262b4 45 Int_t fNEvents; // number of events
3083967f 46 Float_t fDAC; // Pascal Test Pulse amplitude (DAC units)
47 Bool_t fGoodAnode[fgkNAnodes]; // array of anode quality (1 good, 0 bad)
beb262b4 48 Float_t fBaseline[fgkNAnodes]; // array of anode baselines
3083967f 49 Float_t fRawNoise[fgkNAnodes]; // array of anode raw noise
50 Float_t fCMN[fgkNAnodes]; // common mode noise coeff.
51 Float_t fCorrNoise[fgkNAnodes]; // array of anode corrected noise
beb262b4 52 Float_t fSumTPPeak[fgkNAnodes]; // test pulse amplitude summed over events
53 Float_t fTPPos[fgkNAnodes]; // test pulse position
54 Float_t fNSigmaGain; // Cut value for gain (n*sigma)
348f80b7 55
3083967f 56 ClassDef(AliITSOnlineSDDTP,2);
348f80b7 57};
58#endif