IMproved the clean up in the dtor: folders are now deleted (necessary if one wants to
authorschutz <schutz@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 7 Jun 2002 12:05:51 +0000 (12:05 +0000)
committerschutz <schutz@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 7 Jun 2002 12:05:51 +0000 (12:05 +0000)
sdigitize and digitize in one aliroot session and for writing in separate files)

EMCAL/AliEMCALDigitizer.cxx
EMCAL/AliEMCALSDigitizer.cxx
PHOS/AliPHOSDigitizer.cxx
PHOS/AliPHOSSDigitizer.cxx

index c29b59a..3ee6c9c 100644 (file)
@@ -195,6 +195,16 @@ AliEMCALDigitizer::AliEMCALDigitizer(AliRunDigitizer * ard):AliDigitizer(ard)
   if (fSplitFile)       
     if ( fSplitFile->IsOpen() )
       fSplitFile->Close() ;
+  
+  AliEMCALGetter * gime = AliEMCALGetter::GetInstance() ; 
+  // Close the root file
+  gime->CloseFile() ; 
+  // remove the task from the folder list
+  gime->RemoveTask("S",GetName()) ;
+  // remove the Digits from the folder list
+  gime->RemoveObjects("D", GetName()) ;
+ // remove the SDigits from the folder list
+  gime->RemoveSDigits() ;
 
 }
 
index 052545f..2eb4b9b 100644 (file)
@@ -106,8 +106,21 @@ AliEMCALSDigitizer::~AliEMCALSDigitizer()
   if (fSplitFile) 
     if ( fSplitFile->IsOpen() ) 
       fSplitFile->Close() ; 
+  // Close the root file
   AliEMCALGetter * gime = AliEMCALGetter::GetInstance() ; 
   gime->CloseFile() ; 
+
+  // remove the task from the folder list
+  gime->RemoveTask("S",GetName()) ;
+
+  TString name(GetName()) ; 
+  name.Remove(name.Index(":")) ; 
+
+ // remove the Hits from the folder list
+  gime->RemoveObjects("H",name) ;
+
+ // remove the SDigits from the folder list
+  gime->RemoveObjects("S", name) ;
 }
 
 //____________________________________________________________________________ 
index 4da8bd1..5aeac1d 100644 (file)
@@ -136,6 +136,16 @@ AliPHOSDigitizer::AliPHOSDigitizer(AliRunDigitizer * ard):AliDigitizer(ard)
  if (fSplitFile)       
    if ( fSplitFile->IsOpen() )         
      fSplitFile->Close() ;
+ AliPHOSGetter * gime = AliPHOSGetter::GetInstance() ; 
+ // Close the root file
+ gime->CloseFile() ; 
+ // remove the task from the folder list
+ gime->RemoveTask("D",GetName()) ;
+ // remove the Digits from the folder list
+ gime->RemoveObjects("D", GetName()) ;
+ // remove the SDigits from the folder list
+ gime->RemoveSDigits() ;
 
 }
 
index 22b3181..227f40f 100644 (file)
@@ -106,7 +106,20 @@ AliPHOSSDigitizer::~AliPHOSSDigitizer()
     if ( fSplitFile->IsOpen() ) 
       fSplitFile->Close() ; 
   AliPHOSGetter * gime = AliPHOSGetter::GetInstance() ; 
+ // Close the root file
   gime->CloseFile() ; 
+
+ // remove the task from the folder list
+  gime->RemoveTask("S",GetName()) ;
+
+  TString name(GetName()) ; 
+  name.Remove(name.Index(":")) ; 
+
+ // remove the Hits from the folder list
+  gime->RemoveObjects("H",name) ;
+
+ // remove the SDigits from the folder list
+  gime->RemoveObjects("S", name) ;
 }
 
 //____________________________________________________________________________ 
@@ -343,6 +356,7 @@ void AliPHOSSDigitizer::SetSplitFile(const TString splitFileName)
 
   gAlice->MakeTree("S",fSplitFile);
   cwd->cd() ; 
+  cout << "INFO: AliPHOSSDigitizer::SetSPlitMode -> SDigits will be stored in " << splitFileName.Data() << endl ; 
 }
 
 //__________________________________________________________________