]>
Commit | Line | Data |
---|---|---|
d3dd3d14 | 1 | #ifndef ALIESDINPUTHANDLER_H |
2 | #define ALIESDINPUTHANDLER_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 | // ESD Input Handler realisation of the AliVEventHandler interface | |
10 | // Author: Andreas Morsch, CERN | |
11 | //------------------------------------------------------------------------- | |
12 | ||
13 | #include "AliInputEventHandler.h" | |
fedd7a0d | 14 | #include "AliESDEvent.h" |
1aa09fd1 | 15 | class TChain; |
16 | class TTree; | |
17 | class AliRunTag; | |
18 | ||
d3dd3d14 | 19 | |
20 | class AliESDInputHandler : public AliInputEventHandler { | |
21 | ||
22 | public: | |
23 | AliESDInputHandler(); | |
24 | AliESDInputHandler(const char* name, const char* title); | |
25 | virtual ~AliESDInputHandler(); | |
300d5701 | 26 | virtual Bool_t Init(Option_t* /*opt*/) {return kTRUE;} |
27 | virtual Bool_t Init(TTree* tree, Option_t* opt); | |
ed97dc98 | 28 | virtual Bool_t BeginEvent(Long64_t entry); |
1aa09fd1 | 29 | virtual Bool_t Notify() { return AliVEventHandler::Notify(); }; |
30 | virtual Bool_t Notify(const char* path); | |
6989bff3 | 31 | virtual Bool_t FinishEvent(); |
1aa09fd1 | 32 | AliESDEvent *GetEvent() const {return fEvent;} |
33 | Option_t *GetAnalysisType() const {return fAnalysisType;} | |
300d5701 | 34 | // |
865d620a | 35 | void SetInactiveBranches(const char* branches) {fBranches = branches;} |
36 | void SetActiveBranches (const char* branches) {fBranchesOn = branches;} | |
1aa09fd1 | 37 | // Tag analysis |
38 | void SetReadTags() {fUseTags = kTRUE;} | |
39 | AliRunTag *GetRunTag() const {return fRunTag;} | |
40 | ||
300d5701 | 41 | private: |
42 | void SwitchOffBranches() const; | |
3858dd64 | 43 | void SwitchOnBranches() const; |
87d395bd | 44 | AliESDInputHandler(const AliESDInputHandler& handler); |
45 | AliESDInputHandler& operator=(const AliESDInputHandler& handler); | |
300d5701 | 46 | private: |
1aa09fd1 | 47 | // ESD event |
48 | AliESDEvent *fEvent; //! Pointer to the event | |
49 | TString fBranches; // List of branches to be switched off (separated by space) | |
50 | TString fBranchesOn; // List of branches to be switched on (separated by space) | |
51 | Option_t *fAnalysisType; //! local, proof, grid | |
52 | ||
53 | // ESD Tags (optional) | |
54 | Bool_t fUseTags; // Flag to use tags | |
55 | TChain *fChainT; //! File with event tags | |
56 | TTree *fTreeT; //! Tree of tags | |
57 | AliRunTag *fRunTag; //! Pointer to the run tag | |
58 | ClassDef(AliESDInputHandler, 3); | |
d3dd3d14 | 59 | }; |
60 | ||
61 | #endif |