#include"SignalAnalysis.h" #include double pedestal(UInt_t* amp,int length){ double sum=0.; for(int i=0;i psa(UInt_t* amp,int length){ static const int pedSamples=30; assert(length>pedSamples); double ped = pedestal(amp,30); double zAmp[length]; for(int i=0;i pulses; bool inPulse = false; int amp0; int amp1 = 20; int amp2 = 10; while(index2)amp2=amp1; if(length-index>1)amp1=amp0; amp0=zAmp[index++]; if(!inPulse){ if(amp0>threshold){ inPulse=true; pulse_t *p = new pulse_t; p->startTime = index-1; p->samples.push_back(amp0); pulses.push_back(p); } else{ continue; } } else{//in pulse! if(amp0samples.push_back(amp0); continue; } else{ if(amp0<=amp1){//still falling edge pulses.at(pulses.size()-1)->samples.push_back(amp0); continue; } else{//we found local minimum pulse_t *p = new pulse_t; p->startTime = index-1; p->samples.push_back(amp0); pulses.push_back(p); } } } } } return pulses; }