10 zeroSignalBeforeStart(pad);
13 for (
int i = fStartIndex; i < 512; ++i)
17 void AtTrapezoidFilter::setSignalStart(
AtPad *pad)
22 void AtTrapezoidFilter::zeroSignalBeforeStart(
AtPad *pad)
24 for (
int i = 0; i < fStartIndex; ++i) {
30 void AtTrapezoidFilter::setDVector(
AtPad *pad)
33 for (
int i = 0; i < 512; ++i) {
34 d.push_back(pad->
GetADC(i));
35 if (i - fRiseTime >= 0)
36 d.back() -= pad->
GetADC(i - fRiseTime);
37 if (i - fTopTime >= 0)
38 d.back() -= pad->
GetADC(i - fTopTime);
39 if (i - fRiseTime - fTopTime >= 0)
40 d.back() += pad->
GetADC(i - fTopTime - fRiseTime);
44 Float_t AtTrapezoidFilter::r(
int index)
46 return p(index) + fM * d.at(index);
48 Float_t AtTrapezoidFilter::p(
int index)
52 return p(index - 1) + d.at(index);
54 Float_t AtTrapezoidFilter::s(
int index)
58 return s(index - 1) + r(index);