3#include <qjsonobject.h>
31 std::vector<DataPoint>::iterator end,
36 std::vector<DataPoint>::const_iterator end,
43 std::vector<DataPoint>::iterator end,
44 const double &y_value);
48 std::vector<DataPoint>::const_iterator end,
49 const double &y_value);
56 std::vector<DataPoint>::iterator end,
61 std::vector<DataPoint>::const_iterator end,
68minYDataPoint(std::vector<DataPoint>::iterator begin, std::vector<DataPoint>::iterator end);
72 std::vector<DataPoint>::const_iterator end);
77maxYDataPoint(std::vector<DataPoint>::iterator begin, std::vector<DataPoint>::iterator end);
81 std::vector<DataPoint>::const_iterator end);
95 std::vector<DataPoint>::const_iterator end,
101 std::vector<DataPoint>::const_iterator end);
106 std::vector<DataPoint>::const_iterator end);
116 std::vector<DataPoint>::const_iterator end,
123 std::vector<DataPoint>::const_iterator end);
127 std::vector<DataPoint>::const_iterator end,
131 std::vector<DataPoint>::const_iterator end,
135 std::vector<DataPoint>::const_iterator end,
158 friend class MassSpectrumCombinerInterface;
162 Trace(
const QString &text);
163 Trace(
const std::vector<pappso_double> &xVector,
const std::vector<pappso_double> &yVector);
164 Trace(
const std::vector<std::pair<pappso_double, pappso_double>> &dataPoints);
165 Trace(
const std::vector<DataPoint> &dataPoints);
166 Trace(
const std::vector<DataPoint> &&dataPoints);
172 size_t initialize(
const std::vector<pappso_double> &xVector,
173 const std::vector<pappso_double> &yVector);
175 size_t initialize(
const QString &x_text,
const QString &y_text);
176 size_t initialize(
const QString &space_sep_text);
178 size_t initialize(
const Trace &other);
180 size_t initialize(
const std::map<pappso_double, pappso_double> &map);
190 size_t append(
const DataPoint &data_point);
192 std::vector<pappso_double> xValues()
const;
193 std::vector<pappso_double> yValues()
const;
195 std::map<pappso_double, pappso_double> toMap()
const;
224 std::size_t removeZeroYDataPoints();
231 QString toString()
const;
239 QJsonObject toJsonObject(
const QString &x_label =
"x",
const QString &y_label =
"y")
const;
241 QByteArray xAsBase64Encoded()
const;
242 QByteArray yAsBase64Encoded()
const;
246 std::vector<DataPoint>::const_iterator dataPointCstIteratorWithX(
pappso_double value)
const;
253 std::vector<DataPoint>::iterator dataPointIteratorWithX(
pappso_double value);
generic interface to apply a filter on a trace
A simple container of DataPoint instances.
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
std::shared_ptr< const Trace > TraceCstSPtr
std::vector< DataPoint >::iterator findDifferentYvalue(std::vector< DataPoint >::iterator begin, std::vector< DataPoint >::iterator end, const double &y_value)
find the first element in which Y is different of value
std::vector< DataPoint >::iterator findFirstEqualOrGreaterX(std::vector< DataPoint >::iterator begin, std::vector< DataPoint >::iterator end, const double &value)
find the first element in which X is equal or greater than the value searched important : it implies ...
std::vector< DataPoint >::iterator findFirstGreaterX(std::vector< DataPoint >::iterator begin, std::vector< DataPoint >::iterator end, const double &value)
find the first element in which X is greater than the value searched important : it implies that Trac...
QDataStream & operator<<(QDataStream &outstream, const MassSpectrum &massSpectrum)
QDataStream & operator>>(QDataStream &instream, MassSpectrum &massSpectrum)
std::vector< DataPoint >::const_iterator moveLowerYLeftDataPoint(const Trace &trace, std::vector< DataPoint >::const_iterator begin)
Move left to the lower value.
std::vector< DataPoint >::const_iterator maxYDataPoint(std::vector< DataPoint >::const_iterator begin, std::vector< DataPoint >::const_iterator end)
Trace incrementByValueX(std::vector< DataPoint >::const_iterator begin, std::vector< DataPoint >::const_iterator end, double increment)
double medianYTrace(std::vector< DataPoint >::const_iterator begin, std::vector< DataPoint >::const_iterator end)
calculate the median of y value of a trace
Trace incrementByValueY(std::vector< DataPoint >::const_iterator begin, std::vector< DataPoint >::const_iterator end, double increment)
@ filter
concerning filters (psm, peptide, protein validation)
double areaTrace(std::vector< DataPoint >::const_iterator begin, std::vector< DataPoint >::const_iterator end)
calculate the area of a trace
std::shared_ptr< Trace > TraceSPtr
double pappso_double
A type definition for doubles.
double meanYTrace(std::vector< DataPoint >::const_iterator begin, std::vector< DataPoint >::const_iterator end)
calculate the mean of y value of a trace
std::vector< DataPoint >::const_iterator moveLowerYRigthDataPoint(const Trace &trace, std::vector< DataPoint >::const_iterator begin)
Move right to the lower value.
double sumYTrace(std::vector< DataPoint >::const_iterator begin, std::vector< DataPoint >::const_iterator end, double init)
calculate the sum of y value of a trace
std::vector< DataPoint >::const_iterator minYDataPoint(std::vector< DataPoint >::const_iterator begin, std::vector< DataPoint >::const_iterator end)
double quantileYTrace(std::vector< DataPoint >::const_iterator begin, std::vector< DataPoint >::const_iterator end, double quantile)
calculate the quantile of y value of a trace
Trace flooredLocalMaxima(std::vector< DataPoint >::const_iterator begin, std::vector< DataPoint >::const_iterator end, double y_floor)
Q_DECLARE_METATYPE(pappso::Trace)