1 #ifndef ALITPCCALIBTIME_H
2 #define ALITPCCALIBTIME_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
7 #include "AliTPCcalibBase.h"
11 #include "TObjArray.h"
20 class AliTPCcalibLaser;
22 #include "TTreeStream.h"
25 class AliTPCcalibTime:public AliTPCcalibBase {
28 AliTPCcalibTime(const Text_t *name, const Text_t *title, UInt_t StartTime, UInt_t EndTime, Int_t deltaIntegrationTimeDeDx, Int_t deltaIntegrationTimeVdrift);
29 virtual ~AliTPCcalibTime();
31 virtual void Process(AliESDEvent *event);
32 virtual Long64_t Merge(TCollection *li);
33 virtual void Analyze();
35 static Bool_t IsLaser(AliESDEvent *event);
36 void ProcessLaser (AliESDEvent *event);
37 void ProcessCosmic(AliESDEvent *event);
38 Bool_t IsPair(AliExternalTrackParam *tr0, AliExternalTrackParam *tr1);
40 THnSparse * GetHistVdrift(){return (THnSparse*) fHistVdrift;};
41 THnSparse * GetHistDeDxVsTgl(){return (THnSparse*) fHistDeDxTgl;};
42 THnSparse * GetHistDeDx(){return (THnSparse*) fHistDeDx;};
43 THnSparse * GetHistVdriftLaserA(Int_t index=1){return (THnSparse*) fHistVdriftLaserA[index];};
44 THnSparse * GetHistVdriftLaserC(Int_t index=1){return (THnSparse*) fHistVdriftLaserC[index];};
45 TMap * GetMapDz(){return (TMap *) fMapDz;};
48 void Process(AliESDtrack *track, Int_t runNo=-1){AliTPCcalibBase::Process(track,runNo);};
49 void Process(AliTPCseed *track){return AliTPCcalibBase::Process(track);}
51 void ResetCurrent(); // reset current values
53 THnSparse * fHistDeDxTgl; // dEdx vs. dip angle vs time histogram
54 THnSparse * fHistDeDx; // dEdx vs. time histogram (cosmics: all particles on Fermi plateau)
55 THnSparse * fHistVdrift; // drift velocity vs time histogram
57 Float_t fIntegrationTimeDeDx; // required statistics for each dEdx time bin
58 Float_t fIntegrationTimeVdrift; // required statistics for each Vdrift time bin
60 AliTPCcalibLaser * fLaser; //! laser calibration
62 // current information
64 Float_t fDz; //! current delta z
65 Float_t fdEdx; //! current dEdx
66 Float_t fdEdxRatio; //! current dEdx ratio
67 Float_t fTl; //! current tan(lambda)
71 Float_t fCutMaxD; // maximal distance in rfi ditection
72 Float_t fCutMaxDz; // maximal distance in z ditection
73 Float_t fCutTheta; // maximal distance in theta ditection
74 Float_t fCutMinDir; // direction vector products
76 AliTPCcalibTime(const AliTPCcalibTime&);
77 AliTPCcalibTime& operator=(const AliTPCcalibTime&);
81 THnSparse * fHistVdriftLaserA[3]; //NEW! Histograms for V drift from laser
82 THnSparse * fHistVdriftLaserC[3]; //NEW! Histograms for V drift from laser
84 TMap * fMapDz; //NEW! Tmap of V drifts for different triggers
86 Int_t fTimeBins; //NEW! Bins time
87 Double_t fTimeStart; //NEW! Start time
88 Double_t fTimeEnd; //NEW! End time
89 Int_t fPtBins; //NEW! Bins pt
90 Double_t fPtStart; //NEW! Start pt
91 Double_t fPtEnd; //NEW! End pt
92 Int_t fVdriftBins; //NEW! Bins vdrift
93 Double_t fVdriftStart; //NEW! Start vdrift
94 Double_t fVdriftEnd; //NEW! End vdrift
95 Int_t fRunBins; //NEW! Bins run
96 Double_t fRunStart; //NEW! Start run
97 Double_t fRunEnd; //NEW! End run
98 Int_t fBinsVdrift[4]; //NEW! Bins for vdrift
99 Double_t fXminVdrift[4]; //NEW! Xmax for vdrift
100 Double_t fXmaxVdrift[4]; //NEW! Xmin for vdrift
101 ClassDef(AliTPCcalibTime, 1);