12 #include <klm/simulation/ScintillatorFirmware.h>
32 const int nPointsSigBg = 10;
35 int i, ithr, ibg, sum, bgSum, min;
41 for (i = 0; i < m_nPoints; i++) {
42 if (amp[i] < threshold) {
49 else if (amp[i] < min)
54 return c_ScintillatorFirmwareNoSignal;
56 ibg = std::max(ithr - nPointsSigBg, 0);
60 return c_ScintillatorFirmwareNoSignal;
62 for (i = 0; i < ibg; i++)
63 bgSum = bgSum + amp[i];
64 bg = float(bgSum) / i;
65 sigAmp = bg * m_nPoints - sum;
68 fitData->setStartTime(ithr);
69 fitData->setBackgroundAmplitude(bg);
70 fitData->setAmplitude(sigAmp);
71 fitData->setMinimalAmplitude(min);
72 return c_ScintillatorFirmwareSuccessfulFit;