Adding new class AliTPCcalibTime
[u/mrichter/AliRoot.git] / TPC / AliTPCcalibTime.h
1 #ifndef ALITPCCALIBTIME_H
2 #define ALITPCCALIBTIME_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 #include "AliTPCcalibBase.h"
8 #include "TH2F.h"
9 #include "TF1.h"
10 #include "TArrayD.h"
11 #include "TObjArray.h"
12
13 class TH1F;
14 class TH3F;
15 class TH2F;
16 class THnSparse;
17 class TList;
18 class AliESDEvent;
19 class AliESDtrack;
20
21 #include "TTreeStream.h"
22
23  
24 class AliTPCcalibTime:public AliTPCcalibBase {
25 public:
26   AliTPCcalibTime(); 
27   AliTPCcalibTime(const Text_t *name, const Text_t *title, ULong64_t TriggerMask, UInt_t StartTime, UInt_t EndTime, Int_t deltaIntegrationTimeDeDx, Int_t deltaIntegrationTimeVdrift);
28   virtual ~AliTPCcalibTime();
29   
30   virtual void           Process(AliESDEvent *event);
31   virtual Long64_t       Merge(TCollection *li);
32   virtual void           Analyze();
33   //
34   void                   ProcessCosmic(AliESDEvent *event);
35   Bool_t                 IsPair(AliExternalTrackParam *tr0, AliExternalTrackParam *tr1);
36   //
37   THnSparse *                 GetHistVdrift(){return (THnSparse*) fHistVdrift;};
38   THnSparse *                 GetHistDeDxVsTgl(){return (THnSparse*) fHistDeDxTgl;};
39   THnSparse *                 GetHistDeDx(){return (THnSparse*) fHistDeDx;};
40
41   
42
43 private:
44
45   ULong64_t fTriggerMask;               // select certain trigger within one run
46
47   THnSparse * fHistDeDxTgl;             // dEdx vs. dip angle vs time histogram
48   THnSparse * fHistDeDx;                // dEdx vs. time histogram (cosmics: all particles on Fermi plateau)
49   THnSparse * fHistVdrift;              // drift velocity vs time histogram
50
51   Float_t fIntegrationTimeDeDx;         // required statistics for each dEdx time bin
52   Float_t fIntegrationTimeVdrift;       // required statistics for each Vdrift time bin
53
54   // cuts
55   //
56   Float_t fCutMaxD;     // maximal distance in rfi ditection
57   Float_t fCutTheta;    // maximal distance in theta ditection
58   Float_t fCutMinDir;   // direction vector products
59  
60   AliTPCcalibTime(const AliTPCcalibTime&); 
61   AliTPCcalibTime& operator=(const AliTPCcalibTime&); 
62
63   ClassDef(AliTPCcalibTime, 1); 
64 };
65
66 #endif
67
68