]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TPC/AliTPCDigitsH.h
removed obsolete AliTPCDigitsDisplay.C
[u/mrichter/AliRoot.git] / TPC / AliTPCDigitsH.h
1 #ifndef TTPCDIGITSH_H
2 #define TTPCDIGITSH_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 //  Manager class for AliTPCDigitsH             //
10 ////////////////////////////////////////////////
11  
12
13 // include files and class forward declarations
14
15 class TFile;   
16 class TH2F;
17 class AliH2F;
18 class TH1F;
19 class TPaveText;
20 class TPad;
21 class TCanvas;
22 class AliTPCParam;
23 class AliTPCD;
24 class TClonesArray;
25 class TTree;
26 #include "TObject.h"
27 #include "TUnixSystem.h"
28
29 class AliTPCDigitsH :public TObject{
30 public:   
31   ~AliTPCDigitsH();
32   AliTPCDigitsH(const AliTPCDigitsH &);
33   AliTPCDigitsH();
34   AliTPCDigitsH & operator = (const AliTPCDigitsH &);
35   AliTPCD * GetDParam() {return fDParam;}
36   void   SetDParam(AliTPCD * dig);
37   AliTPCParam *&   GetParam();
38   //get tpc parameters
39   TFile * GetIn() {return fin;}  
40   TFile * GetOut() {return fout;}
41   void Anal();   //get two dimensional histogram time*pad*amplitude for given
42   void SetSecRowTime(Int_t sec , Int_t row = 1, 
43                    Int_t TimeN = 500 , 
44                    Float_t TimeStart = 0, Float_t TimeStop = 500); 
45   //set section row and timing histogram 
46   //ranges and calculate histograms 
47   void SetHisto( Int_t pad = 1 ); 
48   virtual void Draw(Option_t * opt1 ="cont1"  , Option_t * opt2 = "error",
49                         Option_t * opt3 = "L" );
50   
51   void CloseFiles();  //close input and output file
52   void DeleteHisto(const Text_t *namecycle);  //
53  
54   Bool_t  SetIO(const char *  inFile, const char* outFile);  
55   Bool_t  SetTree(Int_t eventn =0 );
56   void  SetParticles(Int_t sec = -1, Int_t row = -1 ,
57                    Int_t size1 = 30000,Int_t size2=300,
58                    Bool_t all=1 );
59   Bool_t SetEventN(Int_t EventN=0);  //set event number connected to analisys
60   
61   void SetbDelHisto(Bool_t bDelHisto) { fbDelHisto = bDelHisto;} //
62   void SetThreshold(Int_t threshold = 10 ) { fThreshold = threshold ;} //
63   /////////////  
64   AliH2F &  GetHis1() { return  *fH2Digit;}
65   AliH2F & GetHisBW() { return  *fH2DigitBW;}
66   TH1F &  GetHis2() { return  *fH1Digit;}
67   TH1F &  GetHis3() { return  *fH1Occu;}
68   TPad & GetPad1() {return *fpad1;}   
69   TPad & GetPad2() {return *fpad2;}   
70   TPad & GetPad3() {return *fpad3;}  
71   TCanvas &GetCanvas(){return *fcanvas;}
72 protected:
73
74 private:
75   TFile *fin;   //input TTRE file with digits
76   TFile *fout; //output file
77   TPad * fpad1;
78   TPad * fpad2;
79   TPad * fpad3;
80   TCanvas * fcanvas;
81   AliTPCParam * fTPCParam;
82   AliTPCD *fDParam;
83   Bool_t fbIOState;  
84   //state of Input and Output file : kTRUE if all is OK
85   Bool_t fbDigState; 
86   //state of Input digits tree kTRUE if ftree point to valid digit tree
87   TClonesArray  *fDigits;  //pointer to digits object used inanal 
88   TClonesArray  *fParticles; //pointer to particles array 
89   TTree   *ftree;  //pointer to tree with digits
90   Int_t fsec;  //actual sector of TPC  
91   Int_t frow;  //actual row of TPC 
92   Int_t fpad;  //actual pad
93   Int_t fEventN; //event number connected to
94   Int_t fTimeN;  //division number of the time
95   Float_t fTimeStart,fTimeStop;  //start and stop time for histograms
96   Int_t fOccuN;  //time division for occupancy calculating
97   TPaveText *  fTitle;  //  
98   Int_t fThreshold;   //treshold for the ocupancy definition
99   Bool_t fbDelHisto;   //swith which tell if we want to delete produced histogram
100   
101   AliH2F *fH2Digit; //two dimensional histogram - sector row
102   AliH2F *fH2DigitBW; //black and white histogram over treshold
103   TH1F *fH1Digit; //one dimensional histogram sector row pad
104   TH1F *fH1Occu; //occupancy graph  
105   TH1F *fHParticles; //histogram of particles contributing to digits  
106   TH1F *fHPartMultiplicity; 
107   //histogram of particles multiplicity
108   TH1F *fHAllP;  //histogram with accepted time bin for all  particles  
109   TH1F *fHSecondaryP;
110   //histogram with accepted time bin for secondary particles  
111   
112  ClassDef(AliTPCDigitsH,1)
113 };
114 #endif /* TTPCDIGITSH_H */