libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
maptrace.h
Go to the documentation of this file.
1#pragma once
2
3#include <vector>
4#include <memory>
5
6#include <QObject>
7#include <QDataStream>
8#include <QMetaType>
9
10
13#include "trace.h"
14#include "datapoint.h"
16
17namespace pappso
18{
19
20
21class MapTrace;
22
23// FIXME: not sure how these are actually used?
24PMSPP_LIB_DECL QDataStream &operator<<(QDataStream &out, const Trace &trace);
25PMSPP_LIB_DECL QDataStream &operator>>(QDataStream &out, Trace &trace);
26
27
28typedef std::shared_ptr<MapTrace> MapTraceSPtr;
29typedef std::shared_ptr<const MapTrace> MapTraceCstSPtr;
30
31class TraceCombiner;
34
35class PMSPP_LIB_DECL MapTrace : public std::map<pappso_double, pappso_double>
36{
37 public:
38 MapTrace();
40 const std::vector<std::pair<pappso_double, pappso_double>> &dataPoints);
41 MapTrace(const std::vector<DataPoint> &dataPoints);
42 MapTrace(const MapTrace &other);
43 MapTrace(const Trace &trace);
44
45 virtual ~MapTrace();
46
47 size_t initialize(const std::vector<pappso_double> &xVector,
48 const std::vector<pappso_double> &yVector);
49
50 size_t initialize(const std::map<pappso_double, pappso_double> &map);
51
52 virtual MapTrace &operator=(const MapTrace &other);
53
56
57 std::vector<pappso_double> xValues();
58 std::vector<pappso_double> yValues();
59
60 void insertOrUpdate(const DataPoint &data_point);
61 void insertOrUpdate(const Trace &trace);
62
63 Trace toTrace() const;
64 QString toString() const;
65
66 protected:
67 private:
68};
69
70
71} // namespace pappso
72
75
76extern int mapTraceMetaTypeId;
77extern int mapTracePtrMetaTypeId;
QString toString() const
Definition maptrace.cpp:231
MapTraceSPtr makeMapTraceSPtr() const
Definition maptrace.cpp:154
virtual MapTrace & operator=(const MapTrace &other)
Definition maptrace.cpp:133
Trace toTrace() const
Definition maptrace.cpp:219
std::vector< pappso_double > xValues()
Definition maptrace.cpp:168
MapTraceCstSPtr makeMapTraceCstSPtr() const
Definition maptrace.cpp:161
size_t initialize(const std::vector< pappso_double > &xVector, const std::vector< pappso_double > &yVector)
Definition maptrace.cpp:89
void insertOrUpdate(const DataPoint &data_point)
Definition maptrace.cpp:192
std::vector< pappso_double > yValues()
Definition maptrace.cpp:180
A simple container of DataPoint instances.
Definition trace.h:148
#define PMSPP_LIB_DECL
int mapTracePtrMetaTypeId
Definition maptrace.cpp:24
int mapTraceMetaTypeId
Definition maptrace.cpp:22
Q_DECLARE_METATYPE(pappso::MapTrace)
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition aa.cpp:39
QDataStream & operator<<(QDataStream &outstream, const MassSpectrum &massSpectrum)
QDataStream & operator>>(QDataStream &instream, MassSpectrum &massSpectrum)
std::shared_ptr< MapTrace > MapTraceSPtr
Definition maptrace.h:28
std::shared_ptr< const MapTrace > MapTraceCstSPtr
Definition maptrace.h:29