]>
Commit | Line | Data |
---|---|---|
5c33329d | 1 | #ifndef ALIANALYSISTASKBF_CXX\r |
2 | #define ALIANALYSISTASKBF_CXX\r | |
3 | \r | |
4 | // Analysis task for the BF code\r | |
5 | // Authors: Panos Cristakoglou@cern.ch\r | |
6 | \r | |
2cd42194 | 7 | class TList;\r |
8 | class TH1F;\r | |
3feee083 | 9 | class TH2F;\r |
2cd42194 | 10 | \r |
5c33329d | 11 | class AliBalance;\r |
5115b492 | 12 | class AliESDtrackCuts;\r |
5c33329d | 13 | \r |
2cd42194 | 14 | #include "AliAnalysisTaskSE.h"\r |
3feee083 | 15 | #include "AliBalance.h"\r |
16 | \r | |
5c33329d | 17 | \r |
2cd42194 | 18 | class AliAnalysisTaskBF : public AliAnalysisTaskSE {\r |
5c33329d | 19 | public:\r |
20 | AliAnalysisTaskBF(const char *name = "AliAnalysisTaskBF");\r | |
6432ac6a | 21 | virtual ~AliAnalysisTaskBF(); \r |
5c33329d | 22 | \r |
3feee083 | 23 | \r |
2cd42194 | 24 | virtual void UserCreateOutputObjects();\r |
25 | virtual void UserExec(Option_t *option);\r | |
3feee083 | 26 | virtual void FinishTaskOutput();\r |
5c33329d | 27 | virtual void Terminate(Option_t *);\r |
9d1f0df5 | 28 | \r |
10a747d2 | 29 | void SetAnalysisObject(AliBalance *const analysis) {\r |
1900bf4e | 30 | fBalance = analysis;\r |
10a747d2 | 31 | }\r |
32 | void SetShufflingObject(AliBalance *const analysisShuffled) {\r | |
33 | fRunShuffling = kTRUE;\r | |
1900bf4e | 34 | fShuffledBalance = analysisShuffled;\r |
35 | }\r | |
5115b492 | 36 | void SetAnalysisCutObject(AliESDtrackCuts *const trackCuts) {\r |
37 | fESDtrackCuts = trackCuts;}\r | |
48821416 | 38 | void SetVertexDiamond(Double_t vx, Double_t vy, Double_t vz) {\r |
7f94638c | 39 | fVxMax = vx;\r |
40 | fVyMax = vy;\r | |
41 | fVzMax = vz;\r | |
42 | }\r | |
6432ac6a | 43 | void SetAODtrackCutBit(Int_t bit){\r |
44 | nAODtrackCutBit = bit;\r | |
45 | }\r | |
3feee083 | 46 | void SetKinematicsCutsAOD(Double_t ptmin, Double_t ptmax, Double_t etamin, Double_t etamax){\r |
47 | fPtMin = ptmin;\r | |
48 | fPtMax = ptmax;\r | |
49 | fEtaMin = etamin;\r | |
50 | fEtaMax = etamax;\r | |
51 | \r | |
52 | }\r | |
1900bf4e | 53 | void SetExtraDCACutsAOD(Double_t DCAxy, Double_t DCAz){\r |
54 | fDCAxyCut = DCAxy;\r | |
55 | fDCAzCut = DCAz;\r | |
56 | }\r | |
10a747d2 | 57 | void SetKinematicsCutsMC(Double_t ptmin, Double_t ptmax,\r |
58 | Double_t etamin, Double_t etamax){\r | |
59 | fPtMin = ptmin; fPtMax = ptmax;\r | |
60 | fEtaMin = etamin; fEtaMax = etamax;\r | |
61 | }\r | |
62 | \r | |
3feee083 | 63 | //Centrality\r |
64 | void SetCentralityEstimator(const char* centralityEstimator) {fCentralityEstimator = centralityEstimator;}\r | |
65 | const char* GetCentralityEstimator(void) {return fCentralityEstimator;}\r | |
66 | void SetCentralityPercentileRange(Double_t min, Double_t max) { \r | |
67 | fCentralityPercentileMin=min;\r | |
68 | fCentralityPercentileMax=max;\r | |
69 | }\r | |
7f94638c | 70 | \r |
09bb7bf4 | 71 | void UseOfflineTrigger() {fUseOfflineTrigger = kTRUE;}\r |
72 | \r | |
5c33329d | 73 | private:\r |
5c33329d | 74 | AliBalance *fBalance; //BF object\r |
10a747d2 | 75 | Bool_t fRunShuffling;//run shuffling or not\r |
1900bf4e | 76 | AliBalance *fShuffledBalance; //BF object (shuffled)\r |
2cd42194 | 77 | TList *fList; //fList object\r |
3feee083 | 78 | TList *fListBF; //fList object\r |
6432ac6a | 79 | TList *fListBFS; //fList object\r |
3feee083 | 80 | \r |
2cd42194 | 81 | TH1F *fHistEventStats; //event stats\r |
3feee083 | 82 | TH1F *fHistTrackStats; //Track filter bit stats\r |
09bb7bf4 | 83 | TH1F *fHistVx; //x coordinate of the primary vertex\r |
84 | TH1F *fHistVy; //y coordinate of the primary vertex\r | |
85 | TH1F *fHistVz; //z coordinate of the primary vertex\r | |
2cd42194 | 86 | \r |
3feee083 | 87 | TH2F *fHistClus;\r |
88 | TH2F *fHistDCA;\r | |
89 | TH1F *fHistChi2;\r | |
90 | TH1F *fHistPt;\r | |
91 | TH1F *fHistEta;\r | |
92 | TH1F *fHistPhi;\r | |
93 | TH2F *fHistV0M;\r | |
94 | \r | |
5115b492 | 95 | AliESDtrackCuts *fESDtrackCuts; //ESD track cuts\r |
96 | \r | |
3feee083 | 97 | TString fCentralityEstimator; //"V0M","TRK","TKL","ZDC","FMD"\r |
98 | Double_t fCentralityPercentileMin;\r | |
99 | Double_t fCentralityPercentileMax;\r | |
100 | \r | |
09bb7bf4 | 101 | Bool_t fUseOfflineTrigger;//Usage of the offline trigger selection\r |
102 | \r | |
7f94638c | 103 | Double_t fVxMax;//vxmax\r |
09bb7bf4 | 104 | Double_t fVyMax;//vymax\r |
105 | Double_t fVzMax;//vzmax\r | |
7f94638c | 106 | \r |
6432ac6a | 107 | Int_t nAODtrackCutBit;//track cut bit from track selection (only used for AODs)\r |
108 | \r | |
3feee083 | 109 | Double_t fPtMin;//only used for AODs\r |
110 | Double_t fPtMax;//only used for AODs\r | |
111 | Double_t fEtaMin;//only used for AODs\r | |
112 | Double_t fEtaMax;//only used for AODs\r | |
113 | \r | |
1900bf4e | 114 | Double_t fDCAxyCut;//only used for AODs\r |
115 | Double_t fDCAzCut;//only used for AODs\r | |
116 | \r | |
5c33329d | 117 | AliAnalysisTaskBF(const AliAnalysisTaskBF&); // not implemented\r |
118 | AliAnalysisTaskBF& operator=(const AliAnalysisTaskBF&); // not implemented\r | |
119 | \r | |
3feee083 | 120 | ClassDef(AliAnalysisTaskBF, 5); // example of analysis\r |
5c33329d | 121 | };\r |
122 | \r | |
123 | #endif\r |