3 #include <mevt/ChannelRecData.h>
7 namespace MdPatternFinderAG {
10 fWindowSize(windowSize) ,
19 unsigned int nPatternMatchs = 0;
33 unsigned int firstOneIndex = 0;
34 unsigned int firstOneBin = 0;
35 bool firstOneFound =
false;
43 unsigned int sampleInitBin = 0;
44 bool vSampleInitBin =
false;
46 bool currSample = samples[ currBin ];
49 if ( currSample && !vSampleInitBin ) {
52 if (
fNumOnes == 1 || (firstOneFound && currBin-firstOneIndex + 1 ==
fNumOnes) ) {
57 sampleInitBin = firstOneBin;
58 vSampleInitBin =
true;
71 firstOneIndex = currBin;
72 firstOneBin = currBin;
77 firstOneFound =
false;
81 if (vSampleInitBin &&
fWindowSize <= (currBin-sampleInitBin)+1 ){
83 vSampleInitBin =
false;
84 firstOneFound =
false;
89 return nPatternMatchs;
std::vector< T >::size_type SizeType
void AddPatternMatchBin(unsigned int bin)
Adds the time of a pattern match detection.
ConsecutiveInWindowStrategy(unsigned int windowSize, unsigned int nOnes)
Creates a functor.
Template class for a FADC data or calibrated data container. Use the typedefs (TraceD, TraceI, etc.) defined in Trace-fwd.h.
Channel level reconstruction data.
unsigned int operator()(const utl::TraceB &samples, mevt::ChannelRecData &recData) const
Performs the counting.