- if (adc[pmNumber] > 0) AliDebug(1,Form("PM = %d ADC = %f TDC %f (%f) Int %d (%d %d %d %d %d) %f %f %f %f %d %d",pmNumber, adc[pmNumber],
- digit->Time(),time[pmNumber],
- integrator,
- digit->ChargeADC(8),digit->ChargeADC(9),digit->ChargeADC(10),
- digit->ChargeADC(11),digit->ChargeADC(12),
- fCalibData->GetPedestal(pmNumber),fCalibData->GetSigma(pmNumber),
- fCalibData->GetPedestal(pmNumber+64),fCalibData->GetSigma(pmNumber+64),
- aBBflag[pmNumber],aBGflag[pmNumber]));
-
- mult[pmNumber] = adc[pmNumber]*fCalibData->GetMIPperADC(pmNumber);
+ if (adc[pmNumber] > 0) {
+ AliDebug(1,Form("PM = %d ADC = %f TDC %f (%f) Int %d (%d %d %d %d %d) %f %f %f %f %d %d",pmNumber, adc[pmNumber],
+ digit->Time(),time[pmNumber],
+ integrator,
+ digit->ChargeADC(8),digit->ChargeADC(9),digit->ChargeADC(10),
+ digit->ChargeADC(11),digit->ChargeADC(12),
+ fCalibData->GetPedestal(pmNumber),fCalibData->GetSigma(pmNumber),
+ fCalibData->GetPedestal(pmNumber+64),fCalibData->GetSigma(pmNumber+64),
+ aBBflag[pmNumber],aBGflag[pmNumber]));
+ };
+
+ TF1 *saturationFunc = (TF1*)fSaturationCorr->UncheckedAt(pmNumber);
+ if (!saturationFunc) AliFatal(Form("Saturation correction for channel %d is not found!",pmNumber));
+ AliDebug(1,Form("Saturation PM=%d %f %f",pmNumber,adc[pmNumber],saturationFunc->Eval(adc[pmNumber])));
+ mult[pmNumber] = saturationFunc->Eval(adc[pmNumber])*fCalibData->GetMIPperADC(pmNumber);