]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGCF/FEMTOSCOPY/AliFemto/AliFemtoEventReader.cxx
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGCF / FEMTOSCOPY / AliFemto / AliFemtoEventReader.cxx
1 ////////////////////////////////////////////////////////////////////////////////
2 ///                                                                          ///
3 /// AliFemtoEventReader - the pure virtual base class for the event reader   ///
4 /// All event readers must inherit from this one                             ///
5 ///                                                                          ///
6 ////////////////////////////////////////////////////////////////////////////////
7 #include "AliFemtoEvent.h"
8 #include "AliFemtoEventCut.h"
9 #include "AliFemtoTrackCut.h"
10 #include "AliFemtoV0Cut.h"
11 #include "AliFemtoXiCut.h"
12 #include "AliFemtoKinkCut.h"
13 #include "AliFemtoEventReader.h"
14
15 #ifdef __ROOT__
16 ClassImp(AliFemtoEventReader)
17 #endif
18
19 AliFemtoEventReader::AliFemtoEventReader(const AliFemtoEventReader& aReader):
20   fEventCut(0),  
21   fTrackCut(0),    
22   fV0Cut(0),       
23   fXiCut(0),       
24   fKinkCut(0),    
25   fReaderStatus(0),  
26   fDebug(0)
27 {
28   // Copy constructor
29   fEventCut = aReader.fEventCut;
30   fTrackCut = aReader.fTrackCut;
31   fV0Cut    = aReader.fV0Cut;
32   fXiCut    = aReader.fXiCut;
33   fKinkCut  = aReader.fKinkCut;
34   fReaderStatus = aReader.fReaderStatus;
35   fDebug = aReader.fDebug;
36 }
37
38 AliFemtoEventReader& AliFemtoEventReader::operator=(const AliFemtoEventReader& aReader)
39 {
40   // Assignment operator
41   if (this == &aReader) 
42     return *this;
43
44   fEventCut = aReader.fEventCut;
45   fTrackCut = aReader.fTrackCut;
46   fV0Cut    = aReader.fV0Cut;
47   fXiCut    = aReader.fXiCut;
48   fKinkCut  = aReader.fKinkCut;
49   fReaderStatus = aReader.fReaderStatus;
50   fDebug = aReader.fDebug;
51
52   return *this;
53 }
54
55
56 AliFemtoString AliFemtoEventReader::Report(){
57   // Create a simple report from the workings of the reader
58   AliFemtoString temp = "\n This is the base class AliFemtoEventReader reporting";
59   temp += "\n---> EventCuts in Reader: ";
60   if (fEventCut) {
61     temp += fEventCut->Report();
62   }
63   else {
64     temp += "NONE";
65   }
66   temp += "\n---> TrackCuts in Reader: ";
67   if (fTrackCut) {
68     temp += fTrackCut->Report();
69   }
70   else {
71     temp += "NONE";
72   }
73   temp += "\n---> V0Cuts in Reader: ";
74   if (fV0Cut) {
75     temp += fV0Cut->Report();
76   }
77   else {
78     temp += "NONE";
79   }
80   temp += "\n---> XiCuts in Reader: ";
81   if (fXiCut) {
82     temp += fXiCut->Report();
83   }
84   else {
85     temp += "NONE";
86   }
87   temp += "\n---> KinkCuts in Reader: ";
88   if (fKinkCut) {
89     temp += fKinkCut->Report();
90   }
91   else {
92     temp += "NONE";
93   }
94   temp += "\n";
95   return temp;
96 }
97 //______________________________________
98 void AliFemtoEventReader::SetEventCut(AliFemtoEventCut* ecut){fEventCut=ecut;}
99 //______________________________________
100 void AliFemtoEventReader::SetTrackCut(AliFemtoTrackCut* pcut){cout << pcut << endl; fTrackCut=pcut;}
101 //______________________________________
102 void AliFemtoEventReader::SetV0Cut(AliFemtoV0Cut* pcut){fV0Cut=pcut;}
103 //______________________________________
104 void AliFemtoEventReader::SetXiCut(AliFemtoXiCut* pcut){fXiCut=pcut;}
105 //______________________________________
106 void AliFemtoEventReader::SetKinkCut(AliFemtoKinkCut* pcut){fKinkCut=pcut;}
107 //______________________________________
108 AliFemtoEventCut* AliFemtoEventReader::EventCut(){return fEventCut;}
109 //______________________________________
110 AliFemtoTrackCut* AliFemtoEventReader::TrackCut(){return fTrackCut;}
111 //______________________________________
112 AliFemtoV0Cut*    AliFemtoEventReader::V0Cut(){return fV0Cut;} 
113 //______________________________________
114 AliFemtoXiCut*    AliFemtoEventReader::XiCut(){return fXiCut;} 
115 //______________________________________
116 AliFemtoKinkCut*    AliFemtoEventReader::KinkCut(){return fKinkCut;}
117 //______________________________________
118 int AliFemtoEventReader::Init(const char* /* ReadWrite */, AliFemtoString& /* Message */)
119 {
120   cout << "do-nothing AliFemtoEventReader::Init()\n"; 
121   return(0);
122 }
123
124