]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/STEERBase/AliVEventHandler.h
New centrality estimators (TRK, CND) in FemtoReaders
[u/mrichter/AliRoot.git] / STEER / STEERBase / AliVEventHandler.h
CommitLineData
6bc03c45 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
933fd60f 15class TTree;
6bc03c45 16
17class AliVEventHandler : public TNamed {
18
19 public:
59e0dcd5 20enum EEventHandlerFlags {
21 kHandlerLocked = BIT(14)
22};
6bc03c45 23 AliVEventHandler();
24 AliVEventHandler(const char* name, const char* title);
25 virtual ~AliVEventHandler();
7970f4ac 26 // Handled tree
11326411 27 virtual TTree *GetTree() const { return NULL; }
c2b6979d 28 virtual Option_t *GetDataType() const { return NULL; }
5b173801 29 virtual void SetFillAOD(Bool_t) {}
307b6330 30 virtual void SetFillExtension(Bool_t) {}
933fd60f 31 // Output
0931e76a 32 virtual void SetOutputFileName(const char* fname) = 0;
33 virtual const char* GetOutputFileName() = 0;
90d50a8c 34 // Extra outputs as a string separated by commas
35 virtual const char* GetExtraOutputs() const {return NULL;}
933fd60f 36 // Input
300d5701 37 virtual void SetInputTree(TTree* tree) = 0;
933fd60f 38 // Steering
300d5701 39 virtual Bool_t Init(Option_t* opt) = 0;
40 virtual Bool_t Init(TTree* tree, Option_t* opt) = 0;
41 virtual Bool_t BeginEvent(Long64_t entry) = 0;
0d6a82a5 42 virtual Bool_t GetEntry() = 0;
300d5701 43 virtual Bool_t Notify(const char *path) = 0;
44 virtual Bool_t FinishEvent() = 0;
45 virtual Bool_t Terminate() = 0;
46 virtual Bool_t TerminateIO() = 0;
47 //
276be602 48 virtual Bool_t Notify() { return TNamed::Notify(); };
59e0dcd5 49 // Security
50 Bool_t IsLocked() const {return TObject::TestBit(kHandlerLocked);}
51 void Lock();
52 void UnLock();
53 void Changed();
43072535 54 virtual void SetCacheSize(Long64_t) {}
4cf1e5f2 55 virtual TList *GetUserInfo() const {return 0x0;};
6bc03c45 56 private :
300d5701 57 ClassDef(AliVEventHandler, 1);
6bc03c45 58};
59
60#endif