]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGCF/EBYE/Fluctuations/AliEbyEFluctuationAnalysisTask.h
end-of-line normalization
[u/mrichter/AliRoot.git] / PWGCF / EBYE / Fluctuations / AliEbyEFluctuationAnalysisTask.h
CommitLineData
7fac8669 1#ifndef AliEbyEFluctuationAnalysisTask_cxx
2#define AliEbyEFluctuationAnalysisTask_cxx
3
4// Event by event charge fluctuation analysis
5// Authors: Satyajit Jena and Panos Cristakoglou
6
7class TH1F;
8class TH2F;
9class TString;
10class AliESDEvent;
11class AliESDtrackCuts;
12
13#include "AliAnalysisTaskSE.h"
14
15const Int_t nCentralityBins = 20;
16
17class AliEbyEFluctuationAnalysisTask : public AliAnalysisTaskSE {
18 public:
19 AliEbyEFluctuationAnalysisTask() : AliAnalysisTaskSE(), fESD(0), fOutputList(0), fHistEventStats(0), fHistCentrality(0), fHistNMultMC(0), fHistNPlusNMinusMC(0), fESDtrackCuts(0), fAnalysisType(0), fAnalysisMode(0), fCentralityEstimator("V0M"), fCentralityBins20(kFALSE), fVxMax(3.0),fVyMax(3.0), fVzMax(10.) {
20 for(Int_t iBin = 0; iBin < nCentralityBins; iBin++) {
21 fHistNMult[iBin] = NULL;
22 fHistNPlusNMinus[iBin] = NULL;
23 }
24 }
25 AliEbyEFluctuationAnalysisTask(const char *name);
26 virtual ~AliEbyEFluctuationAnalysisTask() {}
27
28 virtual void UserCreateOutputObjects();
29 virtual void UserExec(Option_t *option);
30 virtual void Terminate(Option_t *);
31
32 void SetAnalysisCutObject(AliESDtrackCuts *const trackCuts) {
33 fESDtrackCuts = trackCuts;}
34 void SetVertexDiamond(Double_t vx, Double_t vy, Double_t vz) {
35 fVxMax = vx;
36 fVyMax = vy;
37 fVzMax = vz;
38 }
39
40 //Centrality
41 void SetCentralityEstimator(const char* centralityEstimator) {
42 fCentralityEstimator = centralityEstimator;}
43 void SetCentralityBins20() {fCentralityBins20 = kTRUE;}
44
45 void SetAnalysisType(const char* analysisType) {
46 fAnalysisType = analysisType;}
47 void SetAnalysisMode(const char* analysisMode) {
48 fAnalysisMode = analysisMode;}
49
50 private:
51 AliESDEvent *fESD; //! ESD object
52 TList *fOutputList; //! Output list
53 TH1F *fHistEventStats; //!event stats
54 TH1F *fHistCentrality; //!centrality
55 TH1F *fHistNMult[nCentralityBins]; //! nmult
56 TH2F *fHistNPlusNMinus[nCentralityBins];//!nplus vs nminus correlation
57 TH1F *fHistNMultMC; //!nmult MC
58 TH2F *fHistNPlusNMinusMC;//!nplus vs nminus correlation
59
60 AliESDtrackCuts *fESDtrackCuts; //ESD track cuts
61
62 TString fAnalysisType;//"MC", "ESD", "AOD"
63 TString fAnalysisMode;//"TPC", "Global"
64
65 TString fCentralityEstimator;//"V0M","TRK","TKL","ZDC","FMD"
66 Bool_t fCentralityBins20;//centrality bins of 5% width
67
68 Double_t fVxMax;//vxmax
69 Double_t fVyMax;//vymax
70 Double_t fVzMax;//vzmax
71
72 AliEbyEFluctuationAnalysisTask(const AliEbyEFluctuationAnalysisTask&); // not implemented
73 AliEbyEFluctuationAnalysisTask& operator=(const AliEbyEFluctuationAnalysisTask&); // not implemented
74
75 ClassDef(AliEbyEFluctuationAnalysisTask, 1); // example of analysis
76};
77
78#endif