First prototype the analysis framework
[u/mrichter/AliRoot.git] / ANALYSIS / AliAnalysis.h
1 #ifndef ALIANALYSIS_H
2 #define ALIANALYSIS_H
3 //________________________________
4 ///////////////////////////////////////////////////////////
5 //
6 // class AliAnalysis
7 //
8 // Base class for analysis
9 //
10 //
11 // Piotr.Skowronski@cern.ch
12 //
13 ///////////////////////////////////////////////////////////
14
15 #include <TTask.h>
16
17 class AliESD;
18 class AliStack;
19  
20 class AliAnalysis: public TTask
21 {
22   public: 
23     AliAnalysis();
24     AliAnalysis(const char* name,const char* title);
25     virtual ~AliAnalysis();
26     
27     virtual Int_t Init() = 0;
28     virtual Int_t ProcessEvent(AliESD* esd, AliStack* stack = 0x0) = 0;
29     virtual Int_t Finish() = 0;
30     
31     
32     static Int_t GetDebug() {return fgkDebug;}
33     static void  SetDebug(Int_t level) {fgkDebug = level;}
34     
35   protected:
36     
37   private:
38     static Int_t fgkDebug;//! debug level
39     ClassDef(AliAnalysis,1)
40 };
41
42 #endif