]>
Commit | Line | Data |
---|---|---|
ca8d2905 | 1 | // |
2 | // Header file for implementation of data analysis aft 900 GeV | |
3 | // | |
4 | // Author: A. Pulvirenti | |
5 | // | |
6 | ||
7 | #ifndef ALIRSNANALYSISPHI900GEV_H | |
8 | #define ALIRSNANALYSISPHI900GEV_H | |
b9bbd271 | 9 | |
10 | #include "AliAnalysisTaskSE.h" | |
11 | #include "AliRsnTOFT0maker.h" | |
12 | ||
d7417f01 | 13 | class TH1I; |
b9bbd271 | 14 | class TTree; |
d7417f01 | 15 | |
16 | class AliStack; | |
b9bbd271 | 17 | class AliESDEvent; |
18 | class AliESDVertex; | |
b9bbd271 | 19 | |
20 | class AliRsnAnalysisPhi900GeV : public AliAnalysisTaskSE | |
21 | { | |
22 | public: | |
23 | ||
24 | AliRsnAnalysisPhi900GeV(const char *name = "Phi900GeV"); | |
25 | AliRsnAnalysisPhi900GeV(const AliRsnAnalysisPhi900GeV& copy); | |
26 | AliRsnAnalysisPhi900GeV& operator=(const AliRsnAnalysisPhi900GeV& copy); | |
27 | virtual ~AliRsnAnalysisPhi900GeV(); | |
28 | ||
29 | void SetUseMC(Bool_t yn = kTRUE) {fUseMC = yn;} | |
30 | void SetMaxDCAr(Double_t v) {fDCAr = v;} | |
31 | void SetMaxDCAz(Double_t v) {fDCAz = v;} | |
32 | void SetMaxChi2(Double_t v) {fChi2 = v;} | |
33 | void SetMinNTPC(Int_t n) {fNTPC = n;} | |
d7417f01 | 34 | void SetTPCparams(Bool_t isMC); |
b9bbd271 | 35 | void SetTPCrange(Double_t min, Double_t max) {fMinTPC = min; fMaxTPC = max;} |
36 | void SetTPCpar(Double_t p0, Double_t p1, Double_t p2, Double_t p3, Double_t p4) | |
37 | {fTPCpar[0]=p0;fTPCpar[1]=p1;fTPCpar[2]=p2;fTPCpar[3]=p3;fTPCpar[4]=p4;} | |
38 | ||
d7417f01 | 39 | void SetTOFESD(Bool_t yn = kTRUE) {fTOFESD = yn;} |
40 | void SetTOFSigma(Double_t v) {fTOFSigma = v;} | |
41 | void SetTOFSettings(AliRsnTOFT0maker::ESettings set) {fTOFSettings = set;} | |
42 | ||
b9bbd271 | 43 | virtual void UserCreateOutputObjects(); |
44 | virtual void UserExec(Option_t *option = ""); | |
45 | virtual void Terminate(Option_t *option = ""); | |
46 | ||
47 | private: | |
48 | ||
49 | void ProcessESD(AliESDEvent *esd, const AliESDVertex *v, Double_t time0, AliStack *stack); | |
50 | void ProcessMC(AliStack *stack); | |
ca8d2905 | 51 | Double_t AlephBB(Double_t p, Double_t mass = 0.493677) const; |
b9bbd271 | 52 | Double_t RemakeTOFtimeMC(AliESDEvent *& esd); |
53 | ||
ca8d2905 | 54 | Bool_t fUseMC; // use MC or data? |
b9bbd271 | 55 | |
ca8d2905 | 56 | Short_t fPDG; // PDG code |
57 | Float_t fIM; // inv mass | |
58 | Float_t fPt; // transv momentum | |
59 | Float_t fY; // rapidity | |
60 | Float_t fEta; // pseud-o-rapidity | |
b9bbd271 | 61 | |
ca8d2905 | 62 | Double_t fDCAr; // transverse DCA |
63 | Double_t fDCAz; // longitudinal DCA | |
64 | Double_t fChi2; // track chi2 | |
65 | Int_t fNTPC; // number of TPC clusters | |
66 | ||
67 | Double_t fTPCpar[5]; // parameters for TPC bethe-Bloch | |
68 | Double_t fMinTPC; // range for TPC de/dx band - min | |
69 | Double_t fMaxTPC; // range for TPC de/dx band - max | |
70 | ||
71 | TTree *fOutTree[2]; // output tree | |
72 | TList *fOutList; // list for output event counts | |
73 | TH1I *fHEvents; // histogram of event types | |
b9bbd271 | 74 | |
75 | Bool_t fTOFESD; // TOF flag to check if ESD data should be used | |
76 | Double_t fTOFSigma; // TOF default resolution | |
77 | AliRsnTOFT0maker *fTOFmaker; //! TOF time0 computator | |
78 | AliRsnTOFT0maker::ESettings fTOFSettings; // TOF settings | |
79 | ||
80 | // ROOT dictionary | |
81 | ClassDef(AliRsnAnalysisPhi900GeV,1) | |
82 | }; | |
83 | ||
84 | #endif |