]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/AliAODInputHandler.h
inlcude AliAODExtension
[u/mrichter/AliRoot.git] / STEER / AliAODInputHandler.h
CommitLineData
397596ed 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"
fedd7a0d 14#include "AliAODEvent.h"
26772015 15class TList;
04a79fa0 16class AliMCEvent;
70908d05 17class TH2F;
5e6a3170 18class AliMCEvent;
19
26772015 20
397596ed 21class AliAODInputHandler : public AliInputEventHandler {
22
23 public:
24 AliAODInputHandler();
25 AliAODInputHandler(const char* name, const char* title);
26 virtual ~AliAODInputHandler();
300d5701 27 virtual Bool_t Init(Option_t* /*opt*/) {return kTRUE;}
28 virtual Bool_t Init(TTree* tree, Option_t* opt);
87d395bd 29 AliAODEvent *GetEvent() const {return fEvent;}
04a79fa0 30 AliMCEvent *MCEvent() const {return fMCEvent;}
fbb264e0 31 virtual void AddFriend(char* filename);
32 virtual Bool_t BeginEvent(Long64_t entry);
b890a10d 33 virtual Bool_t Notify() { return AliVEventHandler::Notify();};
34 virtual Bool_t Notify(const char* path);
35 virtual Bool_t FinishEvent();
c2b6979d 36 Option_t *GetDataType() const;
70908d05 37 // Get the statistics object (currently TH2). Option can be BIN0.
38 virtual TObject *GetStatistics(Option_t *option="") const;
1f842495 39 // Provisions for event merging
40 void SetMergeEvents(Bool_t flag) {fMergeEvents = flag;}
41 Bool_t GetMergeEvents() const {return fMergeEvents;}
42 AliAODEvent* GetEventToMerge() {return fAODEventToMerge;}
04daa8bf 43 void SetMergeOffset(Int_t ioff) {fMergeOffset = ioff;}
87d395bd 44 private:
25c90fa8 45 void ConnectFriends();
87d395bd 46 AliAODInputHandler(const AliAODInputHandler& handler);
47 AliAODInputHandler& operator=(const AliAODInputHandler& handler);
fedd7a0d 48 private:
4195c9c9 49 AliAODEvent *fEvent; //! Pointer to the event
04a79fa0 50 AliMCEvent *fMCEvent; //! Pointer to the MCEvent
26772015 51 TList *fFriends; // List of friend trees
1f842495 52// Support for merged events
53 Bool_t fMergeEvents; // Flag for event merging
25c90fa8 54 Bool_t fFriendsConnected;// Friends are connected
1f842495 55 TFile *fFileToMerge; //! File for merging
56 TTree *fTreeToMerge; //! Tree for merging
57 AliAODEvent *fAODEventToMerge; //! Event for merging
04daa8bf 58 Int_t fMergeOffset; //! Event offset for merging
70908d05 59 TH2F* fHistStatistics[2]; //! how many events are cut away why {all,bin 0}
57459102 60 ClassDef(AliAODInputHandler, 3);
397596ed 61};
62
63#endif