* provided "as is" without express or implied warranty. *
**************************************************************************/
-/* $Id: $ */
+/* $Id$ */
// This class extracts the signal parameters (energy, time, quality)
// from ALTRO samples. Energy is in ADC counts, time is in time bin units.
// Time is the first time bin
// Signal overflows is there are at least 3 samples of the same amplitude above 900
+ fOverflow= kFALSE ;
fEnergy = 0;
if (fNBunches > 1) {
fQuality = 1000;
pedMean += signal[i];
pedRMS += signal[i]*signal[i] ;
}
- if(signal[i] > maxSample) maxSample = signal[i];
+ if(signal[i] > maxSample){ maxSample = signal[i]; nMax=0;}
if(signal[i] == maxSample) nMax++;
}
pedestal += truePed - altroSettings ;
}
else{
- AliWarning(Form("Can not read data from OCDB")) ;
+ AliDebug(2,Form("Pedestal and offset are not read from OCDB. Use 0 for their values.")) ;
}
}
fEnergy-=pedestal ;
if (fEnergy < kBaseLine) fEnergy = 0;
//Evaluate time
- Int_t iStart = sigLength-1;
- while(iStart>=0 && signal[iStart]-pedestal <kBaseLine) iStart-- ;
- fTime = sigStart-iStart-2; //2: 1 due to oversubtraction in line above, another 1 due to signal started before amp increased
+ fTime = sigStart-sigLength-3;
const Int_t nLine= 6 ; //Parameters of fitting
const Float_t eMinTOF = 10. ; //Choosed from beam-test and cosmic analyis
const Float_t kAmp=0.35 ; //Result slightly depends on them, so no getters
if(det == 0){
return kTRUE;
}
+ if(np == 0){
+ return kFALSE;
+ }
Double_t c1 = (np*sxy - sx*sy)/det; //slope
Double_t c0 = (sy-c1*sx)/np; //offset
if(c1 == 0){