40 #include "../../exception/exceptionnotrecognized.h"
81 const QString ¶meters)
91 if(parameters.startsWith(QString(
"%1|").arg(
name())))
93 QStringList params = parameters.split(
"|").back().split(
";");
101 "Building of FilterFloorAmplitudePercentage from string %1 failed")
111 auto it_min =
minYDataPoint(data_points.begin(), data_points.end());
112 auto it_max =
maxYDataPoint(data_points.begin(), data_points.end());
114 if(it_min == data_points.end() || it_max == data_points.end())
117 double min = it_min->y;
118 double max = it_max->y;
120 double amplitude =
max - min;
122 double amplitude_ratio = amplitude *
m_percentage / 100;
124 double threshold = min + amplitude_ratio;
129 for(
auto &&data_point : data_points)
132 if(data_point.y < threshold)
134 data_point.y = threshold;
153 return QString(
"%1|%2").arg(
name()).arg(
161 return "FloorAmplitudePercentage";
excetion to use when an item type is not recognized
Redefines the floor intensity of the Trace.
double getPercentage() const
FilterFloorAmplitudePercentage(double percentage)
void buildFilterFromString(const QString &strBuildParams) override
build this filter using a string
FilterFloorAmplitudePercentage & operator=(const FilterFloorAmplitudePercentage &other)
Trace & filter(Trace &data_points) const override
virtual ~FilterFloorAmplitudePercentage()
QString name() const override
QString toString() const override
Return a string with the textual representation of the configuration data.
A simple container of DataPoint instances.
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
std::vector< DataPoint >::const_iterator maxYDataPoint(std::vector< DataPoint >::const_iterator begin, std::vector< DataPoint >::const_iterator end)
std::vector< DataPoint >::const_iterator minYDataPoint(std::vector< DataPoint >::const_iterator begin, std::vector< DataPoint >::const_iterator end)
@ max
maximum of intensities