]>
Commit | Line | Data |
---|---|---|
1c5acb87 | 1 | #ifndef ALIANAPARTCORRMAKER_H |
2 | #define ALIANAPARTCORRMAKER_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | /* $Id: $ */ | |
6 | ||
7 | //_________________________________________________________________________ | |
8 | // Steering class for particle (gamma, hadron) identification and correlation analysis | |
9 | // It is called by the task class AliAnalysisTaskParticleCorrelation and it connects the input | |
10 | // (ESD/AOD/MonteCarlo) got with AliCaloTrackReader (produces TClonesArrays of AODs | |
11 | // (TParticles in MC case if requested)), with the | |
12 | // analysis classes that derive from AliAnaPartCorrBaseClass | |
13 | // | |
14 | // -- Author: Gustavo Conesa (INFN-LNF) | |
15 | ||
16 | // --- ROOT system --- | |
17 | class TList; | |
18 | class TClonesArray; | |
19 | #include<TObject.h> | |
20 | class TString; | |
21 | ||
22 | // --- Analysis system --- | |
23 | class AliCaloTrackReader ; | |
24 | ||
25 | class AliAnaPartCorrMaker : public TObject { | |
26 | ||
477d6cee | 27 | public: |
1c5acb87 | 28 | |
29 | AliAnaPartCorrMaker() ; // default ctor | |
30 | AliAnaPartCorrMaker(const AliAnaPartCorrMaker & g) ; // cpy ctor | |
31 | AliAnaPartCorrMaker & operator = (const AliAnaPartCorrMaker & g) ;//cpy assignment | |
32 | virtual ~AliAnaPartCorrMaker() ; //virtual dtor | |
477d6cee | 33 | |
1c5acb87 | 34 | //Setter and getters |
35 | TList * GetAODBranchList() ; | |
2e557d1c | 36 | TList * GetOutputContainer() ; |
1c5acb87 | 37 | |
38 | Int_t GetAnaDebug() const { return fAnaDebug ; } | |
39 | void SetAnaDebug(Int_t d) { fAnaDebug = d ; } | |
40 | ||
41 | Bool_t AreHistogramsMade() const { return fMakeHisto ; } | |
42 | void SwitchOnHistogramsMaker() { fMakeHisto = kTRUE ; } | |
43 | void SwitchOffHistogramsMaker() { fMakeHisto = kFALSE ; } | |
44 | ||
45 | Bool_t AreAODsMade() const { return fMakeAOD ; } | |
46 | void SwitchOnAODsMaker() { fMakeAOD = kTRUE ; } | |
47 | void SwitchOffAODsMaker() { fMakeAOD = kFALSE ; } | |
48 | ||
6639984f | 49 | void Terminate(); |
50 | ||
1c5acb87 | 51 | void AddAnalysis(TObject* ana, Int_t n) { |
477d6cee | 52 | if ( fAnalysisContainer) fAnalysisContainer->AddAt(ana,n); |
53 | else { printf("AliAnaPartCorrMaker::AddAnalysis() - AnalysisContainer not initialized\n"); | |
54 | abort();} | |
55 | } | |
56 | ||
1c5acb87 | 57 | AliCaloTrackReader * GetReader() const {return fReader ; } |
58 | void SetReader(AliCaloTrackReader * reader) { fReader = reader ; } | |
477d6cee | 59 | |
1c5acb87 | 60 | //Others |
61 | void Init(); | |
62 | void InitParameters(); | |
477d6cee | 63 | |
1c5acb87 | 64 | void Print(const Option_t * opt) const; |
477d6cee | 65 | |
1c5acb87 | 66 | Bool_t ProcessEvent(Int_t iEntry) ; |
477d6cee | 67 | |
1c5acb87 | 68 | private: |
69 | ||
70 | //General Data members | |
477d6cee | 71 | |
1c5acb87 | 72 | TList * fOutputContainer ; // output histograms container |
73 | TList * fAnalysisContainer ; // List with analysis pointers | |
74 | Bool_t fMakeHisto ; // If true makes final analysis with histograms as output | |
75 | Bool_t fMakeAOD ; // If true makes analysis generating AODs | |
76 | Int_t fAnaDebug; // Debugging info. | |
77 | ||
78 | AliCaloTrackReader * fReader ; // Pointer to reader | |
79 | TList * fAODBranchList ; //! List with AOD branches created and needed in analysis | |
80 | ||
81 | ClassDef(AliAnaPartCorrMaker,2) | |
82 | } ; | |
83 | ||
84 | ||
85 | #endif //ALIANAPARTCORRMAKER_H | |
86 | ||
87 | ||
88 |