]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGLF/SPECTRA/ChargedHadrons/dNdPt/AlidNdPtCutAnalysisPbPb.h
Added distributions in phi, updated AddTask accordingly
[u/mrichter/AliRoot.git] / PWGLF / SPECTRA / ChargedHadrons / dNdPt / AlidNdPtCutAnalysisPbPb.h
CommitLineData
dac20c1b 1#ifndef ALIDNDPTCUTANALYSISPBPB_H
2#define ALIDNDPTCUTANALYSISPBPB_H
3
4//------------------------------------------------------------------------------
5// AlidNdPtCutAnalysisPbPb class to determine
6// cuts to be used for dNdPt analysis.
7//
8// Author: J.Otwinowski 12/11/2010
9//------------------------------------------------------------------------------
10
11class iostream;
12class TFile;
13class TCint;
14class TProfile;
15class TFolder;
16class TObjArray;
17class TString;
18class THnSparse;
19
20class AliESDtrackCuts;
21class AliVertexerTracks;
22class AliESD;
23class AliESDfriend;
24class AliESDfriendTrack;
25
26#include "AlidNdPt.h"
27
28class AlidNdPtCutAnalysisPbPb : public AlidNdPt {
29public :
30 AlidNdPtCutAnalysisPbPb();
31 AlidNdPtCutAnalysisPbPb(Char_t* name, Char_t* title);
32 ~AlidNdPtCutAnalysisPbPb();
33
34 // Init data members
35 virtual void Init();
36
37 // Process events
38 virtual void Process(AliESDEvent *const esdEvent=0, AliMCEvent *const mcEvent=0);
39
40 // Merge output objects (needed by PROOF)
41 virtual Long64_t Merge(TCollection* const list);
42
43 // Analyse output histograms
44 virtual void Analyse();
45
46 // Export objects to folder
47 virtual TFolder *ExportToFolder(TObjArray * const array=0);
48
49 // Get analysis folder
50 TFolder* GetAnalysisFolder() const {return fAnalysisFolder;}
51
52 // Create folder for analysed histograms
53 TFolder *CreateFolder(TString folder = "folderdNdPtAnalysis",TString title = "Analysed dNdPt histograms");
54
55 // Fill histograms
a26e43aa 56 void FillHistograms(AliESDEvent *const esdEvent, AliESDtrack *const esdTrack, AliStack *const stack, Float_t centralityF) const;
dac20c1b 57
58 // Getters
59 THnSparseF *GetEventCount() const {return fEventCount;}
60 THnSparseF *GetRecEventHist() const {return fRecEventHist;}
61 THnSparseF *GetMCEventHist() const {return fMCEventHist;}
62 THnSparseF *GetRecMCEventHist() const {return fRecMCEventHist;}
63
64 //
65 THnSparseF *GetRecMCTrackHist() const {return fRecMCTrackHist;}
66
10360c58 67
68 TString GetCentralityEstimator() const {return fCentralityEstimator; }
69 void SetCentralityEstimator(TString centEst="V0M") { fCentralityEstimator = centEst; }
70
dac20c1b 71private:
72
73 // analysis folder
74 TFolder *fAnalysisFolder; // folder for analysed histograms
75
76 //
77 // THnSparse event histograms
78 //
79 THnSparseF *fEventCount; //-> trig, trig + vertex
80
81 THnSparseF *fRecEventHist; //-> Xv:Yv:Zv:ResZv:Mult
82 THnSparseF *fMCEventHist; //-> mcXv:mcYv:mcZv
83 THnSparseF *fRecMCEventHist; //-> Xv-mcXv:Yv-mcYv:Zv-mcZv:Mult
84
85 //
86 // THnSparse track histograms
87 //
a26e43aa 88 THnSparseF *fRecMCTrackHist; //-> nCrossRows:chi2PerClust:chi2PerClustITS:nCrossRows/nFindableClust:fracSharedClust:DCAy:DCAz:eta:phi:pt:hasStrangeMother:isFromConversion:isFromMaterial:isPrim:charge:centr:chi2ToTPCc
10360c58 89 TString fCentralityEstimator; // use centrality can be "VOM" (default), "FMD", "TRK", "TKL", "CL0", "CL1", "V0MvsFMD", "TKLvsV0M", "ZEMvsZDC"
dac20c1b 90
a26e43aa 91 TObjArray *fFolderObj; // pointer to AnalysisFolder
92
dac20c1b 93 AlidNdPtCutAnalysisPbPb(const AlidNdPtCutAnalysisPbPb&); // not implemented
94 AlidNdPtCutAnalysisPbPb& operator=(const AlidNdPtCutAnalysisPbPb&); // not implemented
95
a26e43aa 96 ClassDef(AlidNdPtCutAnalysisPbPb,4);
dac20c1b 97};
98
99#endif