]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliAODInputHandler.h
modify systematic r-phi plotting
[u/mrichter/AliRoot.git] / STEER / AliAODInputHandler.h
1 #ifndef ALIAODINPUTHANDLER_H
2 #define ALIAODINPUTHANDLER_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 //     AOD Input Handler realisation of the AliVEventHandler interface
10 //     Author: Andreas Morsch, CERN
11 //-------------------------------------------------------------------------
12
13 #include "AliInputEventHandler.h"
14 #include "AliAODEvent.h"
15 #include "AliMCEvent.h"
16
17 class TList;
18 class AliMCEvent;
19
20 class AliAODInputHandler : public AliInputEventHandler {
21
22  public:
23     AliAODInputHandler();
24     AliAODInputHandler(const char* name, const char* title);
25     virtual ~AliAODInputHandler();
26     virtual Bool_t       Init(Option_t* /*opt*/) {return kTRUE;}
27     virtual Bool_t       Init(TTree* tree, Option_t* opt);
28     AliAODEvent         *GetEvent() const {return fEvent;}
29     AliMCEvent          *MCEvent()  const {return fMCEvent;}
30     virtual void         AddFriend(char* filename);
31     virtual Bool_t       BeginEvent(Long64_t entry);
32     virtual Bool_t       Notify() { return AliVEventHandler::Notify();};
33     virtual Bool_t       Notify(const char* path);
34     virtual Bool_t       FinishEvent();
35     Option_t            *GetDataType() const;
36     // Provisions for event merging
37     void                 SetMergeEvents(Bool_t flag) {fMergeEvents = flag;}
38     Bool_t               GetMergeEvents() const {return fMergeEvents;}
39     AliAODEvent*         GetEventToMerge() {return fAODEventToMerge;}
40     void                 SetMergeOffset(Int_t ioff) {fMergeOffset = ioff;}
41  private:
42     AliAODInputHandler(const AliAODInputHandler& handler);             
43     AliAODInputHandler& operator=(const AliAODInputHandler& handler);  
44  private:
45     AliAODEvent    *fEvent;   //! Pointer to the event
46     AliMCEvent     *fMCEvent; //! Pointer to the MCEvent
47     TList          *fFriends; //  List of friend trees 
48 // Support for merged events
49     Bool_t          fMergeEvents;     // Flag for event merging
50     TFile          *fFileToMerge;     //! File for merging
51     TTree          *fTreeToMerge;     //! Tree for merging
52     AliAODEvent    *fAODEventToMerge; //! Event for merging
53     Int_t           fMergeOffset;     //! Event offset for merging
54     ClassDef(AliAODInputHandler, 2);
55 };
56
57 #endif