Resolving the symbols in each library
[u/mrichter/AliRoot.git] / ANALYSIS / ANALYSISalice / AliAnalysisTaskME.h
1 #ifndef ALIANALYSISTASKME_H
2 #define ALIANALYSISTASKME_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 #include "AliVEvent.h"
11 class AliAODEvent;
12 class AliInputEventHandler;
13 class TTree;
14 class AliMultiEventInputHandler;
15
16
17
18 class AliAnalysisTaskME : public AliAnalysisTask
19 {
20  public:
21     AliAnalysisTaskME();
22     AliAnalysisTaskME(const char* name);
23     AliAnalysisTaskME(const AliAnalysisTaskME& obj);
24     AliAnalysisTaskME& operator=(const AliAnalysisTaskME& other);
25     virtual ~AliAnalysisTaskME() {;}
26     // Implementation of interface methods
27     virtual void ConnectInputData(Option_t *option = "");
28     virtual void CreateOutputObjects();
29     virtual void Exec(Option_t* option);
30     virtual void SetDebugLevel(Int_t level) {fDebug = level;}
31     virtual void Init() {;}
32     virtual void RequireFreshBuffer() {fFreshBufferOnly = kTRUE;}
33     // To be implemented by user
34     virtual void UserCreateOutputObjects()  {;}
35     virtual void UserExec(Option_t* /*option*/) {;}
36     // Helpers for adding branches to the AOD
37     virtual void   AddAODBranch(const char* cname, void* addobj, const char *fname="");
38     virtual void   SelectCollisionCandidates(UInt_t offlineTriggerMask = AliVEvent::kMB) {fOfflineTriggerMask = offlineTriggerMask;}
39     // Getters
40     virtual Int_t          DebugLevel()              {return fDebug;     }
41     virtual AliVEvent*     GetEvent(Int_t iev);
42     virtual AliAODEvent*   AODEvent()                {return fOutputAOD; }
43     virtual TTree*         OutputTree()              {return fTreeA;     }
44     virtual Long64_t       Entry()                   {return fEntry;     }
45     virtual const char*    CurrentFileName();
46     
47   protected:
48     Int_t                      fDebug;           //  Debug flag
49     Int_t                      fEntry;           //  Current entry in the chain
50     Bool_t                     fFreshBufferOnly; //  Flag for Exec call for fresh buffer only
51     AliMultiEventInputHandler* fInputHandler;    //! Input Handler
52     AliAODEvent*               fOutputAOD;       //! AOD out 
53     TTree*                     fTreeA;           //  AOD output Tree
54     // Event Selection
55     UInt_t fOfflineTriggerMask;   //  Task processes collision candidates only
56
57     ClassDef(AliAnalysisTaskME, 1); // Analysis task for standard jet analysis
58 };
59  
60 #endif