making the container name parameterized
[u/mrichter/AliRoot.git] / PWG / CaloTrackCorrBase / AliAnaCaloTrackCorrMaker.h
CommitLineData
f15155ed 1#ifndef ALIANACALOTRACKCORRMAKER_H
2#define ALIANACALOTRACKCORRMAKER_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6//_____________________________________________________________________________
7// Steering class for particle (gamma, hadron) identification and correlation
8// analysis. It is called by the task class AliAnalysisTaskCaloTrackCorrelation
9// and it connects the input (ESD/AOD/MonteCarlo) got with AliCaloTrackReader
10// (produces TClonesArrays of AODs (TParticles in MC case if requested)), with
11// the analysis classes that derive from AliAnaCaloTrackCorrBaseClass
12//
13// -- Author: Gustavo Conesa (INFN-LNF, LPSC-Grenoble)
14
15// --- ROOT system ---
16class TList;
17class TClonesArray;
18#include<TObject.h>
19class TH1I;
20
21// --- Analysis system ---
22#include "AliCaloTrackReader.h"
23#include "AliCalorimeterUtils.h"
24
25class AliAnaCaloTrackCorrMaker : public TObject {
26
27 public:
4c795f31 28
f15155ed 29 AliAnaCaloTrackCorrMaker() ; // default ctor
30 virtual ~AliAnaCaloTrackCorrMaker() ; // virtual dtor
31 AliAnaCaloTrackCorrMaker(const AliAnaCaloTrackCorrMaker & maker) ; // cpy ctor
f15155ed 32
accd903d 33 // Setters and Getters
34
f15155ed 35 void AddAnalysis(TObject* ana, Int_t n) ;
36
37 TList * GetListOfAnalysisCuts();
38 TList * GetOutputContainer() ;
39
40 TList * FillAndGetAODBranchList();
41
42 Int_t GetAnaDebug() const { return fAnaDebug ; }
43 void SetAnaDebug(Int_t d) { fAnaDebug = d ; }
44
45 Bool_t AreHistogramsMade() const { return fMakeHisto ; }
46 void SwitchOnHistogramsMaker() { fMakeHisto = kTRUE ; }
47 void SwitchOffHistogramsMaker() { fMakeHisto = kFALSE ; }
48
49 Bool_t AreAODsMade() const { return fMakeAOD ; }
50 void SwitchOnAODsMaker() { fMakeAOD = kTRUE ; }
51 void SwitchOffAODsMaker() { fMakeAOD = kFALSE ; }
52
53
54 AliCaloTrackReader * GetReader() { if(!fReader) fReader = new AliCaloTrackReader ();
55 return fReader ; }
56 void SetReader(AliCaloTrackReader * reader) { fReader = reader ; }
57
58 AliCalorimeterUtils * GetCaloUtils() { if(!fCaloUtils) fCaloUtils = new AliCalorimeterUtils();
59 return fCaloUtils ; }
60 void SetCaloUtils(AliCalorimeterUtils * caloutils) { fCaloUtils = caloutils ; }
61
accd903d 62 void SetScaleFactor(Double_t scale) { fScaleFactor = scale ; }
63
64
65 // Main general methods
66
f15155ed 67 void Init();
68
69 void InitParameters();
70
71 void Print(const Option_t * opt) const;
72
73 void ProcessEvent(const Int_t iEntry, const char * currentFileName) ;
74
75 void Terminate(TList * outputList);
76
accd903d 77
f15155ed 78 private:
79
80 //General Data members
81
accd903d 82 AliCaloTrackReader * fReader ; // Pointer to reader
83 AliCalorimeterUtils * fCaloUtils ; // Pointer to CalorimeterUtils
4c795f31 84
accd903d 85 TList * fOutputContainer ; //! Output histograms container
86 TList * fAnalysisContainer ; // List with analysis pointers
87 Bool_t fMakeHisto ; // If true makes final analysis with histograms as output
88 Bool_t fMakeAOD ; // If true makes analysis generating AODs
89 Int_t fAnaDebug; // Debugging info.
90 TList * fCuts ; //! List with analysis cuts
91 Double_t fScaleFactor ; // Scaling factor needed for normalization
92
4c795f31 93 // Control histograms
accd903d 94 TH1I * fhNEvents; //! Number of events counter histogram
099de61e 95 TH1I * fhNPileUpEvents; //! N events pasing pile up cut
accd903d 96 TH1F * fhZVertex; //! Vertex of accepted event
97 TH1I * fhTrackMult; //! Number of tracks per event histogram
98 TH1F * fhCentrality; //! Histogram with centrality bins
f7eac3ca 99 TH1F * fhEventPlaneAngle; //! Histogram with Event plane angle
accd903d 100 TH1I * fhNMergedFiles; //! Number of files merged
101 TH1F * fhScaleFactor; //! Factor to scale histograms
f15155ed 102
103 AliAnaCaloTrackCorrMaker & operator = (const AliAnaCaloTrackCorrMaker & ) ; // cpy assignment
104
f7eac3ca 105 ClassDef(AliAnaCaloTrackCorrMaker,12)
f15155ed 106} ;
107
108
109#endif //ALIANACALOTRACKCORRMAKER_H
110
111
112