]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TPC/AliTPCCalPad.h
Corrected initialization of arrays (Opteron)
[u/mrichter/AliRoot.git] / TPC / AliTPCCalPad.h
1 #ifndef ALITPCCALPAD_H
2 #define ALITPCCALPAD_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 ///////////////////////////////////////////////////////////////////////////////
9 //                                                                           //
10 //  TPC calibration class for parameters which are saved per pad                 //
11 //                                                                           //
12 ///////////////////////////////////////////////////////////////////////////////
13
14 #include "TNamed.h"
15
16 class AliTPCCalROC;
17 class AliTPCCalDet;
18 class TObjArray;
19 class TGraph;
20 class TH2F;
21 class TH1F;
22
23 class AliTPCCalPad : public TNamed {
24  public:
25   enum { kNsec = 72 };
26   AliTPCCalPad();
27   AliTPCCalPad(const Text_t* name, const Text_t* title);
28   AliTPCCalPad(const AliTPCCalPad &c);   
29   AliTPCCalPad(TObjArray *arrayROC);
30   virtual ~AliTPCCalPad();
31   AliTPCCalPad &operator=(const AliTPCCalPad &c);
32   virtual void     Copy(TObject &c) const;
33   AliTPCCalROC *GetCalROC(Int_t sector) const { return fROC[sector]; };  
34   //
35   // algebra
36   void Add(Float_t c1);
37   void Multiply(Float_t c1);
38   void Add(const AliTPCCalPad * roc, Double_t c1 = 1);
39   void Multiply(const AliTPCCalPad * pad);
40   void Divide(const AliTPCCalPad * pad);
41   //
42   Double_t GetMeanRMS(Double_t &rms);
43   Double_t GetMean();
44   Double_t GetRMS() ;
45   Double_t GetMedian() ;
46   Double_t GetLTM(Double_t *sigma=0, Double_t fraction=0.9);
47   TGraph  *MakeGraph(Int_t type=0, Float_t ratio=0.7);
48   TH2F    *MakeHisto2D(Int_t side=0);
49   TH1F    *MakeHisto1D(Float_t min=4, Float_t max=-4, Int_t type=0);  
50   static void MakeTree(const char * fileName, TObjArray * array);
51  protected:
52   AliTPCCalROC *fROC[kNsec];                    //  Array of ROC objects which contain the values per pad
53   ClassDef(AliTPCCalPad,1)                      //  TPC calibration class for parameters which are saved per pad
54 };
55
56 #endif