]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TOF/AliTOFT0v1.h
Following bug report 52151, Offline Weekly Meeting of 12 April 2010, and SRC Meeting
[u/mrichter/AliRoot.git] / TOF / AliTOFT0v1.h
1 #ifndef ALITOFT0V1_H
2 #define ALITOFT0V1_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 //----------------------------------------------------------------------------//
8 //                                                                            //
9 //   Description: class to performe an event time measurment with TOF.        //
10 //                                                                            //
11 //----------------------------------------------------------------------------//
12
13 #include "TObject.h"
14 #include "TString.h"
15
16 class AliESDtrack;
17 class AliTOFcalibHisto;
18 class AliESDEvent;
19
20 class AliTOFT0v1: public TObject {
21 public:
22   
23   AliTOFT0v1() ;
24   AliTOFT0v1(const AliTOFT0v1 & tzero);
25   AliTOFT0v1 & operator=(const AliTOFT0v1 & tzero) ;
26   AliTOFT0v1(AliESDEvent *event);
27   virtual ~AliTOFT0v1() ; // dtor
28  
29   void SetCalib(AliTOFcalibHisto * const calib){fCalib = calib;};
30
31   Double_t* DefineT0(Option_t *option); 
32   Double_t* DefineT0RawCorrection(Option_t *option); 
33   
34   void      SetTimeResolution(Double_t timeresolution);// timeresolution in [s] e.g. for 120 ps -> 1.2e-10
35   
36   Double_t GetTimeResolution() const {return fTimeResolution;}
37   
38   void          SetMomBounds(Float_t pLow, Float_t pUp) { fLowerMomBound=pLow; fUpperMomBound=pUp;} // momenta are expressed in [GeV/c]
39   void          SetTimeCorr(Float_t timecorr) {fTimeCorr=timecorr;} //in ns!!!
40   Float_t       GetMomError(Int_t index, Float_t mom, Float_t texp) const;
41 /*   void  Print(Option_t* option) const ; */
42
43  private:
44
45   Bool_t AcceptTrack(AliESDtrack *track); /* accept track */
46   Float_t GetSigmaToVertex(AliESDtrack *track) const; /* get sigma to vertex */
47
48
49   Float_t fLowerMomBound;   // momentum lower bound for selected primary tracks   
50   Float_t fUpperMomBound;   // momentum upper bound for selected primary tracks 
51   Double_t fTimeResolution;  // global time resolution used to calculate T0
52   Float_t fTimeCorr;  // global time resolution used to calculate T0
53   AliESDEvent* fEvent;      //evento per il quale si vuole calcolare il T0
54   AliTOFcalibHisto *fCalib; // pointer to the class with the TOF time corrections
55
56   Double_t fT0SigmaT0def[4]; // array with the event information ([0]=event time -- [1] = sigma -- [2] = tracks on the TOF -- [3] = tracks used for the event time)
57   
58   ClassDef(AliTOFT0v1,2);  // Calculate the time zero using TOF detector */
59   
60 };
61
62 #endif