1 #ifndef ALITOFANALYSISTASKCALIBPASS0_H
2 #define ALITOFANALYSISTASKCALIBPASS0_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
7 ///////////////////////////////////////////////////////////////
9 // This class provides TOF pass0/passX calibration tools //
11 ///////////////////////////////////////////////////////////////
13 #include "AliAnalysisTaskSE.h"
17 class AliPhysicsSelection;
18 class AliESDtrackCuts;
28 class AliTOFAnalysisTaskCalibPass0 :
29 public AliAnalysisTaskSE
34 AliTOFAnalysisTaskCalibPass0(); // default constructor
35 virtual ~AliTOFAnalysisTaskCalibPass0(); // default destructor
37 virtual void UserCreateOutputObjects(); // user create output objects
38 virtual void UserExec(Option_t *); // user exec
41 AliPhysicsSelection *GetEventCuts() const {return fEventCuts;}; // getter
42 AliESDtrackCuts *GetTrackCuts() const {return fTrackCuts;}; // getter
43 AliTOFcalib *GetTOFcalib() const {return fTOFcalib;}; // getter
46 void SetEventSelectionFlag(Bool_t value = kTRUE) {fEventSelectionFlag = value;}; // setter
47 void SetVertexSelectionFlag(Bool_t value = kTRUE) {fVertexSelectionFlag = value;}; // setter
48 void SetVertexCut(Double_t value) {fVertexCut = value;}; // setter
50 /* post-processing methods */
51 Bool_t ProcessOutput(const Char_t *filename, const Char_t *dbString); // process output
55 AliTOFAnalysisTaskCalibPass0(const AliTOFAnalysisTaskCalibPass0 &); // copy constructor
56 AliTOFAnalysisTaskCalibPass0 &operator=(const AliTOFAnalysisTaskCalibPass0 &); // operator=
59 Bool_t InitRun(); // init run
60 Bool_t InitEvent(); // init event
61 Bool_t HasTOFMeasurement(const AliESDtrack *track) const ; // has TOF measurement
63 /* post-processing methods */
64 Bool_t CheckMatchingPerformance(const TH2F *histoDeltazEta, const TH2F *histoAcceptedTracksEtaPt, const TH2F *histoMatchedTracksEtaPt) const; // check matching efficiency
65 Bool_t CalibrateAndStore(TH2F *histoVertexTimestamp, TH2F *histoDeltatTimestamp, const Char_t *dbString); // calibrate and store
66 Int_t FitPeak(TF1 *fitFunc, TH1D *h, Float_t startSigma, Float_t nSigmaMin, Float_t nSigmaMax); // fit peak
69 Bool_t fInitFlag; // init flag
70 Bool_t fEventSelectionFlag; // event selection flag
71 Bool_t fVertexSelectionFlag; // vertex selection flag
72 Double_t fVertexCut; // vertex cut
75 Int_t fRunNumber; // run number
76 AliESDEvent *fESDEvent; // ESD event
77 AliPhysicsSelection *fEventCuts; // event cuts
78 AliESDtrackCuts *fTrackCuts; // track cuts
79 UInt_t fStartTime; // start time
80 UInt_t fEndTime; // end time
81 UInt_t fEventTime; // event time
82 UInt_t fElapsedTime; // event time since start
83 const AliESDVertex *fkVertex; // vertex
85 /* GRP related stuff */
86 AliGRPManager *fGRPManager; // GRP manager
87 const AliGRPObject *fkGRPObject; // GRP object
89 /* TOF related stuff */
90 AliTOFcalib *fTOFcalib; // TOF calib
92 /* lists and histos */
93 TList *fHistoList; // list of histograms
94 TH2F *fHistoVertexTimestamp; // vertex-timestamp histo
95 TH2F *fHistoDeltatTimestamp; // deltat-timestamp histo
96 TH2F *fHistoDeltazEta; // deltaz-eta histo
97 TH2F *fHistoDeltazCosTheta; // deltaz-costheta histo
98 TH2F *fHistoAcceptedTracksEtaPt; // accepted tracks eta-pt histo
99 TH2F *fHistoMatchedTracksEtaPt; // matched tracks eta-pt histo
101 /* post-processing variables */
102 static const Int_t fgkMaxNumberOfPoints; // max number of points
103 static const Double_t fgkMinVertexIntegral; // min vertex integral
104 static const Double_t fgkMinDeltatIntegral; // min vertex integral
107 ClassDef(AliTOFAnalysisTaskCalibPass0, 1);
110 #endif /* ALIANALYSISTASKEVENTTIME_H */