libpappsomspp
Library for mass spectrometry
Toggle main menu visibility
Loading...
Searching...
No Matches
integrationscope.h
Go to the documentation of this file.
1
// Copyright 2021 Filippo Rusconi
2
// GPLv3+
3
4
#pragma once
5
6
/////////////////////// StdLib includes
7
#include <vector>
8
#include <limits>
9
10
/////////////////////// Qt includes
11
#include <QString>
12
#include <QPointF>
13
14
15
/////////////////////// Local includes
16
#include "
pappsomspp/export-import-config.h
"
17
#include "
../../types.h
"
18
#include "
integrationscopebase.h
"
19
20
namespace
pappso
21
{
22
23
// This class represents the case where the user draws a line in a trace plot
24
// widget, with the aim of integrating data in single-dimension manner (over a
25
// range in the X axis). Having no height, this IntegrationScope is like a line.
26
27
/* Like this:
28
29
P---------------------------+
30
31
|--------- m_width ---------|
32
33
With P the m_point.
34
35
*/
36
37
class
PMSPP_LIB_DECL
IntegrationScope
:
public
IntegrationScopeBase
38
{
39
Q_PROPERTY(QPointF
point
READ
getPoint
() WRITE
setPoint
() NOTIFY
pointChanged
() FINAL)
40
Q_PROPERTY(
double
width READ
getWidth
() WRITE
setWidth
() NOTIFY
widthChanged
() FINAL)
41
public
:
42
explicit
IntegrationScope
();
43
explicit
IntegrationScope
(
const
QPointF &
point
,
double
width);
44
explicit
IntegrationScope
(
const
QPointF &
point
,
double
width,
Enums::DataKind
data_kind);
45
explicit
IntegrationScope
(
const
IntegrationScope
&other);
46
47
virtual
~IntegrationScope
();
48
49
virtual
IntegrationScope
*
clone
()
const
;
50
51
using
IntegrationScopeBase::operator=;
52
virtual
IntegrationScope
&
operator=
(
const
IntegrationScope
&other);
53
54
virtual
void
setPoint
(
const
QPointF &
point
);
55
virtual
bool
getPoint
(QPointF &
point
)
const override
;
56
57
virtual
IntegrationScopeFeatures
getLeftMostPoint
(QPointF &
point
)
const override
;
58
virtual
IntegrationScopeFeatures
getRightMostPoint
(QPointF &
point
)
const override
;
59
60
virtual
IntegrationScopeFeatures
getTopMostPoint
(QPointF &
point
)
const override
;
61
virtual
IntegrationScopeFeatures
getBottomMostPoint
(QPointF &
point
)
const override
;
62
63
virtual
void
setWidth
(
double
width);
64
virtual
IntegrationScopeFeatures
getWidth
(
double
&width)
const override
;
65
66
virtual
bool
range
(
Enums::Axis
axis,
double
&start,
double
&end)
const override
;
67
68
virtual
void
setDataKindX
(
Enums::DataKind
data_kind)
override
;
69
virtual
bool
getDataKindX
(
Enums::DataKind
&data_kind)
override
;
70
71
bool
is1D
()
const override
;
72
bool
is2D
()
const override
;
73
74
virtual
bool
isRectangle
()
const override
;
75
virtual
bool
isRhomboid
()
const override
;
76
77
virtual
bool
transpose
()
override
;
78
79
virtual
void
update
(
const
QPointF &
point
,
double
width);
80
81
virtual
bool
contains
(
const
QPointF &
point
)
const override
;
82
83
virtual
QString
toString
()
const override
;
84
85
virtual
void
reset
()
override
;
86
87
signals:
88
void
pointChanged
();
89
void
widthChanged
();
90
91
protected
:
92
QPointF
m_point
;
93
double
m_width
;
94
Enums::DataKind
m_dataKindX
=
Enums::DataKind::unset
;
95
};
96
97
typedef
std::shared_ptr<IntegrationScope>
IntegrationScopeSPtr
;
98
typedef
std::shared_ptr<const IntegrationScope>
IntegrationScopeCstSPtr
;
99
100
}
// namespace pappso
pappso::IntegrationScopeBase::IntegrationScopeBase
IntegrationScopeBase()
Definition
integrationscopebase.cpp:21
pappso::IntegrationScope::range
virtual bool range(Enums::Axis axis, double &start, double &end) const override
Definition
integrationscope.cpp:134
pappso::IntegrationScope::setDataKindX
virtual void setDataKindX(Enums::DataKind data_kind) override
Definition
integrationscope.cpp:148
pappso::IntegrationScope::m_dataKindX
Enums::DataKind m_dataKindX
Definition
integrationscope.h:94
pappso::IntegrationScope::getPoint
virtual bool getPoint(QPointF &point) const override
Definition
integrationscope.cpp:86
pappso::IntegrationScope::point
QPointF point
Definition
integrationscope.h:39
pappso::IntegrationScope::getDataKindX
virtual bool getDataKindX(Enums::DataKind &data_kind) override
Definition
integrationscope.cpp:154
pappso::IntegrationScope::clone
virtual IntegrationScope * clone() const
Definition
integrationscope.cpp:54
pappso::IntegrationScope::getRightMostPoint
virtual IntegrationScopeFeatures getRightMostPoint(QPointF &point) const override
Definition
integrationscope.cpp:100
pappso::IntegrationScope::getTopMostPoint
virtual IntegrationScopeFeatures getTopMostPoint(QPointF &point) const override
Definition
integrationscope.cpp:107
pappso::IntegrationScope::IntegrationScope
WRITE setPoint() NOTIFY pointChanged() FINAL) Q_PROPERTY(double width READ getWidth() WRITE setWidth() NOTIFY widthChanged() FINAL) public IntegrationScope(const QPointF &point, double width)
Definition
integrationscope.cpp:26
pappso::IntegrationScope::widthChanged
void widthChanged()
pappso::IntegrationScope::contains
virtual bool contains(const QPointF &point) const override
Definition
integrationscope.cpp:198
pappso::IntegrationScope::m_width
double m_width
Definition
integrationscope.h:93
pappso::IntegrationScope::toString
virtual QString toString() const override
Definition
integrationscope.cpp:204
pappso::IntegrationScope::is1D
bool is1D() const override
Definition
integrationscope.cpp:161
pappso::IntegrationScope::getBottomMostPoint
virtual IntegrationScopeFeatures getBottomMostPoint(QPointF &point) const override
Definition
integrationscope.cpp:114
pappso::IntegrationScope::isRhomboid
virtual bool isRhomboid() const override
Definition
integrationscope.cpp:179
pappso::IntegrationScope::is2D
bool is2D() const override
Definition
integrationscope.cpp:167
pappso::IntegrationScope::setWidth
virtual void setWidth(double width)
Definition
integrationscope.cpp:121
pappso::IntegrationScope::update
virtual void update(const QPointF &point, double width)
Definition
integrationscope.cpp:191
pappso::IntegrationScope::getWidth
virtual IntegrationScopeFeatures getWidth(double &width) const override
Definition
integrationscope.cpp:127
pappso::IntegrationScope::transpose
virtual bool transpose() override
Definition
integrationscope.cpp:185
pappso::IntegrationScope::m_point
QPointF m_point
Definition
integrationscope.h:92
pappso::IntegrationScope::operator=
virtual IntegrationScope & operator=(const IntegrationScope &other)
Definition
integrationscope.cpp:65
pappso::IntegrationScope::setPoint
virtual void setPoint(const QPointF &point)
Definition
integrationscope.cpp:80
pappso::IntegrationScope::getLeftMostPoint
virtual IntegrationScopeFeatures getLeftMostPoint(QPointF &point) const override
Definition
integrationscope.cpp:93
pappso::IntegrationScope::isRectangle
virtual bool isRectangle() const override
Definition
integrationscope.cpp:173
pappso::IntegrationScope::pointChanged
void pointChanged()
pappso::IntegrationScope::reset
virtual void reset() override
Definition
integrationscope.cpp:210
export-import-config.h
PMSPP_LIB_DECL
#define PMSPP_LIB_DECL
Definition
export-import-config.h:14
integrationscopebase.h
pappso::Enums::DataKind
DataKind
Definition
types.h:238
pappso::Enums::DataKind::unset
@ unset
not set
Definition
types.h:239
pappso::Enums::Axis
Axis
Definition
types.h:246
pappso
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition
aa.cpp:39
pappso::IntegrationScopeFeatures
IntegrationScopeFeatures
Definition
integrationscopebase.h:47
pappso::IntegrationScopeSPtr
std::shared_ptr< IntegrationScope > IntegrationScopeSPtr
Definition
integrationscope.h:97
pappso::IntegrationScopeCstSPtr
std::shared_ptr< const IntegrationScope > IntegrationScopeCstSPtr
Definition
integrationscope.h:98
types.h
pappsomspp
core
processing
combiners
integrationscope.h
Generated on
for libpappsomspp by
1.17.0