Line data Source code
1 : #ifndef ALIESDINPUTHANDLERRP_H
2 : #define ALIESDINPUTHANDLERRP_H
3 : /* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
4 : * See cxx source for full Copyright notice */
5 :
6 : /* $Id: AliESDInputHandler.h 24521 2008-03-14 16:43:54Z morsch $ */
7 :
8 : //-------------------------------------------------------------------------
9 : // ESD Input Handler realisation of the AliVEventHandler interface
10 : // Automatic loading of RecPoint Trees
11 : // Author: Andreas Morsch, CERN
12 : //-------------------------------------------------------------------------
13 :
14 : #include "AliESDInputHandler.h"
15 : class TList;
16 : class TTree;
17 : class TDirectoryFile;
18 : class TString;
19 :
20 :
21 : class AliESDInputHandlerRP : public AliESDInputHandler {
22 :
23 : public:
24 : AliESDInputHandlerRP();
25 : AliESDInputHandlerRP(const char* name, const char* title);
26 : virtual ~AliESDInputHandlerRP();
27 : virtual Bool_t Init(Option_t* opt);
28 0 : virtual Bool_t Init(TTree* tree, Option_t* opt) {return AliESDInputHandler::Init(tree, opt);}
29 0 : virtual Bool_t InitIO(Option_t* opt) {return Init(opt);};
30 : virtual Bool_t BeginEvent(Long64_t entry);
31 : virtual Bool_t FinishEvent();
32 : virtual Bool_t LoadEvent(Int_t iev);
33 0 : virtual Bool_t Notify() { return AliESDInputHandler::Notify();}
34 : virtual Bool_t Notify(const char* path);
35 : virtual void ResetIO();
36 0 : virtual void ReadFromDirectory() {fReadDirectory = kTRUE;}
37 : //
38 : virtual TTree* GetTreeR(const char* det);
39 : private:
40 : enum {kReadFromArchiveBIT = BIT(14)};
41 : Bool_t OpenFile(Int_t i);
42 : AliESDInputHandlerRP(const AliESDInputHandlerRP& handler);
43 : AliESDInputHandlerRP& operator=(const AliESDInputHandlerRP& handler);
44 : private:
45 : TObjArray* fRTrees; // List of RecPoint Trees
46 : TObjArray* fRDirs; // List of RecPoint directories
47 : TList* fRFiles; // List of RecPoint Files
48 : TList* fDetectors; // List of detector names
49 : TDirectoryFile *fDirR; //! Directory for RP Tree
50 : Int_t fEventNumber; //! Current event number
51 : Int_t fFileNumber; //! Input file number
52 : Int_t fEventsPerFile; //! Number of events per file
53 : const Char_t *fExtension; //! File name extension
54 : TString *fPathName; //! Input file path
55 : Bool_t fIsArchive; //! True if directory is an archive
56 : Bool_t fReadDirectory; //! read also from directory
57 172 : ClassDef(AliESDInputHandlerRP, 1);
58 : };
59 :
60 : #endif
|