]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TPC/AliTPCcalibDB.cxx
AliFatal in case of missing calibration entries (Marian)
[u/mrichter/AliRoot.git] / TPC / AliTPCcalibDB.cxx
index 10f3689b95e28c10dedd53987d13b20fb8c52140..50be7ddce0cecee8c8861154cb0b5d5617b01db1 100644 (file)
@@ -32,6 +32,7 @@
 
 #include "AliTPCcalibDB.h"
 
+#include "AliTPCParam.h"
 #include "AliTPCCalROC.h"
 #include "AliTPCCalPad.h"
 #include "AliTPCCalDet.h"
@@ -90,7 +91,7 @@ AliTPCcalibDB::AliTPCcalibDB()
   //
   // constructor
   //  
-
+  fRun = AliCDBManager::Instance()->GetRun();
   Update();    // temporary
 }
 
@@ -106,6 +107,7 @@ AliTPCcalibDB::~AliTPCcalibDB()
   //if (fPadTime0) delete fPadTime0;
   //if (fPadPRFWidth) delete fPadPRFWidth;
   //if (fPadNoise) delete fPadNoise;
+  if (fParam) {delete fParam; fParam = 0;}
 }
 
 
@@ -187,7 +189,7 @@ void AliTPCcalibDB::Update(){
 
   entry          = GetCDBEntry("TPC/Calib/Parameters");
   if (entry){
-    //if (fPadNoise) delete fPadNoise;
+    if (fParam) {delete fParam; fParam = 0;}
     entry->SetOwner(kTRUE);
     fParam = (AliTPCParam*)(entry->GetObject()->Clone());
   }
@@ -197,3 +199,54 @@ void AliTPCcalibDB::Update(){
   AliCDBManager::Instance()->SetCacheFlag(cdbCache); // reset original CDB cache
   
 }
+
+
+AliTPCCalPad*  AliTPCcalibDB::GetPadGainFactor() {
+  //
+  // GetPadGainFactor  
+  //
+  if (!fPadGainFactor) AliFatal("Pad gain calibration entry not available\n");  
+  return fPadGainFactor;
+}
+AliTPCCalPad*  AliTPCcalibDB::GetPadTime0() {
+  //
+  //   GetPadTime0
+  //
+  if (!fPadTime0) AliFatal("Time 0 calibration entry not available\n");  
+  return fPadTime0;
+}
+
+AliTPCCalPad*  AliTPCcalibDB::GetPadPRFWidth() {
+  //
+  // GetPRF width  
+  //
+  if (!fPadPRFWidth) AliFatal("PRF calibration entry not available\n");    
+  return fPadPRFWidth;
+}
+
+AliTPCCalPad*  AliTPCcalibDB::GetPadNoise() {
+  //
+  // GetPadNoise  
+  //
+  if (!fPadNoise) AliFatal("Pad noise calibration entry not available\n");  
+  return fPadNoise;
+}
+
+AliTPCCalPad*  AliTPCcalibDB::GetPedestals() {
+  //
+  // GetPedestal  
+  //
+  if (!fPadGainFactor) AliFatal("Pedestal calibration entry not available\n");  
+  return fPedestals;
+}
+
+AliTPCParam*   AliTPCcalibDB::GetParameters(){
+  //
+  // GetParameters
+  //
+  if (!fParam) AliFatal("Parameters calibration entry not available\n");  
+  return fParam;
+}
+
+
+