Version number ++
[u/mrichter/AliRoot.git] / ANALYSIS / AliRunAnalysis.h
1 #ifndef ALIRUNANALYSIS_H
2 #define ALIRUNANALYSIS_H
3
4 ///////////////////////////////////////////////////////////
5 //
6 // class AliRunAnalysis
7 // Analysis manager
8 // Author: Piotr.Skowronski@cern.ch
9 //
10 ///////////////////////////////////////////////////////////
11
12 #include <TTask.h>
13 #include <TObjArray.h>
14
15 class AliEventCut;
16 class AliReader;
17 class AliAnalysis;
18 class AliAOD;
19
20 class AliRunAnalysis: public TTask
21 {
22   public: 
23     AliRunAnalysis();
24     virtual ~AliRunAnalysis();
25     
26     Int_t         Run();
27     void          Add(TTask *t){TTask::Add(t);}
28     void          Add(AliAnalysis* a);
29     void          SetReader(AliReader* reader){fReader = reader;}
30     
31     const char*   GetName() const {return "RunAnalysis";}
32     void          EventCutOnRec(Bool_t flag){fCutOnRec = flag;}
33     void          EventCutOnSim(Bool_t flag){fCutOnSim = flag;}
34     void          SetEventCut(AliEventCut* evcut);
35     void          SetOwner(Bool_t owner=kTRUE){fAnalysies.SetOwner(owner);}
36     
37   protected:
38     TObjArray     fAnalysies;//arry with analysies
39     AliReader*    fReader;//arry with directories to read data from
40     
41     AliEventCut*  fEventCut;//event cut    
42     
43     Bool_t        fCutOnSim;//flag indicating that event cut is performed on simulated particles 
44     Bool_t        fCutOnRec;//flag indicating that event cut is performed on reconstructed tracks
45     
46     Bool_t        Rejected(AliAOD* recevent, AliAOD* simevent);
47     
48   private:
49     void SetName(const char *){}//change SetName to be private
50     
51     ClassDef(AliRunAnalysis,1)
52 };
53
54 #endif