]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PHOS/AliPHOSEmcCalibData.cxx
Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / PHOS / AliPHOSEmcCalibData.cxx
index ddb304d9995165bcdde8d19f92d5d587ffe11870..0fc34f2e15edf293d8f4e1dfb98b6d1d00db11c7 100644 (file)
@@ -61,7 +61,9 @@ AliPHOSEmcCalibData::AliPHOSEmcCalibData(const AliPHOSEmcCalibData& calibda) :
        fADCpedestalEmc[module][column][row] = calibda.fADCpedestalEmc[module][column][row];
        fHighLowRatioEmc[module][column][row] = calibda.fHighLowRatioEmc[module][column][row];
        fTimeShiftEmc[module][column][row] = calibda.fTimeShiftEmc[module][column][row];
+       fLGTimeShiftEmc[module][column][row] = calibda.fLGTimeShiftEmc[module][column][row];
         fAltroOffsets[module][column][row] = calibda.fAltroOffsets[module][column][row];
+       fDecal[module][column][row]        = calibda.fDecal[module][column][row];
       }
     }
   }
@@ -84,7 +86,9 @@ AliPHOSEmcCalibData &AliPHOSEmcCalibData::operator =(const AliPHOSEmcCalibData&
          fADCpedestalEmc[module][column][row] = calibda.fADCpedestalEmc[module][column][row];
          fHighLowRatioEmc[module][column][row] = calibda.fHighLowRatioEmc[module][column][row];
          fTimeShiftEmc[module][column][row] = calibda.fTimeShiftEmc[module][column][row];
-          fAltroOffsets[module][column][row] = calibda.fAltroOffsets[module][column][row]; 
+         fLGTimeShiftEmc[module][column][row] = calibda.fLGTimeShiftEmc[module][column][row];
+          fAltroOffsets[module][column][row] = calibda.fAltroOffsets[module][column][row];
+         fDecal[module][column][row]        = calibda.fDecal[module][column][row];
        }
       }
     }
@@ -111,7 +115,9 @@ void AliPHOSEmcCalibData::Reset()
        fADCchannelEmc[module][column][row]  = 0.005;
        fHighLowRatioEmc[module][column][row] = 16. ;
        fTimeShiftEmc[module][column][row] = 0. ;
+       fLGTimeShiftEmc[module][column][row] = 0. ;
         fAltroOffsets[module][column][row] = 0 ;
+       fDecal[module][column][row] = 1.;
       }
     }
   }
@@ -167,7 +173,7 @@ void  AliPHOSEmcCalibData::Print(Option_t *option) const
       printf("============== Module %d\n",module+1);
       for (Int_t column=0; column<56; column++){
        for (Int_t row=0; row<64; row++){
-         printf("%6.3e",fTimeShiftEmc[module][column][row]);
+         printf("%6.3e (%6.3e)",fTimeShiftEmc[module][column][row],fLGTimeShiftEmc[module][column][row]);
        }
        printf("\n");
       }
@@ -220,13 +226,22 @@ Float_t AliPHOSEmcCalibData::GetHighLowRatioEmc(Int_t module, Int_t column, Int_
 //________________________________________________________________
 Float_t AliPHOSEmcCalibData::GetTimeShiftEmc(Int_t module, Int_t column, Int_t row) const
 {
-  //Return EMC pedestal
+  //Return EMC time offset for high gain channel
   //module, column,raw should follow the internal PHOS convention:
   //module 1:5, column 1:56, row 1:64
 
   return fTimeShiftEmc[module-1][column-1][row-1];
 }
 //________________________________________________________________
+Float_t AliPHOSEmcCalibData::GetLGTimeShiftEmc(Int_t module, Int_t column, Int_t row) const
+{
+  //Return EMC time offset for LowGain channel
+  //module, column,raw should follow the internal PHOS convention:
+  //module 1:5, column 1:56, row 1:64
+
+  return fLGTimeShiftEmc[module-1][column-1][row-1];
+}
+//________________________________________________________________
 Float_t AliPHOSEmcCalibData::GetSampleTimeStep()const
 {
    //Returns conversion coefficient from ALTRO smaple time step and secods
@@ -273,12 +288,20 @@ void AliPHOSEmcCalibData::SetHighLowRatioEmc(Int_t module, Int_t column, Int_t r
 //________________________________________________________________
 void AliPHOSEmcCalibData::SetTimeShiftEmc(Int_t module, Int_t column, Int_t row, Float_t value)
 {
-  //Set EMC pedestal
+  //Set EMC time offset for high gain channel
   //module, column,raw should follow the internal PHOS convention:
   //module 1:5, column 1:56, row 1:64
   fTimeShiftEmc[module-1][column-1][row-1] = value;
 }
 //________________________________________________________________
+void AliPHOSEmcCalibData::SetLGTimeShiftEmc(Int_t module, Int_t column, Int_t row, Float_t value)
+{
+  //Set EMC time offset for low gain channel
+  //module, column,raw should follow the internal PHOS convention:
+  //module 1:5, column 1:56, row 1:64
+  fLGTimeShiftEmc[module-1][column-1][row-1] = value;
+}
+//________________________________________________________________
 void AliPHOSEmcCalibData::SetAltroOffsetEmc(Int_t module, Int_t column, Int_t row, Int_t value)
 {
   //Set EMC pedestal
@@ -295,3 +318,21 @@ void AliPHOSEmcCalibData::SetSampleTimeStep(Float_t step)
    fSampleTimeStep = step ;
 }
 
+//________________________________________________________________
+Float_t AliPHOSEmcCalibData::GetADCchannelEmcDecalib(Int_t module, Int_t column, Int_t row) const
+{
+  //Return EMC random (de)calibration coefficient O(1). Used in simulation.
+  //module, column,raw should follow the internal PHOS convention:
+  //module 1:5, column 1:56, row 1:64
+
+  return fDecal[module-1][column-1][row-1];
+}
+
+void AliPHOSEmcCalibData::SetADCchannelEmcDecalib(Int_t module, Int_t column, Int_t row, Float_t value)
+{
+  //Set EMC (de)calibration coefficient O(1). Used in simulation.
+  //module, column,raw should follow the internal PHOS convention:
+  //module 1:5, column 1:56, row 1:64
+
+  fDecal[module-1][column-1][row-1] = value;
+}