//_________________________________________________________________________
//*--
//*-- Author: Gines Martinez & Yves Schutz (SUBATECH)
-//*-- Compleetely redisigned by Dmitri Peressounko (SUBATECH & RRC KI) March 2001
+//*-- Compleetely redesigned by Dmitri Peressounko (SUBATECH & RRC KI) March 2001
/////////////////////////////////////////////////////////////////////////////////////
// Wrapping class for reconstruction. Allows to produce reconstruction from
// different steps: from previously produced hits,sdigits, etc. Each new reconstruction
#include "TClonesArray.h"
#include "TROOT.h"
#include "TTree.h"
+#include "TFile.h"
// --- Standard library ---
#include <iostream.h>
}
//____________________________________________________________________________
-AliPHOSReconstructioner::AliPHOSReconstructioner(const char* headerFile):TTask("AliPHOSReconstructioner","")
+AliPHOSReconstructioner::AliPHOSReconstructioner(const char* headerFile,const char * branchName):
+TTask("AliPHOSReconstructioner","")
{
// ctor
fHeaderFileName = headerFile ;
- fSDigitsBranch="" ;
+ fSDigitsBranch= branchName;
fSDigitizer = new AliPHOSSDigitizer(fHeaderFileName.Data(),fSDigitsBranch.Data()) ;
Add(fSDigitizer) ;
- fDigitsBranch="" ;
+ fDigitsBranch=branchName ;
fDigitizer = new AliPHOSDigitizer(fHeaderFileName.Data(),fDigitsBranch.Data()) ;
Add(fDigitizer) ;
- fRecPointBranch="" ;
+ fRecPointBranch=branchName ;
fClusterizer = new AliPHOSClusterizerv1(fHeaderFileName.Data(),fRecPointBranch.Data()) ;
Add(fClusterizer) ;
- fTSBranch="" ;
+ fTSBranch=branchName ;
fTSMaker = new AliPHOSTrackSegmentMakerv1(fHeaderFileName.Data(),fTSBranch.Data()) ;
Add(fTSMaker) ;
- fRecPartBranch="" ;
+ fRecPartBranch=branchName ;
fPID = new AliPHOSPIDv1(fHeaderFileName.Data(),fRecPartBranch.Data()) ;
Add(fPID) ;
gAlice->GetEvent(0) ;
if(fSDigitizer->IsActive()&& gAlice->TreeS()){ //Will produce SDigits
-
TBranch * sdigitsBranch = 0;
TBranch * sdigitizerBranch = 0;
}
if(fTSMaker->IsActive() && gAlice->TreeR()){ //Produce TrackSegments
-
TBranch * tsMakerBranch = 0;
TBranch * tsBranch = 0;
if(!fIsInitialized){
// Initialisation
- fSDigitsBranch="" ;
+ fSDigitsBranch="Default" ;
fSDigitizer = new AliPHOSSDigitizer(fHeaderFileName.Data(),fSDigitsBranch.Data()) ;
Add(fSDigitizer) ;
- fDigitsBranch="" ;
+ fDigitsBranch="Default" ;
fDigitizer = new AliPHOSDigitizer(fHeaderFileName.Data(),fDigitsBranch.Data()) ;
Add(fDigitizer) ;
- fRecPointBranch="" ;
+ fRecPointBranch="Default" ;
fClusterizer = new AliPHOSClusterizerv1(fHeaderFileName.Data(),fRecPointBranch.Data()) ;
Add(fClusterizer) ;
- fTSBranch="" ;
+ fTSBranch="Default" ;
fTSMaker = new AliPHOSTrackSegmentMakerv1(fHeaderFileName.Data(),fTSBranch.Data()) ;
Add(fTSMaker) ;
- fRecPartBranch="" ;
+ fRecPartBranch="Default" ;
fPID = new AliPHOSPIDv1(fHeaderFileName.Data(),fRecPartBranch.Data()) ;
Add(fPID) ;
//____________________________________________________________________________
AliPHOSReconstructioner::~AliPHOSReconstructioner()
{
- // dtor
- if(fSDigitizer)
- delete fSDigitizer ;
+ // Delete data members if any
+
+// if(fSDigitizer)
+// delete fSDigitizer ;
- if(fDigitizer)
- delete fDigitizer ;
+// if(fDigitizer)
+// delete fDigitizer ;
- if(fClusterizer)
- delete fClusterizer ;
+// if(fClusterizer)
+// delete fClusterizer ;
- if(fTSMaker)
- delete fTSMaker ;
+// if(fTSMaker)
+// delete fTSMaker ;
- if(fPID)
- delete fPID ;
+// if(fPID)
+// delete fPID ;
+
+// TFile * file = (TFile*) gROOT->GetFile(fHeaderFileName.Data()) ;
+
+// if(file != 0) {
+// file->Close();
+// delete file;
+// printf("File %s is closed\n",fHeaderFileName.Data());
+// }
+
}
//____________________________________________________________________________
-void AliPHOSReconstructioner::SetBranchTitle(const char* branch, const char * title){
+void AliPHOSReconstructioner::SetBranchTitle(const char* branch, const char * title)
+{
//Diverge correcpoinding branch to the file "title"
if(strcmp(branch,"SDigits") == 0){
}
if(strcmp(branch,"Digits") == 0){
- fDigitizer->SetDigitsBranch(title) ;
- fClusterizer->SetDigitsBranch(title) ;
+ fDigitizer->SetName(title) ;
+ fClusterizer->SetName(title) ;
fDigitsBranch = title ;
return ;
}
fSDigitsBranch = title ;
break ;
case 16: //"AliPHOSDigitizer"
- fDigitizer->SetDigitsBranch(title) ;
- fClusterizer->SetDigitsBranch(title) ;
+ fDigitizer->SetName(title) ;
+ fClusterizer->SetName(title) ;
fDigitsBranch = title ;
break ;
case 18: //"AliPHOSClusterizer"
}
}
- delete moduleName;
+ delete [] moduleName;
}
//____________________________________________________________________________
-void AliPHOSReconstructioner::Print(Option_t * option)const
-{
- // Print the parameters of the reconstructioner
+
+void AliPHOSReconstructioner::Print(Option_t * option)const {
+ // Print reconstructioner data
+
cout << "-----------------AliPHOSReconstructioner---------------" << endl ;
cout << " Reconstruction of the header file " <<fHeaderFileName.Data() << endl ;
cout << " with the following modules: " << endl ;