Move creation and filling of analysis parameters from LocalInit to Terminate
[u/mrichter/AliRoot.git] / PWG / CaloTrackCorrBase / AliAnalysisTaskCaloTrackCorrelation.h
1 #ifndef ALIANALYSISTASKCALOTRACKCORRELATION_H
2 #define ALIANALYSISTASKCALOTRACKCORRELATION_H
3  
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6  
7 //_________________________________________________________________________
8 // Analysis task that executes the analysis classes
9 // that depend on the CaloTrackCorr frame, frame for Particle identification 
10 // with calorimeters and tracks and correlations.
11 // Specially designed for calorimeters but also can be used for charged tracks
12 // Input of this task is a configuration file that contains all the settings 
13 // of the analysis
14 //
15 // -- Author: Gustavo Conesa (INFN-LNF, LPSC-Grenoble)
16
17 //--- Root ---
18 class TList;
19
20 //--- AliRoot ---
21 #include "AliAnalysisTaskSE.h"
22 class AliAnaCaloTrackCorrMaker;
23 class AliESDEvent;
24 class AliAODEvent;
25
26 class AliAnalysisTaskCaloTrackCorrelation : public AliAnalysisTaskSE
27 {
28  public:
29   
30   AliAnalysisTaskCaloTrackCorrelation();
31   AliAnalysisTaskCaloTrackCorrelation(const char* name);
32   virtual ~AliAnalysisTaskCaloTrackCorrelation() ; // virtual dtor
33   
34   // Implementation of interface methods
35   
36   virtual void UserCreateOutputObjects();
37   virtual void Init();
38   virtual void LocalInit() ;
39   virtual void UserExec (Option_t *option);
40   virtual void Terminate(Option_t *option);
41   virtual void FinishTaskOutput();
42   
43   // Setters
44   
45   void         SetAnalysisMaker(AliAnaCaloTrackCorrMaker * const maker) 
46                                                   { fAna = maker         ; } 
47   
48   void         SetConfigFileName(TString & name ) { fConfigName = name   ; }
49   TString      GetConfigFileName()          const { return fConfigName   ; }
50           
51  private:
52   AliAnalysisTaskCaloTrackCorrelation           (const AliAnalysisTaskCaloTrackCorrelation&); // Not implemented
53   AliAnalysisTaskCaloTrackCorrelation& operator=(const AliAnalysisTaskCaloTrackCorrelation&); // Not implemented
54   
55   AliAnaCaloTrackCorrMaker* fAna;  //  Pointer to the manager class 
56   TList * fOutputContainer ;       //! Histogram container
57   TString fConfigName ;            //  Configuration file name
58   TList * fCuts ;                  //! List with analysis cuts
59   
60   ClassDef(AliAnalysisTaskCaloTrackCorrelation, 3); // Analysis task for standard gamma correlation analysis
61 };
62
63 #endif //ALIANALYSISTASKCALOTRACKCORRELATION_H