f0ea651738370759eed9b6c9e05fd6c442a8e36f
[u/mrichter/AliRoot.git] / PWG / CaloTrackCorrBase / AliAnalysisTaskCaloTrackCorrelationM.h
1 #ifndef ALIANALYSISTASKCALOTRACKCORRELATIONM_H
2 #define ALIANALYSISTASKCALOTRACKCORRELATIONM_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 "AliAnalysisTaskME.h"
22 class AliAnaCaloTrackCorrMaker;
23 class AliMixedEvent; 
24 class AliMCEvent; 
25
26 class AliAnalysisTaskCaloTrackCorrelationM : public AliAnalysisTaskME
27 {
28  public:
29   AliAnalysisTaskCaloTrackCorrelationM();
30   AliAnalysisTaskCaloTrackCorrelationM(const char* name);
31   virtual ~AliAnalysisTaskCaloTrackCorrelationM() ; // virtual dtor
32   
33   // Implementation of interface methods
34   virtual void UserCreateOutputObjects();
35   virtual void Init();
36   virtual void LocalInit() ;
37   virtual void UserExec(Option_t *option);
38   virtual void Terminate(Option_t *option);
39   
40   void         SetConfigFileName(TString & name ) { fConfigName = name ; }
41   TString      GetConfigFileName()          const { return fConfigName ; }
42         
43   void         SetAnalysisMaker(AliAnaCaloTrackCorrMaker * const maker) { fAna = maker ; } 
44   AliMixedEvent * InputEvent()                    { return fInputEvent ; }
45   AliMCEvent*  MCEvent()                          { return NULL        ; } // do something about MC event 
46
47  private:
48   AliAnalysisTaskCaloTrackCorrelationM(           const AliAnalysisTaskCaloTrackCorrelationM&); // Not implemented
49   AliAnalysisTaskCaloTrackCorrelationM& operator=(const AliAnalysisTaskCaloTrackCorrelationM&); // Not implemented
50   
51   AliAnaCaloTrackCorrMaker* fAna;  //  Pointer to the manager class 
52   TList * fOutputContainer ;       //! Histogram container
53   TString fConfigName ;            //  Configuration file name
54   TList * fCuts ;                  //! List with analysis cuts
55   
56   AliMixedEvent * fInputEvent;
57         
58   ClassDef(AliAnalysisTaskCaloTrackCorrelationM, 3); // Analysis task for standard gamma correlation analysis
59 };
60
61 #endif //ALIANALYSISTASKCALOTRACKCORRELATIONM_H