Mode protection against absence of calib.data from AliPHOSCalibData to AliPHOSCluster...
authorkharlov <kharlov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 2 May 2007 13:41:22 +0000 (13:41 +0000)
committerkharlov <kharlov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 2 May 2007 13:41:22 +0000 (13:41 +0000)
PHOS/AliPHOSCalibData.cxx
PHOS/AliPHOSCalibData.h
PHOS/AliPHOSClusterizerv1.cxx

index ac42bd1..db6ed5f 100644 (file)
@@ -54,14 +54,14 @@ ClassImp(AliPHOSCalibData)
     fCalibDataEmc = (AliPHOSEmcCalibData*)entryEmc->GetObject();
 
   if(!fCalibDataEmc)
-    AliFatal("Calibration parameters for PHOS EMC not found. Stop reconstruction!\n");
+    AliWarning("Calibration parameters for PHOS EMC not found. Create a new set.\n");
     
   AliCDBEntry* entryCpv = AliCDBManager::Instance()->Get(fCpvDataPath.Data());
   if(entryCpv)
     fCalibDataCpv = (AliPHOSCpvCalibData*)entryCpv->GetObject();
 
   if(!fCalibDataCpv)
-    AliFatal("Calibration parameters for PHOS CPV not found. Stop reconstruction!\n");
+    AliWarning("Calibration parameters for PHOS CPV not found. Create a new set.\n");
 
   AliCDBEntry* entryEmcBadMap = AliCDBManager::Instance()->Get(fEmcBadChannelsMapPath.Data());
   if(entryEmcBadMap)
index a8c8c72..48866dd 100644 (file)
@@ -30,6 +30,9 @@ class AliPHOSCalibData: public TNamed {
 
   void Reset();
   virtual void Print(Option_t *option = "") const; 
+
+  AliPHOSEmcCalibData *GetCalibDataEmc() const {return fCalibDataEmc;}
+  AliPHOSCpvCalibData *GetCalibDataCpv() const {return fCalibDataCpv;}
   
   void CreateNew();
   void RandomEmc(Float_t ccMin=0.5   , Float_t ccMax=1.5);
index 1bff0e0..73a91a6 100644 (file)
@@ -18,6 +18,9 @@
 /* History of cvs commits:
  *
  * $Log$
+ * Revision 1.104  2007/04/27 16:55:53  kharlov
+ * Calibration stops if PHOS CDB objects do not exist
+ *
  * Revision 1.103  2007/04/11 11:55:45  policheh
  * SetDistancesToBadChannels() added.
  *
@@ -442,6 +445,11 @@ void AliPHOSClusterizerv1::GetCalibrationParameters()
   // AliCDBStorage* storage = AliCDBManager::Instance()->GetStorage("local://CalibDB");
 
   fCalibData = new AliPHOSCalibData(-1); //use AliCDBManager's run number
+  if (fCalibData->GetCalibDataEmc() == 0)
+    AliFatal("Calibration parameters for PHOS EMC not found. Stop reconstruction.\n");
+  if (fCalibData->GetCalibDataCpv() == 0)
+    AliFatal("Calibration parameters for PHOS CPV not found. Stop reconstruction.\n");
+
 }
 
 //____________________________________________________________________________