PP Vs Mult Utils: error handling for non-existing calibration improved
authorddobrigk <david.dobrigkeit.chinellato@cern.ch>
Tue, 25 Nov 2014 09:20:35 +0000 (07:20 -0200)
committerddobrigk <david.dobrigkeit.chinellato@cern.ch>
Tue, 25 Nov 2014 09:20:35 +0000 (07:20 -0200)
ANALYSIS/AliPPVsMultUtils.cxx

index 4b2913b..66ea61d 100644 (file)
@@ -79,7 +79,11 @@ Float_t AliPPVsMultUtils::GetMultiplicityPercentile(AliVEvent *event, TString lM
     if ( !fCalibrationLoaded ){ 
       return -1000; //Return absurd value (hopefully noone will use this...) 
     }
-    
+    if ( !fBoundaryHisto_V0M   || !fBoundaryHisto_V0A   || !fBoundaryHisto_V0C ||
+        !fBoundaryHisto_V0MEq || !fBoundaryHisto_V0AEq || !fBoundaryHisto_V0CEq ){
+      return -1000; //Return absurd value (hopefully noone will use this...) 
+    }
+
     Float_t lreturnval = -1;
     
     //Get VZERO Information for multiplicity later
@@ -191,6 +195,13 @@ Bool_t AliPPVsMultUtils::LoadCalibration(Int_t lLoadThisCalibration)
     if ( !fBoundaryHisto_V0M   || !fBoundaryHisto_V0A   || !fBoundaryHisto_V0C ||
         !fBoundaryHisto_V0MEq || !fBoundaryHisto_V0AEq || !fBoundaryHisto_V0CEq ){
         AliInfo(Form("No calibration for run %i exists at the moment!",lLoadThisCalibration));
+        if( lCalibFile_V0M ) lCalibFile_V0M->Close();
+        if( lCalibFile_V0A ) lCalibFile_V0A->Close();
+        if( lCalibFile_V0C ) lCalibFile_V0C->Close();
+        if( lCalibFile_V0MEq ) lCalibFile_V0MEq->Close();
+        if( lCalibFile_V0AEq ) lCalibFile_V0AEq->Close();
+        if( lCalibFile_V0CEq ) lCalibFile_V0CEq->Close();
+        fRunNumber = lLoadThisCalibration;
         return kFALSE; //return denial
     }