Changed the OpenESD method to take into account the path in the name of the file
authorschutz <schutz@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 8 Mar 2004 11:18:05 +0000 (11:18 +0000)
committerschutz <schutz@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 8 Mar 2004 11:18:05 +0000 (11:18 +0000)
PHOS/AliPHOSGetter.cxx
PHOS/AliPHOSGetter.h

index af07021..4b55e07 100644 (file)
@@ -94,7 +94,9 @@ AliPHOSGetter::AliPHOSGetter(const char* headerFile, const char* version, Option
   fBTE = 0 ; 
   fPrimaries = 0 ; 
   fLoadingStatus = "" ; 
-  fESDFileName = "AliESDs.root" ; 
+  fESDFileName = rl->GetFileName()  ; // this should be the galice.root file
+  fESDFileName.ReplaceAll("galice.root", "AliESDs.root") ;  
   fESDFile = 0 ; 
 }
 
@@ -484,22 +486,28 @@ void AliPHOSGetter::ReadPrimaries()
 AliESD * AliPHOSGetter::ESD(Int_t event)
 {
   //Read the ESD
+
+  AliESD * esd = 0 ; 
   if (!fESDFile)
-    OpenESDFile() ; 
-  
+    if ( !OpenESDFile() ) 
+      return esd ; 
+
   TString esdEvent("ESD") ;  
   esdEvent+= event ; 
-  AliESD * esd = dynamic_cast<AliESD *>(fESDFile->Get(esdEvent)) ; 
+  esd = dynamic_cast<AliESD *>(fESDFile->Get(esdEvent)) ; 
   return esd ; 
 }
 
 //____________________________________________________________________________ 
-Bool_t AliPHOSGetter::OpenESDFile(TString name) 
+Bool_t AliPHOSGetter::OpenESDFile() 
 {
+  //Open the ESD file    
   Bool_t rv = kTRUE ; 
-  fESDFileName = name ; 
-  if (!fESDFile)
-    fESDFile = new TFile(fESDFileName) ;
+  if (!fESDFile) {
+    fESDFile = TFile::Open(fESDFileName) ;
+    if (!fESDFile ) 
+      return kFALSE ; 
+  }
   else if (fESDFile->IsOpen()) {
     fESDFile->Close() ; 
     fESDFile = TFile::Open(fESDFileName) ;
index 05dbe25..b083d74 100644 (file)
@@ -185,7 +185,7 @@ public:
   void Reset() ;
   
   AliESD * ESD(Int_t event = 0) ;
-  Bool_t OpenESDFile(TString name = "AliESDs.root") ;
+  Bool_t OpenESDFile() ;
   
 private: