]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliInputEventHandler.h
AliAODEvent: corrected copy constructor and assignment operator. This do not work...
[u/mrichter/AliRoot.git] / STEER / AliInputEventHandler.h
1 #ifndef ALIINPUTEVENTHANDLER_H
2 #define ALIINPUTEVENTHANDLER_H
3 /* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 //-------------------------------------------------------------------------
9 //     Input Handler realisation of the AliVEventHandler interface
10 //     Author: Andreas Morsch, CERN
11 //-------------------------------------------------------------------------
12
13 #include "AliVEventHandler.h"
14 #include <TTree.h>
15
16
17 class AliVEvent;
18 class AliRunTag;
19
20 class AliInputEventHandler : public AliVEventHandler {
21
22  public:
23     AliInputEventHandler();
24     AliInputEventHandler(const char* name, const char* title);
25     virtual ~AliInputEventHandler();
26     virtual void         SetOutputFileName(const char* /*fname*/) {;}
27     virtual const char  *GetOutputFileName()                          {return 0;}
28     virtual Bool_t       Init(Option_t* /*opt*/)                      {return kTRUE;}
29     virtual Bool_t       Init(TTree* /*tree*/, Option_t* /*opt*/)     {return kTRUE;}
30     virtual Bool_t       BeginEvent(Long64_t /*entry*/)               {return kTRUE;}
31     virtual Bool_t       Notify() { return AliVEventHandler::Notify(); };
32     virtual Bool_t       Notify(const char */*path*/)                 {return kTRUE;}
33     virtual Bool_t       FinishEvent()                                {return kTRUE;}        
34     virtual Bool_t       Terminate()                                  {return kTRUE;}
35     virtual Bool_t       TerminateIO()                                {return kTRUE;}
36     // Setters
37     virtual void         SetInputTree(TTree* tree)                    {fTree = tree;}
38     //
39     void SetInactiveBranches(const char* branches) {fBranches   = branches;}
40     void SetActiveBranches  (const char* branches) {fBranchesOn = branches;}
41      // Getters
42     virtual AliVEvent   *GetEvent()        const                      {return 0;}
43     virtual AliRunTag   *GetRunTag()       const                      {return 0;}
44     virtual Option_t    *GetAnalysisType() const                      {return 0;}
45     virtual TTree       *GetTree( )        const                      {return fTree;}
46     virtual Long64_t     GetReadEntry()    const                      {return fTree->GetReadEntry();}
47  protected:
48     void SwitchOffBranches() const;
49     void SwitchOnBranches()  const;
50  private:
51     AliInputEventHandler(const AliInputEventHandler& handler);             
52     AliInputEventHandler& operator=(const AliInputEventHandler& handler);  
53  protected:
54     TTree          *fTree;         //! Pointer to the tree
55     TString         fBranches;     //  List of branches to be switched off (separated by space)
56     TString         fBranchesOn;   //  List of branches to be switched on  (separated by space)
57     ClassDef(AliInputEventHandler, 2);
58 };
59
60 #endif