]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PMD/AliPMDCalibGain.h
rulechecker
[u/mrichter/AliRoot.git] / PMD / AliPMDCalibGain.h
1 #ifndef ALIPMDCALIBGAIN_H
2 #define ALIPMDCALIBGAIN_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 #include "TObject.h"
7
8 class TH1F;  
9 class AliRawReader;
10
11 class AliPMDCalibGain : public TObject
12 {
13  public:
14   AliPMDCalibGain() ;              // ctor
15   AliPMDCalibGain(const AliPMDCalibGain &pmdcalibgain);  // copy constructor
16   AliPMDCalibGain &operator=(const AliPMDCalibGain &pmdcalibgain); // assignment op
17
18   virtual ~AliPMDCalibGain() ;           // dtor
19
20   Int_t ExtractPedestal(const Char_t *rootFile);    // pedestal 
21   Int_t ExtractHotChannel(const Char_t *rootFile);  // Hotchannel root file 
22   void  ReadTempFile(const Char_t *tempFile);       // read inter file
23   void  WriteTempFile(const Char_t *tempFile);      // write inter file
24
25   Bool_t ProcessEvent(AliRawReader *rawReader, TObjArray *pmdddlcont);  //Looks for iso cells
26
27   void Analyse(TTree *gaintree, TTree *meantree);
28   void FindHotCell(TTree *hottree, Float_t xvar); // finds hot cell
29   
30  private:
31
32   enum
33       {
34           kDet    = 2,   // Number of Planes
35           kMaxSMN = 24,  // Number of Modules per plane
36           kMaxRow = 48,  // Number of Rows
37           kMaxCol = 96   // Number of Columns
38       };
39
40   Float_t fSMIso[kDet][kMaxSMN];
41   Float_t fSMCount[kDet][kMaxSMN];                     // counter
42   Float_t fCellIso[kDet][kMaxSMN][kMaxRow][kMaxCol];   // adc of iso cells
43   Float_t fCellCount[kDet][kMaxSMN][kMaxRow][kMaxCol]; // counter of iso cell
44   Float_t fNhitCell[kDet][kMaxSMN][kMaxRow][kMaxCol];  // counter
45   Float_t fPedMeanRMS[kDet][kMaxSMN][kMaxRow][kMaxCol];// Pedestal Mean
46   Float_t fHotFlag[kDet][kMaxSMN][kMaxRow][kMaxCol];   // HotChannel Flag 
47    
48   Float_t fCountSm[kDet][kMaxSMN];     // event counter for each module
49   Float_t fTempnhit[kDet][kMaxSMN];    // hit frequency of each module
50   Float_t fTempnhitSq[kDet][kMaxSMN];  // square of hit freq. of each mod.
51   FILE    *fpw;                        // write the temp file
52
53 ClassDef(AliPMDCalibGain,7)            // description 
54 };
55 #endif // ALIPMDCALIBGAIN_H