1 // YS Subatech Mai 2002
2 // YK Subatech 6 Aug 2002
4 // EMCAL Reconstruction chain:
5 // Hits -> SDigits -> Digits -> RecPoints -> TrackSegments -> RecParticles
8 #if !defined(__CINT__) || defined(__MAKECINT__)
12 #include "STEER/AliRun.h"
13 #include "EMCAL/AliEMCALSDigitizer.h"
14 #include "EMCAL/AliEMCALDigitizer.h"
15 #include "EMCAL/AliEMCALClusterizerv1.h"
16 // #include "EMCAL/AliEMCALTrackSegmentMakerv1.h"
17 // #include "EMCAL/AliEMCALPIDv1.h"
20 void EMCALHits2SDigits( Bool_t split=kFALSE, TString fileName = "galice.root") {
23 // 1. write SDigits in the same file as Hits --------------- (OK)
24 //root [0] .L Reconstruct.C++
25 //root [1] SDigits2Digits()
26 // 2. write SDigits in a separate file, one per detector, from Hits --------------- (OK)
27 //root [0] .L Reconstruct.C++
28 //root [1] SDigits2Digits(kTRUE) // SDigits saved in [DET}.SDigits.root (DET=EMCAL, EMCAL)
33 AliEMCALSDigitizer * sdp = new AliEMCALSDigitizer(fileName) ;
36 sdp->ExecuteTask("deb") ;
41 //________________________________________________________________________
42 void EMCALSDigits2Digits( Bool_t split=kFALSE, TString fileName = "galice.root") {
45 // 1. write SDigits in the same file as SDigits --------------- (OK)
46 //root [0] .L Reconstruct.C++
47 //root [1] SDigits2Digits()
48 // 2. write SDigits in a separate file, one per detector, from SDigits --------------- (OK)
49 //root [0] .L Reconstruct.C++
50 //root [1] SDigitsDigits(kTRUE) // Digits saved in [DET}.Digits.root (DET=EMCAL, EMCAL)
56 AliEMCALDigitizer * dp = 0 ;
59 dp = new AliEMCALDigitizer("EMCAL.SDigits.root") ;
60 dp->SetSplitFile() ; }
62 dp = new AliEMCALDigitizer(fileName) ;
64 dp->ExecuteTask("deb") ;
69 //________________________________________________________________________
70 void EMCALDigits2RecPoints( Bool_t split=kFALSE, TString fileName = "galice.root") {
73 // 1. write RecPoints in the same file as Digits --------------- OK
74 //root [0] .L Reconstruct.C++
75 //root [1] Digits2RecPoints()
76 // 2. write RecPoints in a separate file, one per detector, from Digits --------------- OK
77 //root [0] .L Reconstruct.C++
78 //root [1] Digits2RecPoints(kTRUE) // RecPoints saved in [DET}.RecPoints.root (DET=EMCAL, EMCAL)
83 AliEMCALClusterizer * cp = 0 ;
86 cp = new AliEMCALClusterizerv1("EMCAL.Digits.root") ;
87 cp->SetSplitFile() ; }
89 cp = new AliEMCALClusterizerv1(fileName) ;
91 cp->ExecuteTask("deb") ;
96 // //________________________________________________________________________
97 // void EMCALRecPoints2TrackSegments( Bool_t split=kFALSE, TString fileName = "galice.root") {
100 // // 1. write TrackSegments in the same file as RecPoints --------------- (OK)
101 // //root [0] .L Reconstruct.C++
102 // //root [1] RecPoints2TrackSegments()
103 // // 2. write TrackSegments in a separate file, one per detector, from RecPoints --------------- (Not needed)
104 // //root [0] .L Reconstruct.C++
105 // //root [1] RecPoints2TrackSegments(kTRUE) // TrackSegments saved in [DET}.RecData.root (DET=EMCAL, EMCAL)
110 // AliEMCALTrackSegmentMaker * tmp = 0 ;
113 // tmp = new AliEMCALTrackSegmentMakerv1("EMCAL.RecData.root") ;
115 // tmp = new AliEMCALTrackSegmentMakerv1(fileName) ;
117 // tmp->ExecuteTask("deb") ;
122 // //________________________________________________________________________
123 // void EMCALTrackSegments2RecParticles( Bool_t split=kFALSE, TString fileName = "galice.root") {
126 // // 1. write RecParticles in the same file as TrackSegments --------------- (OK)
127 // //root [0] .L Reconstruct.C++
128 // //root [1] TrackSegments2RecParticles()
129 // // 2. write RecParticles in a separate file, one per detector, from TrackSegments --------------- (Not needed)
130 // //root [0] .L Reconstruct.C++
131 // //root [1] TrackSegments2RecParticles(kTRUE) // RecParticles saved in [DET}.RecData.root (DET=EMCAL, EMCAL)
136 // AliEMCALPID * pp = 0 ;
139 // pp = new AliEMCALPIDv1("EMCAL.RecData.root") ;
141 // pp = new AliEMCALPIDv1(fileName) ;
143 // pp->ExecuteTask("deb") ;
148 // //________________________________________________________________________
149 // void EMCALDigits2RecParticles( Bool_t split=kFALSE, TString fileName = "galice.root") {
152 // // 1. write RecPoints, TrackSegments and RecParticles in the same file as Digits --------------- (OK)
153 // //root [0] .L Reconstruct.C++
154 // //root [1] Digits2RecParticles()
155 // // 2. write RecPoints , TrackSegments and RecParticles in a separate file, one per detector, from Digits --------------- (OK)
156 // //root [0] .L Reconstruct.C++
157 // //root [1] Digits2RecParticles(kTRUE) // TrackSegments saved in [DET}.RecData.root (DET=EMCAL, EMCAL)
164 // AliEMCALClusterizer * cp = 0 ;
167 // cp = new AliEMCALClusterizerv1("EMCAL.Digits.root") ;
168 // cp->SetSplitFile() ; }
170 // cp = new AliEMCALClusterizerv1(fileName) ;
172 // cp->ExecuteTask("deb") ;
177 // AliEMCALTrackSegmentMaker * tmp = 0 ;
180 // tmp = new AliEMCALTrackSegmentMakerv1("EMCAL.RecData.root") ;
182 // tmp = new AliEMCALTrackSegmentMakerv1(fileName) ;
184 // tmp->ExecuteTask("deb") ;
186 // AliEMCALPID * pp = 0 ;
189 // pp = new AliEMCALPIDv1("EMCAL.RecData.root") ;
191 // pp = new AliEMCALPIDv1(fileName) ;
193 // pp->ExecuteTask("deb") ;
199 //________________________________________________________________________
200 void EMCALHits2Digits (Bool_t split=kFALSE, TString fileName = "galice.root") {
202 // 1. write (S)Digits in the same file as Hits --------------- (OK)
203 //root [0] .L Reconstruct.C++
204 //root [1] Hits2Digits()
205 // 2. write (S)Digits in a separate file, one per detector, from Hits --------------- (OK)
206 //root [0] .L Reconstruct.C++
207 //root [1] Hits2Digits(kTRUE) // SDigits saved in [DET}.SDigits.root (DET=EMCAL, EMCAL)
208 // Digits saved in [DET}.Digits.root (DET=EMCAL, EMCAL)
214 AliEMCALSDigitizer * sdp = new AliEMCALSDigitizer(fileName) ;
216 sdp->SetSplitFile() ;
217 sdp->ExecuteTask("deb") ;
222 AliEMCALDigitizer * dp = 0 ;
225 dp = new AliEMCALDigitizer("EMCAL.SDigits.root") ;
226 dp->SetSplitFile() ; }
228 dp = new AliEMCALDigitizer(fileName) ;
230 dp->ExecuteTask("deb") ;