3f27d17bf264f35b7a2335532c2e59bd029a54ef
[u/mrichter/AliRoot.git] / PWG2 / FEMTOSCOPY / AliFemto / Reader / AliFemtoEventReaderESD.h
1 /*
2  *$Id$
3  *$Log$
4  *Revision 1.3  2007/03/13 15:30:03  mchojnacki
5  *adding reader for simulated data
6  *
7  *Revision 1.2  2007/03/07 13:36:17  mchojnacki
8  *Add some comments
9  *
10  *Revision 1.1.1.1  2007/03/07 10:14:49  mchojnacki
11  *First version on CVS
12  *
13  */
14   
15
16 #ifndef AliFemtoEventReaderESD_hh
17 #define AliFemtoEventReaderESD_hh
18 //Reader for ESD files for StHbt version 10 with hidden info part
19 //made by Marek Chojnacki mchojnacki@knf.pw.edu.pl
20 // Version 11 Added AliESDfriend reading
21 // Adam Kisiel kisiel@mps.ohio-state.edu
22 #include "AliFemtoEventReader.h"
23 #include "AliFemtoEnumeration.h"
24
25 #include <string>
26 #include <vector>
27 #include "TTree.h"
28 #include "AliESD.h"
29 #include "AliESDfriend.h"
30 #include <list>
31
32 class AliFemtoEvent;
33
34 class AliFemtoEventReaderESD : public AliFemtoEventReader 
35 {
36  public:
37   AliFemtoEventReaderESD();
38   ~AliFemtoEventReaderESD();
39   AliFemtoEvent* ReturnHbtEvent();
40   AliFemtoString Report();
41   //void SetFileName(const char* fileName);
42   void SetInputFile(const char* inputFile);
43   void SetConstrained(const bool constrained);
44   bool GetConstrained() const;
45
46  protected:
47
48  private:
49   bool           GetNextFile();//setting next file to read 
50
51   string         fInputFile; //name of input file
52   string         fFileName; //name of current ESD file
53   bool           fConstrained; //flag to set which momentum from ESD file will be use
54   int            fNumberofEvent;//number of Events in ESD file
55   int            fCurEvent; //number of current event
56   unsigned int   fCurFile; //number of current file
57   vector<string> fListOfFiles;//list of ESD files               
58   TTree*         fTree;//ESD tree
59   AliESD*        fEvent;//ESD event
60   TFile*         fEsdFile;//ESD file 
61   AliESDfriend*  fEventFriend;
62
63   list<Int_t>  **fSharedList;
64   list<Int_t>  **fClusterPerPadrow;
65                 
66 #ifdef __ROOT__
67   ClassDef(AliFemtoEventReaderESD, 10)
68 #endif
69
70     };
71   
72 #endif
73
74