]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSDetTypeRec.cxx
bugfix: undeleted characters in data type id from previous data type setting
[u/mrichter/AliRoot.git] / ITS / AliITSDetTypeRec.cxx
index 4acdcbde1a1cf864fc47887973d468b1eca45f4b..47b9a54b5dd8c41a5d0f8d03ff191dc772e2d5c3 100644 (file)
@@ -158,15 +158,17 @@ AliITSDetTypeRec::~AliITSDetTypeRec(){
     fSegmentation = 0;
   }
   if(fCalibration){
-    AliITSresponse* rspd = ((AliITSCalibration*)fCalibration->At(GetITSgeom()->GetStartSPD()))->GetResponse();    
-    AliITSresponse* rsdd = ((AliITSCalibration*)fCalibration->At(GetITSgeom()->GetStartSDD()))->GetResponse();
-    AliITSresponse* rssd = ((AliITSCalibration*)fCalibration->At(GetITSgeom()->GetStartSSD()))->GetResponse();
-    if(rspd) delete rspd;
-    if(rsdd) delete rsdd;
-    if(rssd) delete rssd;
-    fCalibration->Delete();
-    delete fCalibration;
-    fCalibration = 0;
+    if(!(AliCDBManager::Instance()->GetCacheFlag())) {
+      AliITSresponse* rspd = ((AliITSCalibration*)fCalibration->At(GetITSgeom()->GetStartSPD()))->GetResponse();    
+      AliITSresponse* rsdd = ((AliITSCalibration*)fCalibration->At(GetITSgeom()->GetStartSDD()))->GetResponse();
+      AliITSresponse* rssd = ((AliITSCalibration*)fCalibration->At(GetITSgeom()->GetStartSSD()))->GetResponse();
+      if(rspd) delete rspd;
+      if(rsdd) delete rsdd;
+      if(rssd) delete rssd;
+      fCalibration->Delete();
+      delete fCalibration;
+      fCalibration = 0;
+    }
   }
   if(fPreProcess) delete fPreProcess;
   if(fPostProcess) delete fPostProcess;
@@ -345,7 +347,7 @@ void AliITSDetTypeRec::SetDefaults(){
     }
     if(dettype==1){
       AliITSCalibrationSDD* res=(AliITSCalibrationSDD*) GetCalibrationModel(GetITSgeom()->GetStartSDD()); 
-      seg = new AliITSsegmentationSDD(GetITSgeom(),res);
+      seg = new AliITSsegmentationSDD(GetITSgeom());
       SetSegmentationModel(dettype,seg);
       const char *kopt = ((AliITSresponseSDD*)res->GetResponse())->ZeroSuppOption();
       if((!strstr(kopt,"2D"))&&(!strstr(kopt,"1D"))) SetDigitClassName(dettype,"AliITSdigit");
@@ -387,7 +389,7 @@ Bool_t AliITSDetTypeRec::GetCalibration() {
     fCalibration->Clear();
   }
 
-  AliCDBEntry *entrySPD = AliCDBManager::Instance()->Get("ITS/Calib/CalibSPD");
+  AliCDBEntry *entrySPD = AliCDBManager::Instance()->Get("ITS/Calib/SPDDead");
   AliCDBEntry *entrySDD = AliCDBManager::Instance()->Get("ITS/Calib/CalibSDD");
  
  //  AliCDBEntry *entrySSD = AliCDBManager::Instance()->Get("ITS/Calib/CalibSSD");