]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSDetTypeSim.cxx
Coverity fix
[u/mrichter/AliRoot.git] / ITS / AliITSDetTypeSim.cxx
index 3bafe54405b07195975403c53d1e08c6491df7dd..ba09e78e02d3918ccd83c5918f364397cc679083 100644 (file)
@@ -83,6 +83,7 @@ fSegmentation(), // [NDet]
 fCalibration(),     // [NMod]
 fSSDCalibration(0),
 fSPDNoisy(0),
+fSPDSparseDead(0),
 fNSDigits(0),    //! number of SDigits
 fSDigits("AliITSpListItem",1000),   
 fNDigits(0),     //! number of Digits
@@ -155,6 +156,13 @@ AliITSDetTypeSim::~AliITSDetTypeSim(){
        fSPDNoisy = 0;
       }
     }
+    if(fSPDSparseDead){
+    if(!(AliCDBManager::Instance()->GetCacheFlag())) {
+       fSPDSparseDead->Delete();
+       delete fSPDSparseDead;
+       fSPDSparseDead = 0;
+      }
+    }
     if(fSimuPar) delete fSimuPar;
     if(fRespSDD){
       if(!(AliCDBManager::Instance()->GetCacheFlag())){
@@ -181,6 +189,7 @@ fSegmentation(source.fSegmentation), // [NDet]
 fCalibration(source.fCalibration),     // [NMod]
 fSSDCalibration(source.fSSDCalibration),
 fSPDNoisy(source.fSPDNoisy),
+fSPDSparseDead(source.fSPDSparseDead),
 fNSDigits(source.fNSDigits),    //! number of SDigits
 fSDigits(*((TClonesArray*)source.fSDigits.Clone())),
 fNDigits(source.fNDigits),     //! number of Digits
@@ -369,6 +378,19 @@ void AliITSDetTypeSim::SetSPDNoisyModel(Int_t iMod, AliITSCalibration *cal){
     delete (AliITSCalibration*) fSPDNoisy->At(iMod);
   fSPDNoisy->AddAt(cal,iMod);
 }
+//_______________________________________________________________________
+void AliITSDetTypeSim::SetSPDSparseDeadModel(Int_t iMod, AliITSCalibration *cal){
+  //Set sparse dead pixel info for the SPD module iMod
+  if (fSPDSparseDead==0) {
+    fSPDSparseDead = new TObjArray(fgkDefaultNModulesSPD);
+    fSPDSparseDead->SetOwner(kTRUE);
+    fSPDSparseDead->Clear();
+  }
+
+  if (fSPDNoisy->At(iMod) != 0)
+    delete (AliITSCalibration*) fSPDNoisy->At(iMod);
+  fSPDNoisy->AddAt(cal,iMod);
+}
 //______________________________________________________________________
 void AliITSDetTypeSim::ResetCalibrationArray(){
     //resets response array