ROOT logo
////////////////////////////////////////////////////////////////////////////////
///                                                                          ///
/// AliFemtoEventReader - the pure virtual base class for the event reader   ///
/// All event readers must inherit from this one                             ///
///                                                                          ///
////////////////////////////////////////////////////////////////////////////////
#include "AliFemtoEvent.h"
#include "AliFemtoEventCut.h"
#include "AliFemtoTrackCut.h"
#include "AliFemtoV0Cut.h"
#include "AliFemtoXiCut.h"
#include "AliFemtoKinkCut.h"
#include "AliFemtoEventReader.h"

#ifdef __ROOT__
ClassImp(AliFemtoEventReader)
#endif

AliFemtoEventReader::AliFemtoEventReader(const AliFemtoEventReader& aReader):
  fEventCut(0),  
  fTrackCut(0),    
  fV0Cut(0),       
  fXiCut(0),       
  fKinkCut(0),    
  fReaderStatus(0),  
  fDebug(0)
{
  // Copy constructor
  fEventCut = aReader.fEventCut;
  fTrackCut = aReader.fTrackCut;
  fV0Cut    = aReader.fV0Cut;
  fXiCut    = aReader.fXiCut;
  fKinkCut  = aReader.fKinkCut;
  fReaderStatus = aReader.fReaderStatus;
  fDebug = aReader.fDebug;
}

AliFemtoEventReader& AliFemtoEventReader::operator=(const AliFemtoEventReader& aReader)
{
  // Assignment operator
  if (this == &aReader) 
    return *this;

  fEventCut = aReader.fEventCut;
  fTrackCut = aReader.fTrackCut;
  fV0Cut    = aReader.fV0Cut;
  fXiCut    = aReader.fXiCut;
  fKinkCut  = aReader.fKinkCut;
  fReaderStatus = aReader.fReaderStatus;
  fDebug = aReader.fDebug;

  return *this;
}


