Corrected posting and cleaning of digitizers (T.Kuhr)
[u/mrichter/AliRoot.git] / PHOS / AliPHOSDigitizer.cxx
index 55a7f15e3536c199de357731bd31fca2aae5aace..352afdc136f84989a89d8b611049db80dc7fb3a8 100644 (file)
@@ -144,8 +144,6 @@ AliPHOSDigitizer::AliPHOSDigitizer(AliRunDigitizer * rd):
   AliPHOSDigitizer::~AliPHOSDigitizer()
 {
   // dtor
-  AliPHOSGetter * gime = AliPHOSGetter::Instance(GetTitle(),fEventFolderName);
-  gime->PhosLoader()->CleanDigitizer();
   delete [] fInputFileNames ; 
   delete [] fEventNames ; 
  
@@ -412,6 +410,9 @@ void AliPHOSDigitizer::Exec(Option_t *option)
   
   AliPHOSGetter * gime = AliPHOSGetter::Instance(GetTitle()) ;
 
+  // Post Digitizer to the white board
+  gime->PostDigitizer(this) ;
+  
   if (fLastEvent == -1) 
     fLastEvent = gime->MaxEvent() - 1 ;
   else if (fManager) 
@@ -436,6 +437,8 @@ void AliPHOSDigitizer::Exec(Option_t *option)
     fDigitsInRun += gime->Digits()->GetEntriesFast() ;  
  }
   
+  gime->PhosLoader()->CleanDigitizer();
+
   if(strstr(option,"tim")){
     gBenchmark->Stop("PHOSDigitizer");
     TString message ; 
@@ -489,9 +492,6 @@ Bool_t AliPHOSDigitizer::Init()
     fInit = kFALSE ; 
   }
 
-  // Post Digitizer to the white board
-  gime->PostDigitizer(this) ;
-  
   fFirstEvent = 0 ; 
   fLastEvent = fFirstEvent ; 
   if (fManager)