ROOT logo
////////////////////////////////////////////////////////////////////////////////
///                                                                          ///
/// AliFemtoEventReaderESD - the reader class for the Alice ESD              ///
/// Reads in ESD information and converts it into internal AliFemtoEvent     ///
/// Reads in AliESDfriend to create shared hit/quality information           ///
/// Authors: Marek Chojnacki mchojnacki@knf.pw.edu.pl                        ///
///          Adam Kisiel kisiel@mps.ohio-state.edu                           ///
///                                                                          ///
////////////////////////////////////////////////////////////////////////////////

/*
 *$Id$
 *$Log$
 *Revision 1.1.2.1  2007/09/30 11:38:59  akisiel
 *Adapt the readers to the new AliESDEvent structure
 *
 *Revision 1.1  2007/05/16 10:22:11  akisiel
 *Making the directory structure of AliFemto flat. All files go into one common directory
 *
 *Revision 1.4  2007/05/03 09:45:20  akisiel
 *Fixing Effective C++ warnings
 *
 *Revision 1.3  2007/04/27 07:25:16  akisiel
 *Make revisions needed for compilation from the main AliRoot tree
 *
 *Revision 1.1.1.1  2007/04/25 15:38:41  panos
 *Importing the HBT code dir
 *
 */
  

#ifndef ALIFEMTOEVENTREADERESD_H
#define ALIFEMTOEVENTREADERESD_H
#include "AliFemtoEventReader.h"
#include "AliFemtoEnumeration.h"

#include <string>
#include <vector>
#include "TTree.h"
#include "TChain.h"
#include "AliESDEvent.h"
#include <list>

class AliFemtoEvent;

class AliFemtoEventReaderESD : public AliFemtoEventReader 
{
 public:
  AliFemtoEventReaderESD();
  AliFemtoEventReaderESD(const AliFemtoEventReaderESD &aReader);
  virtual ~AliFemtoEventReaderESD();

  AliFemtoEventReaderESD& operator=(const AliFemtoEventReaderESD& aReader);

  virtual AliFemtoEvent* ReturnHbtEvent();
  AliFemtoString Report();
  //void SetFileName(const char* fileName);
  void SetInputFile(const char* inputFile);
  void SetConstrained(const bool constrained);
  bool GetConstrained() const;
  void SetReadTPCInner(const bool readinner);
  bool GetReadTPCInner() const;

 protected:

 private:
  string         fInputFile;        // name of input file with ESD filenames
  string         fFileName;         // name of current ESD file
  bool           fConstrained;      // flag to set which momentum from ESD file will be use
  bool           fReadInner;        // flag to set if one wants to read TPC-only momentum
                                    // instead of the global one
  int            fNumberofEvent;    // number of Events in ESD file
  int            fCurEvent;         // number of current event
  TChain*        fTree;             // ESD tree
  TFile*         fEsdFile;          // ESD file 
  AliESDEvent*   fEvent;            // ESD event
		
#ifdef __ROOT__
  ClassDef(AliFemtoEventReaderESD, 11)
#endif

    };
  
#endif


 AliFemtoEventReaderESD.h:1
 AliFemtoEventReaderESD.h:2
 AliFemtoEventReaderESD.h:3
 AliFemtoEventReaderESD.h:4
 AliFemtoEventReaderESD.h:5
 AliFemtoEventReaderESD.h:6
 AliFemtoEventReaderESD.h:7
 AliFemtoEventReaderESD.h:8
 AliFemtoEventReaderESD.h:9
 AliFemtoEventReaderESD.h:10
 AliFemtoEventReaderESD.h:11
 AliFemtoEventReaderESD.h:12
 AliFemtoEventReaderESD.h:13
 AliFemtoEventReaderESD.h:14
 AliFemtoEventReaderESD.h:15
 AliFemtoEventReaderESD.h:16
 AliFemtoEventReaderESD.h:17
 AliFemtoEventReaderESD.h:18
 AliFemtoEventReaderESD.h:19
 AliFemtoEventReaderESD.h:20
 AliFemtoEventReaderESD.h:21
 AliFemtoEventReaderESD.h:22
 AliFemtoEventReaderESD.h:23
 AliFemtoEventReaderESD.h:24
 AliFemtoEventReaderESD.h:25
 AliFemtoEventReaderESD.h:26
 AliFemtoEventReaderESD.h:27
 AliFemtoEventReaderESD.h:28
 AliFemtoEventReaderESD.h:29
 AliFemtoEventReaderESD.h:30
 AliFemtoEventReaderESD.h:31
 AliFemtoEventReaderESD.h:32
 AliFemtoEventReaderESD.h:33
 AliFemtoEventReaderESD.h:34
 AliFemtoEventReaderESD.h:35
 AliFemtoEventReaderESD.h:36
 AliFemtoEventReaderESD.h:37
 AliFemtoEventReaderESD.h:38
 AliFemtoEventReaderESD.h:39
 AliFemtoEventReaderESD.h:40
 AliFemtoEventReaderESD.h:41
 AliFemtoEventReaderESD.h:42
 AliFemtoEventReaderESD.h:43
 AliFemtoEventReaderESD.h:44
 AliFemtoEventReaderESD.h:45
 AliFemtoEventReaderESD.h:46
 AliFemtoEventReaderESD.h:47
 AliFemtoEventReaderESD.h:48
 AliFemtoEventReaderESD.h:49
 AliFemtoEventReaderESD.h:50
 AliFemtoEventReaderESD.h:51
 AliFemtoEventReaderESD.h:52
 AliFemtoEventReaderESD.h:53
 AliFemtoEventReaderESD.h:54
 AliFemtoEventReaderESD.h:55
 AliFemtoEventReaderESD.h:56
 AliFemtoEventReaderESD.h:57
 AliFemtoEventReaderESD.h:58
 AliFemtoEventReaderESD.h:59
 AliFemtoEventReaderESD.h:60
 AliFemtoEventReaderESD.h:61
 AliFemtoEventReaderESD.h:62
 AliFemtoEventReaderESD.h:63
 AliFemtoEventReaderESD.h:64
 AliFemtoEventReaderESD.h:65
 AliFemtoEventReaderESD.h:66
 AliFemtoEventReaderESD.h:67
 AliFemtoEventReaderESD.h:68
 AliFemtoEventReaderESD.h:69
 AliFemtoEventReaderESD.h:70
 AliFemtoEventReaderESD.h:71
 AliFemtoEventReaderESD.h:72
 AliFemtoEventReaderESD.h:73
 AliFemtoEventReaderESD.h:74
 AliFemtoEventReaderESD.h:75
 AliFemtoEventReaderESD.h:76
 AliFemtoEventReaderESD.h:77
 AliFemtoEventReaderESD.h:78
 AliFemtoEventReaderESD.h:79
 AliFemtoEventReaderESD.h:80
 AliFemtoEventReaderESD.h:81
 AliFemtoEventReaderESD.h:82
 AliFemtoEventReaderESD.h:83
 AliFemtoEventReaderESD.h:84
 AliFemtoEventReaderESD.h:85
 AliFemtoEventReaderESD.h:86