Adding flexibility to submission macros
[u/mrichter/AliRoot.git] / PWG0 / 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
56 void FillHistograms(AliESDtrack *const esdTrack, AliStack *const stack) const;
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
67private:
68
69 // analysis folder
70 TFolder *fAnalysisFolder; // folder for analysed histograms
71
72 //
73 // THnSparse event histograms
74 //
75 THnSparseF *fEventCount; //-> trig, trig + vertex
76
77 THnSparseF *fRecEventHist; //-> Xv:Yv:Zv:ResZv:Mult
78 THnSparseF *fMCEventHist; //-> mcXv:mcYv:mcZv
79 THnSparseF *fRecMCEventHist; //-> Xv-mcXv:Yv-mcYv:Zv-mcZv:Mult
80
81 //
82 // THnSparse track histograms
83 //
6a01c05f 84 THnSparseF *fRecMCTrackHist; //-> nClust:chi2PerClust:nClust/nFindableClust:DCAy:DCAz:eta:phi:pt:hasStrangeMother:isFromMaterial:isPrim:charge
dac20c1b 85
86 AlidNdPtCutAnalysisPbPb(const AlidNdPtCutAnalysisPbPb&); // not implemented
87 AlidNdPtCutAnalysisPbPb& operator=(const AlidNdPtCutAnalysisPbPb&); // not implemented
88
89 ClassDef(AlidNdPtCutAnalysisPbPb,1);
90};
91
92#endif