9#include "../exportinmportconfig.h"
12#include "../mzrange.h"
13#include "../processing/filters/filterinterface.h"
30 std::vector<DataPoint>::iterator end,
35 std::vector<DataPoint>::const_iterator end,
42 std::vector<DataPoint>::iterator end,
43 const double &y_value);
47 std::vector<DataPoint>::const_iterator end,
48 const double &y_value);
55 std::vector<DataPoint>::iterator end,
60 std::vector<DataPoint>::const_iterator end,
68 std::vector<DataPoint>::iterator end);
72 std::vector<DataPoint>::const_iterator end);
78 std::vector<DataPoint>::iterator end);
82 std::vector<DataPoint>::const_iterator end);
88 std::vector<DataPoint>::const_iterator begin);
93 std::vector<DataPoint>::const_iterator begin);
98 std::vector<DataPoint>::const_iterator end,
104 std::vector<DataPoint>::const_iterator end);
109 std::vector<DataPoint>::const_iterator end);
120 std::vector<DataPoint>::const_iterator end,
127 std::vector<DataPoint>::const_iterator end);
132 std::vector<DataPoint>::const_iterator end,
154 friend class MassSpectrumCombinerInterface;
158 Trace(
const QString &text);
159 Trace(
const std::vector<pappso_double> &xVector,
160 const std::vector<pappso_double> &yVector);
161 Trace(
const std::vector<std::pair<pappso_double, pappso_double>> &dataPoints);
162 Trace(
const std::vector<DataPoint> &dataPoints);
163 Trace(
const std::vector<DataPoint> &&dataPoints);
169 size_t initialize(
const std::vector<pappso_double> &xVector,
170 const std::vector<pappso_double> &yVector);
172 size_t initialize(
const QString &x_text,
const QString &y_text);
173 size_t initialize(
const QString &space_sep_text);
175 size_t initialize(
const Trace &other);
177 size_t initialize(
const std::map<pappso_double, pappso_double> &map);
187 size_t append(
const DataPoint &data_point);
189 std::vector<pappso_double> xValues()
const;
190 std::vector<pappso_double> yValues()
const;
192 std::map<pappso_double, pappso_double> toMap()
const;
219 void sortX(
SortOrder sort_order = SortOrder::ascending);
220 void sortY(
SortOrder sort_order = SortOrder::ascending);
222 std::size_t removeZeroYDataPoints();
229 QString toString()
const;
231 QByteArray xAsBase64Encoded()
const;
232 QByteArray yAsBase64Encoded()
const;
236 std::vector<DataPoint>::const_iterator
244 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)
double medianYTrace(std::vector< DataPoint >::const_iterator begin, std::vector< DataPoint >::const_iterator end)
calculate the median of y value of a trace
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)