]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PMD/AliPMDCalibrator.cxx
Circular dependency
[u/mrichter/AliRoot.git] / PMD / AliPMDCalibrator.cxx
index 4d2c50ffd00ed62df5d347bee74776adc7b48a6b..95b5b18d70e93b76b65f3b7250c472a7e1064abe 100644 (file)
@@ -47,12 +47,10 @@ const Int_t kMaxSMN = 24;
 const Int_t kMaxRow =96;
 const Int_t kMaxCol =96;
 
-AliPMDCalibrator::AliPMDCalibrator()
+AliPMDCalibrator::AliPMDCalibrator():
+  fCalibData(new AliPMDCalibData())
 {
   // Standard Constructor
-
-  fCalibData = new AliPMDCalibData();
-  
   for(Int_t d=0;d<2;d++)
     {
       for(Int_t i=0;i<24;i++)
@@ -70,7 +68,52 @@ AliPMDCalibrator::AliPMDCalibrator()
     }
 }
 // ------------------------------------------------------------------------ //
+AliPMDCalibrator::AliPMDCalibrator(const AliPMDCalibrator &pmdcalibrator):
+  fCalibData(new AliPMDCalibData())
+{
+  for(Int_t d=0;d<2;d++)
+    {
+      for(Int_t i=0;i<24;i++)
+       {
+         fHsmIso[d][i] = pmdcalibrator.fHsmIso[d][i] ;
+         for(Int_t j=0;j<96;j++)
+           {
+             for(Int_t k=0;k<96;k++)
+               {
+                 fGainFact[d][i][j][k] = pmdcalibrator.fGainFact[d][i][j][k];
+                 fHadcIso[d][i][j][k]  = pmdcalibrator.fHadcIso[d][i][j][k];
+               }
+           }
+       }
+    }
 
+}
+// ------------------------------------------------------------------------ //
+AliPMDCalibrator &AliPMDCalibrator::operator=(const AliPMDCalibrator &pmdcalibrator)
+{
+  if(this != &pmdcalibrator)
+    {
+      for(Int_t d=0;d<2;d++)
+       {
+         for(Int_t i=0;i<24;i++)
+           {
+             fHsmIso[d][i] = pmdcalibrator.fHsmIso[d][i] ;
+             for(Int_t j=0;j<96;j++)
+               {
+                 for(Int_t k=0;k<96;k++)
+                   {
+                     fGainFact[d][i][j][k] =
+                       pmdcalibrator.fGainFact[d][i][j][k];
+                     fHadcIso[d][i][j][k]  =
+                       pmdcalibrator.fHadcIso[d][i][j][k];
+                   }
+               }
+           }
+       }
+    }
+  return *this;
+}
+// ------------------------------------------------------------------------ //
 AliPMDCalibrator::~AliPMDCalibrator()
 {
   // dtor
@@ -186,7 +229,7 @@ void AliPMDCalibrator::CalculateIsoCell()
       for (Int_t iddl = 0; iddl < kDDL; iddl++)
        {
          reader.Select("PMD", iddl, iddl);
-         stream.DdlData(&pmdddlcont);
+         stream.DdlData(iddl,&pmdddlcont);
          
          Int_t ientries = pmdddlcont.GetEntries();
          for (Int_t ient = 0; ient < ientries; ient++)
@@ -286,7 +329,8 @@ void AliPMDCalibrator::CalculateIsoCell()
 Bool_t AliPMDCalibrator::Store()
 {
   AliCDBManager *man = AliCDBManager::Instance();
-  man->SetDefaultStorage("local://$ALICE_ROOT");
+  //man->SetDefaultStorage("local://$ALICE_ROOT");
+  if(!man->IsDefaultStorageSet()) return kFALSE;
   AliCDBId id("PMD/Calib/Data",0,0);
   AliCDBMetaData md;
   md.SetResponsible("Zubayer");