AliFemtoString AliFemtoEventReader::Report(){
  // Create a simple report from the workings of the reader
  AliFemtoString temp = "\n This is the base class AliFemtoEventReader reporting";
  temp += "\n---> EventCuts in Reader: ";
  if (fEventCut) {
    temp += fEventCut->Report();
  }
  else {
    temp += "NONE";
  }
  temp += "\n---> TrackCuts in Reader: ";
  if (fTrackCut) {
    temp += fTrackCut->Report();
  }
  else {
    temp += "NONE";
  }
  temp += "\n---> V0Cuts in Reader: ";
  if (fV0Cut) {
    temp += fV0Cut->Report();
  }
  else {
    temp += "NONE";
  }
  temp += "\n---> XiCuts in Reader: ";
  if (fXiCut) {
    temp += fXiCut->Report();
  }
  else {
    temp += "NONE";
  }
  temp += "\n---> KinkCuts in Reader: ";
  if (fKinkCut) {
    temp += fKinkCut->Report();
  }
  else {
    temp += "NONE";
  }
  temp += "\n";
  return temp;
}
//______________________________________
void AliFemtoEventReader::SetEventCut(AliFemtoEventCut* ecut){fEventCut=ecut;}
//______________________________________
void AliFemtoEventReader::SetTrackCut(AliFemtoTrackCut* pcut){cout << pcut << endl; fTrackCut=pcut;}
//______________________________________
void AliFemtoEventReader::SetV0Cut(AliFemtoV0Cut* pcut){fV0Cut=pcut;}
//______________________________________
void AliFemtoEventReader::SetXiCut(AliFemtoXiCut* pcut){fXiCut=pcut;}
//______________________________________
void AliFemtoEventReader::SetKinkCut(AliFemtoKinkCut* pcut){fKinkCut=pcut;}
//______________________________________
AliFemtoEventCut* AliFemtoEventReader::EventCut(){return fEventCut;}
//______________________________________
AliFemtoTrackCut* AliFemtoEventReader::TrackCut(){return fTrackCut;}
//______________________________________
AliFemtoV0Cut*    AliFemtoEventReader::V0Cut(){return fV0Cut;} 
//______________________________________
AliFemtoXiCut*    AliFemtoEventReader::XiCut(){return fXiCut;} 
//______________________________________
AliFemtoKinkCut*    AliFemtoEventReader::KinkCut(){return fKinkCut;}
//______________________________________
int AliFemtoEventReader::Init(const char* /* ReadWrite */, AliFemtoString& /* Message */)
{
  cout << "do-nothing AliFemtoEventReader::Init()\n"; 
  return(0);
}


 AliFemtoEventReader.cxx:1
 AliFemtoEventReader.cxx:2
 AliFemtoEventReader.cxx:3
 AliFemtoEventReader.cxx:4
 AliFemtoEventReader.cxx:5
 AliFemtoEventReader.cxx:6
 AliFemtoEventReader.cxx:7
 AliFemtoEventReader.cxx:8
 AliFemtoEventReader.cxx:9
 AliFemtoEventReader.cxx:10
 AliFemtoEventReader.cxx:11
 AliFemtoEventReader.cxx:12
 AliFemtoEventReader.cxx:13
 AliFemtoEventReader.cxx:14
 AliFemtoEventReader.cxx:15
 AliFemtoEventReader.cxx:16
 AliFemtoEventReader.cxx:17
 AliFemtoEventReader.cxx:18
 AliFemtoEventReader.cxx:19
 AliFemtoEventReader.cxx:20
 AliFemtoEventReader.cxx:21
 AliFemtoEventReader.cxx:22
 AliFemtoEventReader.cxx:23
 AliFemtoEventReader.cxx:24
 AliFemtoEventReader.cxx:25
 AliFemtoEventReader.cxx:26
 AliFemtoEventReader.cxx:27
 AliFemtoEventReader.cxx:28
 AliFemtoEventReader.cxx:29
 AliFemtoEventReader.cxx:30
 AliFemtoEventReader.cxx:31
 AliFemtoEventReader.cxx:32
 AliFemtoEventReader.cxx:33
 AliFemtoEventReader.cxx:34
 AliFemtoEventReader.cxx:35
 AliFemtoEventReader.cxx:36
 AliFemtoEventReader.cxx:37
 AliFemtoEventReader.cxx:38
 AliFemtoEventReader.cxx:39
 AliFemtoEventReader.cxx:40
 AliFemtoEventReader.cxx:41
 AliFemtoEventReader.cxx:42
 AliFemtoEventReader.cxx:43
 AliFemtoEventReader.cxx:44
 AliFemtoEventReader.cxx:45
 AliFemtoEventReader.cxx:46
 AliFemtoEventReader.cxx:47
 AliFemtoEventReader.cxx:48
 AliFemtoEventReader.cxx:49
 AliFemtoEventReader.cxx:50
 AliFemtoEventReader.cxx:51
 AliFemtoEventReader.cxx:52
 AliFemtoEventReader.cxx:53
 AliFemtoEventReader.cxx:54
 AliFemtoEventReader.cxx:55
 AliFemtoEventReader.cxx:56
 AliFemtoEventReader.cxx:57
 AliFemtoEventReader.cxx:58
 AliFemtoEventReader.cxx:59
 AliFemtoEventReader.cxx:60
 AliFemtoEventReader.cxx:61
 AliFemtoEventReader.cxx:62
 AliFemtoEventReader.cxx:63
 AliFemtoEventReader.cxx:64
 AliFemtoEventReader.cxx:65
 AliFemtoEventReader.cxx:66
 AliFemtoEventReader.cxx:67
 AliFemtoEventReader.cxx:68
 AliFemtoEventReader.cxx:69
 AliFemtoEventReader.cxx:70
 AliFemtoEventReader.cxx:71
 AliFemtoEventReader.cxx:72
 AliFemtoEventReader.cxx:73
 AliFemtoEventReader.cxx:74
 AliFemtoEventReader.cxx:75
 AliFemtoEventReader.cxx:76
 AliFemtoEventReader.cxx:77
 AliFemtoEventReader.cxx:78
 AliFemtoEventReader.cxx:79
 AliFemtoEventReader.cxx:80
 AliFemtoEventReader.cxx:81
 AliFemtoEventReader.cxx:82
 AliFemtoEventReader.cxx:83
 AliFemtoEventReader.cxx:84
 AliFemtoEventReader.cxx:85
 AliFemtoEventReader.cxx:86
 AliFemtoEventReader.cxx:87
 AliFemtoEventReader.cxx:88
 AliFemtoEventReader.cxx:89
 AliFemtoEventReader.cxx:90
 AliFemtoEventReader.cxx:91
 AliFemtoEventReader.cxx:92
 AliFemtoEventReader.cxx:93
 AliFemtoEventReader.cxx:94
 AliFemtoEventReader.cxx:95
 AliFemtoEventReader.cxx:96
 AliFemtoEventReader.cxx:97
 AliFemtoEventReader.cxx:98
 AliFemtoEventReader.cxx:99
 AliFemtoEventReader.cxx:100
 AliFemtoEventReader.cxx:101
 AliFemtoEventReader.cxx:102
 AliFemtoEventReader.cxx:103
 AliFemtoEventReader.cxx:104
 AliFemtoEventReader.cxx:105
 AliFemtoEventReader.cxx:106
 AliFemtoEventReader.cxx:107
 AliFemtoEventReader.cxx:108
 AliFemtoEventReader.cxx:109
 AliFemtoEventReader.cxx:110
 AliFemtoEventReader.cxx:111
 AliFemtoEventReader.cxx:112
 AliFemtoEventReader.cxx:113
 AliFemtoEventReader.cxx:114
 AliFemtoEventReader.cxx:115
 AliFemtoEventReader.cxx:116
 AliFemtoEventReader.cxx:117
 AliFemtoEventReader.cxx:118
 AliFemtoEventReader.cxx:119
 AliFemtoEventReader.cxx:120
 AliFemtoEventReader.cxx:121
 AliFemtoEventReader.cxx:122
 AliFemtoEventReader.cxx:123
 AliFemtoEventReader.cxx:124