Separation of ALICE independent ANALYSIS code and ALICE specific code.
[u/mrichter/AliRoot.git] / ANALYSIS / AliAnalysisTaskSE.h
1 #ifndef ALIANALYSISTASKSE_H
2 #define ALIANALYSISTASKSE_H
3  
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 /* $Id$ */
8
9 #include "AliAnalysisTask.h"
10 class AliVEvent;
11 class AliAODEvent;
12 class AliMCEvent;
13 class TTree;
14
15
16
17 class AliAnalysisTaskSE : public AliAnalysisTask
18 {
19  public:
20     AliAnalysisTaskSE();
21     AliAnalysisTaskSE(const char* name);
22     virtual ~AliAnalysisTaskSE() {;}
23     // Implementation of interface methods
24     virtual void ConnectInputData(Option_t *option = "");
25     virtual void CreateOutputObjects();
26     virtual void Exec(Option_t* option);
27     virtual void SetDebugLevel(Int_t level) {fDebug = level;}
28     virtual void Init() {;}
29     // To be implemented by user
30     virtual void UserCreateOutputObjects()  {;}
31     virtual void UserExec(Option_t* option) {;}
32     
33     // Getters
34     virtual AliVEvent*   InputEvent()  {return fInputEvent;}
35     virtual AliAODEvent* AODEvent()    {return fOutputAOD;}
36     virtual TTree*       OutputTree()  {return fTreeA;}
37     virtual AliMCEvent*  MCEvent()     {return fMCEvent;}
38  protected:
39     Int_t         fDebug;        //  Debug flag
40     AliVEvent*    fInputEvent;   //! VEvent Input
41     AliAODEvent*  fOutputAOD;    //! AOD out 
42     AliMCEvent*   fMCEvent;      //! MC
43     TTree*        fTreeA;        //  AOD output Tree
44     ClassDef(AliAnalysisTaskSE, 1); // Analysis task for standard jet analysis
45 };
46  
47 #endif