Do not use time cut in case of simulation
[u/mrichter/AliRoot.git] / PWG2 / RESONANCES / AliRsnAnalysisPhi7TeV.h
CommitLineData
6279d59e 1//
2// Header file for implementation of data analysis aft 900 GeV
3//
4// Author: A. Pulvirenti
5//
6
7#ifndef ALIRSNANALYSISPHI7TEV_H
8#define ALIRSNANALYSISPHI7TEV_H
9
10#include "AliAnalysisTaskSE.h"
11#include "AliRsnTOFT0maker.h"
4c06ce33 12#include "AliESDtrackCuts.h"
6279d59e 13
14class TH1I;
4c06ce33 15class TH1F;
6279d59e 16class TTree;
17
18class AliStack;
19class AliESDEvent;
20class AliESDVertex;
21class AliESDpid;
22class AliTOFT0maker;
23class AliTOFcalib;
24
25class AliRsnAnalysisPhi7TeV : public AliAnalysisTaskSE
26{
27 public:
4c06ce33 28
29 enum
30 {
31 kGoodTracksPrimaryVertex = 0,
32 kGoodSPDPrimaryVertex = 1,
33 kFarTracksPrimaryVertex = 2,
34 kFarSPDPrimaryVertex = 3,
35 kNoGoodPrimaryVertex = 4,
36 kEvaluations = 5
37 };
6279d59e 38
39 AliRsnAnalysisPhi7TeV(const char *name = "Phi7TeV");
40 AliRsnAnalysisPhi7TeV(const AliRsnAnalysisPhi7TeV& copy);
41 AliRsnAnalysisPhi7TeV& operator=(const AliRsnAnalysisPhi7TeV& copy);
42 virtual ~AliRsnAnalysisPhi7TeV();
43
4c06ce33 44 void SetUseMC(Bool_t yn = kTRUE) {fUseMC = yn;}
6279d59e 45
4c06ce33 46 void SetMaxVz(Double_t v) {fMaxVz = v;}
6279d59e 47
4c06ce33 48 void SetITSband(Double_t v) {fMaxITSband = v;}
49
50 void SetTPCpLimit(Double_t v) {fTPCpLimit = v;}
51 void SetTPCrange(Double_t min, Double_t max) {fMinTPCband = min; fMaxTPCband = max;}
52 void SetTPCpar(Double_t p0, Double_t p1, Double_t p2, Double_t p3, Double_t p4)
53 {fTPCpar[0]=p0;fTPCpar[1]=p1;fTPCpar[2]=p2;fTPCpar[3]=p3;fTPCpar[4]=p4;}
54
55 void SetTOFcalibrateESD(Bool_t yn = kTRUE) {fTOFcalibrateESD = yn;}
56 void SetTOFcorrectTExp (Bool_t yn = kTRUE) {fTOFcorrectTExp = yn;}
57 void SetTOFuseT0 (Bool_t yn = kTRUE) {fTOFuseT0 = yn;}
58 void SetTOFtuneMC (Bool_t yn = kTRUE) {fTOFtuneMC = yn;}
59 void SetTOFresolution (Double_t v = 100.0) {fTOFresolution = v;}
60
61 virtual void UserCreateOutputObjects();
62 virtual void UserExec(Option_t *option = "");
63 virtual void Terminate(Option_t *option = "");
64
65 Int_t EventEval(AliESDEvent *esd);
66 Bool_t IsTPCtrack(AliESDtrack *track);
67 Bool_t IsITSSAtrack(AliESDtrack *track);
68 AliESDtrackCuts* GetCutsTPC() {return &fESDtrackCutsTPC;}
69 AliESDtrackCuts* GetCutsITS() {return &fESDtrackCutsITS;}
6279d59e 70
71 private:
72
4c06ce33 73 void ProcessESD(AliESDEvent *esd, AliStack *stack);
6279d59e 74 void ProcessMC(AliStack *stack);
75
76 Bool_t fUseMC; // use MC or data?
77
78 Short_t fPDG; // PDG code
4c06ce33 79 Char_t fCh; // control flag for like/unlike sign
80 Char_t fITS[2]; // check flag to know if one or both candidates are ITS standalone
6279d59e 81 Float_t fIM; // inv mass
82 Float_t fPt; // transv momentum
83 Float_t fY; // rapidity
84 Float_t fEta; // pseudo-rapidity
85
4c06ce33 86 Double_t fMaxVz; // range in Z of primary vertex w.r. to origin
87
88 Double_t fMaxITSband; // range for ITS de/dx band
6279d59e 89
90 Double_t fTPCpLimit; // limit to choose what band to apply
91 Double_t fTPCpar[5]; // parameters for TPC bethe-Bloch
92 Double_t fMinTPCband; // range for TPC de/dx band - min
93 Double_t fMaxTPCband; // range for TPC de/dx band - max
94
95 TTree *fRsnTreeComp; // output tree of computed pairs
96 TTree *fRsnTreeTrue; // output tree of true pairs
97 TList *fOutList; // list for monitoring histograms
98 TH1I *fHEvents; // histogram of event types
4c06ce33 99 TH1F *fVertexX[2]; // histogram of X coordinate of primary vertex ([0] = tracks, [1] = SPD)
100 TH1F *fVertexY[2]; // histogram of Y coordinate of primary vertex ([0] = tracks, [1] = SPD)
101 TH1F *fVertexZ[2]; // histogram of Z coordinate of primary vertex ([0] = tracks, [1] = SPD)
6279d59e 102
4c06ce33 103 AliESDtrackCuts fESDtrackCutsTPC; //! ESD standard defined track cuts for TPC tracks
104 AliESDtrackCuts fESDtrackCutsITS; //! ESD standard defined track cuts for ITS-SA tracks
6279d59e 105 AliESDpid *fESDpid; //! PID manager
106 AliTOFT0maker *fTOFmaker; //! TOF time0 computator
107 AliTOFcalib *fTOFcalib; //! TOF calibration
108 Bool_t fTOFcalibrateESD; // TOF settings
109 Bool_t fTOFcorrectTExp; // TOF settings
110 Bool_t fTOFuseT0; // TOF settings
111 Bool_t fTOFtuneMC; // TOF settings
112 Double_t fTOFresolution; // TOF settings
113
114 // ROOT dictionary
115 ClassDef(AliRsnAnalysisPhi7TeV,1)
116};
117
118#endif