]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliVEventHandler.h
modification(by Levente) to solve the problem in the QA mentioned in the bug report...
[u/mrichter/AliRoot.git] / STEER / AliVEventHandler.h
1 #ifndef ALIVEVENTHANDLER_H
2 #define ALIVEVENTHANDLER_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 //     Event Handler base class
10 //     Author: Andreas Morsch, CERN
11 //-------------------------------------------------------------------------
12
13 #include <TNamed.h>
14
15 class TTree;
16
17 class AliVEventHandler : public TNamed {
18
19  public:
20     AliVEventHandler();
21     AliVEventHandler(const char* name, const char* title);
22     virtual ~AliVEventHandler();
23     // Handled tree
24     virtual TTree       *GetTree() const { return NULL; }
25     virtual Option_t    *GetDataType() const { return NULL; }
26     // Output
27     virtual void         SetOutputFileName(const char* fname)   = 0;
28     virtual const char*  GetOutputFileName()              = 0;
29     // Input
30     virtual void         SetInputTree(TTree* tree)        = 0;
31     // Steering 
32     virtual Bool_t       Init(Option_t* opt)              = 0;
33     virtual Bool_t       Init(TTree* tree, Option_t* opt) = 0;
34     virtual Bool_t       BeginEvent(Long64_t entry)       = 0;
35     virtual Bool_t       Notify(const char *path)         = 0;
36     virtual Bool_t       FinishEvent()                    = 0;
37     virtual Bool_t       Terminate()                      = 0;
38     virtual Bool_t       TerminateIO()                    = 0;
39     //
40     virtual Bool_t       Notify() { return TNamed::Notify(); };
41  private :
42   ClassDef(AliVEventHandler, 1);
43 };
44
45 #endif