]>
Commit | Line | Data |
---|---|---|
3c8efc07 | 1 | #ifndef ALITOFANALYSISTASKCALIBPASS0_H |
2 | #define ALITOFANALYSISTASKCALIBPASS0_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 | // This class provides TOF pass0/passX calibration tools // | |
10 | // // | |
11 | /////////////////////////////////////////////////////////////// | |
12 | ||
13 | #include "AliAnalysisTaskSE.h" | |
14 | ||
15 | class AliESDtrack; | |
16 | class AliESDEvent; | |
17 | class AliPhysicsSelection; | |
18 | class AliESDtrackCuts; | |
19 | class AliESDVertex; | |
20 | class AliGRPManager; | |
21 | class AliGRPObject; | |
22 | class AliTOFcalib; | |
23 | class TList; | |
24 | class TH2F; | |
25 | class TF1; | |
26 | class TH1D; | |
27 | ||
28 | class AliTOFAnalysisTaskCalibPass0 : | |
29 | public AliAnalysisTaskSE | |
30 | { | |
31 | ||
32 | public: | |
33 | ||
34 | AliTOFAnalysisTaskCalibPass0(); // default constructor | |
35 | virtual ~AliTOFAnalysisTaskCalibPass0(); // default destructor | |
36 | ||
37 | virtual void UserCreateOutputObjects(); // user create output objects | |
38 | virtual void UserExec(Option_t *); // user exec | |
39 | ||
40 | /* getters */ | |
41 | AliPhysicsSelection *GetEventCuts() const {return fEventCuts;}; // getter | |
42 | AliESDtrackCuts *GetTrackCuts() const {return fTrackCuts;}; // getter | |
43 | AliTOFcalib *GetTOFcalib() const {return fTOFcalib;}; // getter | |
44 | ||
45 | /* setters */ | |
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 | |
49 | ||
50 | /* post-processing methods */ | |
51 | Bool_t ProcessOutput(const Char_t *filename, const Char_t *dbString); // process output | |
52 | ||
53 | protected: | |
54 | ||
55 | AliTOFAnalysisTaskCalibPass0(const AliTOFAnalysisTaskCalibPass0 &); // copy constructor | |
56 | AliTOFAnalysisTaskCalibPass0 &operator=(const AliTOFAnalysisTaskCalibPass0 &); // operator= | |
57 | ||
58 | /* methods */ | |
59 | Bool_t InitRun(); // init run | |
60 | Bool_t InitEvent(); // init event | |
61 | Bool_t HasTOFMeasurement(const AliESDtrack *track) const ; // has TOF measurement | |
62 | ||
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 | |
67 | ||
68 | /* flags and cuts */ | |
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 | |
73 | ||
74 | /* ESD analysis */ | |
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 | |
84 | ||
85 | /* GRP related stuff */ | |
86 | AliGRPManager *fGRPManager; // GRP manager | |
87 | const AliGRPObject *fkGRPObject; // GRP object | |
88 | ||
89 | /* TOF related stuff */ | |
90 | AliTOFcalib *fTOFcalib; // TOF calib | |
91 | ||
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 | |
100 | ||
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 | |
105 | ||
106 | ||
107 | ClassDef(AliTOFAnalysisTaskCalibPass0, 1); | |
108 | }; | |
109 | ||
110 | #endif /* ALIANALYSISTASKEVENTTIME_H */ |