]>
Commit | Line | Data |
---|---|---|
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" | |
12 | ||
13 | class TH1I; | |
14 | class TTree; | |
15 | ||
16 | class AliStack; | |
17 | class AliESDEvent; | |
18 | class AliESDVertex; | |
19 | class AliESDpid; | |
20 | class AliTOFT0maker; | |
21 | class AliTOFcalib; | |
22 | ||
23 | class AliRsnAnalysisPhi7TeV : public AliAnalysisTaskSE | |
24 | { | |
25 | public: | |
26 | ||
27 | AliRsnAnalysisPhi7TeV(const char *name = "Phi7TeV"); | |
28 | AliRsnAnalysisPhi7TeV(const AliRsnAnalysisPhi7TeV& copy); | |
29 | AliRsnAnalysisPhi7TeV& operator=(const AliRsnAnalysisPhi7TeV& copy); | |
30 | virtual ~AliRsnAnalysisPhi7TeV(); | |
31 | ||
32 | void SetUseMC(Bool_t yn = kTRUE) {fUseMC = yn;} | |
33 | ||
34 | void SetMaxDCAr(Double_t v) {fMaxDCAr = v;} | |
35 | void SetMaxDCAz(Double_t v) {fMaxDCAz = v;} | |
36 | void SetMaxChi2(Double_t v) {fMaxChi2 = v;} | |
37 | void SetMinNTPC(Int_t n) {fMinNTPC = n;} | |
38 | ||
39 | void SetTPCpLimit(Double_t v) {fTPCpLimit = v;} | |
40 | void SetTPCrange(Double_t min, Double_t max) {fMinTPCband = min; fMaxTPCband = max;} | |
41 | void SetTPCpar(Double_t p0, Double_t p1, Double_t p2, Double_t p3, Double_t p4) | |
42 | {fTPCpar[0]=p0;fTPCpar[1]=p1;fTPCpar[2]=p2;fTPCpar[3]=p3;fTPCpar[4]=p4;} | |
43 | ||
44 | void SetTOFcalibrateESD(Bool_t yn = kTRUE) {fTOFcalibrateESD = yn;} | |
45 | void SetTOFcorrectTExp (Bool_t yn = kTRUE) {fTOFcorrectTExp = yn;} | |
46 | void SetTOFuseT0 (Bool_t yn = kTRUE) {fTOFuseT0 = yn;} | |
47 | void SetTOFtuneMC (Bool_t yn = kTRUE) {fTOFtuneMC = yn;} | |
48 | void SetTOFresolution (Double_t v = 100.0) {fTOFresolution = v;} | |
49 | ||
50 | virtual void UserCreateOutputObjects(); | |
51 | virtual void UserExec(Option_t *option = ""); | |
52 | virtual void Terminate(Option_t *option = ""); | |
53 | ||
54 | private: | |
55 | ||
56 | void ProcessESD(AliESDEvent *esd, const AliESDVertex *v, AliStack *stack); | |
57 | void ProcessMC(AliStack *stack); | |
58 | ||
59 | Bool_t fUseMC; // use MC or data? | |
60 | ||
61 | Short_t fPDG; // PDG code | |
62 | Float_t fIM; // inv mass | |
63 | Float_t fPt; // transv momentum | |
64 | Float_t fY; // rapidity | |
65 | Float_t fEta; // pseudo-rapidity | |
66 | ||
67 | Double_t fMaxDCAr; // transverse DCA | |
68 | Double_t fMaxDCAz; // longitudinal DCA | |
69 | Double_t fMaxChi2; // track normalized chi2 | |
70 | Int_t fMinNTPC; // number of TPC clusters | |
71 | ||
72 | Double_t fTPCpLimit; // limit to choose what band to apply | |
73 | Double_t fTPCpar[5]; // parameters for TPC bethe-Bloch | |
74 | Double_t fMinTPCband; // range for TPC de/dx band - min | |
75 | Double_t fMaxTPCband; // range for TPC de/dx band - max | |
76 | ||
77 | TTree *fRsnTreeComp; // output tree of computed pairs | |
78 | TTree *fRsnTreeTrue; // output tree of true pairs | |
79 | TList *fOutList; // list for monitoring histograms | |
80 | TH1I *fHEvents; // histogram of event types | |
81 | TH1I *fHCuts; // histogram telling how many tracks don't pass each cut | |
82 | ||
83 | AliESDpid *fESDpid; //! PID manager | |
84 | AliTOFT0maker *fTOFmaker; //! TOF time0 computator | |
85 | AliTOFcalib *fTOFcalib; //! TOF calibration | |
86 | Bool_t fTOFcalibrateESD; // TOF settings | |
87 | Bool_t fTOFcorrectTExp; // TOF settings | |
88 | Bool_t fTOFuseT0; // TOF settings | |
89 | Bool_t fTOFtuneMC; // TOF settings | |
90 | Double_t fTOFresolution; // TOF settings | |
91 | ||
92 | // ROOT dictionary | |
93 | ClassDef(AliRsnAnalysisPhi7TeV,1) | |
94 | }; | |
95 | ||
96 | #endif |