29 unsigned int smoothing_half_window_length,
32 : m_xicFilterSmoothing(smoothing_half_window_length)
39 : m_xicFilterSmoothing(other.m_xicFilterSmoothing)
88 bool remove_peak_base)
const
91 Trace xic_smoothed(xic);
97 unsigned int nb_tic_start(0);
99 std::vector<DataPoint>::const_iterator it_smoothed;
100 std::vector<DataPoint>::const_iterator it, it_begin;
104 for(it_smoothed = xic_smoothed.begin(), it = xic.begin();
105 it_smoothed != xic_smoothed.end();
109 if((nb_tic_start == 0) && (it_begin != xic.end()) && (banked ==
false))
113 it_begin = xic.end();
119 if(it_begin == xic.end())
126 if((nb_tic_start == 2) && (banked ==
false))
137 if(it_begin != xic.end())
142 TracePeak peak(it_begin, it + 1, remove_peak_base);
mean filter apply mean of y values inside the window : this results in a kind of smoothing
std::size_t getMeanHalfEdgeWindows() const
virtual Trace & filter(Trace &data_points) const override
void setTicStart(double tic_start)
virtual ~TraceDetectionMoulon()
pappso_double getTicStart() const
void detect(const Trace &xic, TraceDetectionSinkInterface &sink, bool remove_peak_base) const override
detect peaks on a trace
FilterMorphoMean m_xicFilterSmoothing
void setFilterMorphoMean(const FilterMorphoMean &smooth)
unsigned int getSmoothingHalfEdgeWindows() const
pappso_double getTicStop() const
TraceDetectionMoulon(unsigned int smoothing_half_window_length, pappso_double tic_start, pappso_double tic_stop)
void setTicStop(double tic_stop)
virtual void setTracePeak(TracePeak &xic_peak)=0
A simple container of DataPoint instances.
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
double pappso_double
A type definition for doubles.