]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/RESONANCES/AliRsnAnalysisPhi7TeV.h
Added a new temporary analysis task for analysis of phi resonances at 7 TeV
[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"
12
13class TH1I;
14class TTree;
15
16class AliStack;
17class AliESDEvent;
18class AliESDVertex;
19class AliESDpid;
20class AliTOFT0maker;
21class AliTOFcalib;
22
23class 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