libpappsomspp
Library for mass spectrometry
Toggle main menu visibility
Loading...
Searching...
No Matches
msrundatasettreenode.h
Go to the documentation of this file.
1
// GPL 3+
2
// Filippo Rusconi
3
4
#pragma once
5
6
/////////////////////// StdLib includes
7
#include <map>
8
#include <limits>
9
10
11
/////////////////////// Qt includes
12
13
14
/////////////////////// pappsomspp includes
15
16
17
/////////////////////// Local includes
18
#include "
../massspectrum/qualifiedmassspectrum.h
"
19
#include "
pappsomspp/core/precision.h
"
20
#include "
msrundatasettreevisitor.h
"
21
#include "
pappsomspp/export-import-config.h
"
22
23
24
namespace
pappso
25
{
26
27
class
MsRunDataSetTreeNode
;
28
29
typedef
std::shared_ptr<MsRunDataSetTreeNode>
MsRunDataSetTreeNodeSPtr
;
30
typedef
std::shared_ptr<const MsRunDataSetTreeNode>
MsRunDataSetTreeNodeCstSPtr
;
31
32
class
PMSPP_LIB_DECL
MsRunDataSetTreeNode
33
{
34
friend
class
MsRunDataSetTree
;
35
36
public
:
37
MsRunDataSetTreeNode
();
38
MsRunDataSetTreeNode
(
const
MsRunDataSetTreeNode
&other);
39
40
MsRunDataSetTreeNode
(
QualifiedMassSpectrumCstSPtr
mass_spectrum_csp,
41
MsRunDataSetTreeNode
*parent_p =
nullptr
);
42
43
virtual
~MsRunDataSetTreeNode
();
44
45
MsRunDataSetTreeNode
&
operator=
(
const
MsRunDataSetTreeNode
&other);
46
47
void
setQualifiedMassSpectrum
(
48
QualifiedMassSpectrumCstSPtr
qualified_mass_spectrum_csp);
49
QualifiedMassSpectrumCstSPtr
getQualifiedMassSpectrum
()
const
;
50
51
void
setParent
(
MsRunDataSetTreeNode
*parent);
52
MsRunDataSetTreeNode
*
getParent
()
const
;
53
bool
hasParent
()
const
;
54
55
void
size
(std::size_t &cumulative_node_count)
const
;
56
57
MsRunDataSetTreeNode
*
findNode
(std::size_t spectrum_index);
58
MsRunDataSetTreeNode
*
59
findNode
(
QualifiedMassSpectrumCstSPtr
mass_spectrum_csp);
60
61
void
flattenedView
(std::vector<MsRunDataSetTreeNode *> &nodes,
62
bool
with_descendants =
false
);
63
void
flattenedViewChildrenOnly
(std::vector<MsRunDataSetTreeNode *> &nodes,
64
bool
with_descendants =
false
);
65
66
void
flattenedViewMsLevelNodes
(std::size_t ms_level,
67
std::size_t
depth
,
68
std::vector<MsRunDataSetTreeNode *> &nodes,
69
bool
with_descendants =
false
);
70
71
std::vector<MsRunDataSetTreeNode *>
72
productNodesByPrecursorMz
(
pappso_double
precursor_mz,
73
PrecisionPtr
precision_ptr,
74
std::vector<MsRunDataSetTreeNode *> &nodes);
75
76
77
std::vector<MsRunDataSetTreeNode *>
78
precursorIonNodesByPrecursorMz
(
pappso_double
precursor_mz,
79
PrecisionPtr
precision_ptr,
80
std::vector<MsRunDataSetTreeNode *> &nodes);
81
82
83
void
accept
(
MsRunDataSetTreeNodeVisitorInterface
&visitor);
84
85
// Utility functions.
86
std::size_t
depth
(std::size_t
depth
)
const
;
87
88
QString
toString
(
bool
with_data =
false
)
const
;
89
90
private
:
91
QualifiedMassSpectrumCstSPtr
mcsp_massSpectrum
=
nullptr
;
92
93
MsRunDataSetTreeNode
*
mp_parent
=
nullptr
;
94
95
std::vector<MsRunDataSetTreeNode *>
m_children
;
96
};
97
98
}
// namespace pappso
pappso::MsRunDataSetTreeNodeVisitorInterface
Definition
msrundatasettreevisitor.h:25
pappso::MsRunDataSetTreeNode
Definition
msrundatasettreenode.h:33
pappso::MsRunDataSetTreeNode::MsRunDataSetTree
friend class MsRunDataSetTree
Definition
msrundatasettreenode.h:34
pappso::MsRunDataSetTreeNode::precursorIonNodesByPrecursorMz
std::vector< MsRunDataSetTreeNode * > precursorIonNodesByPrecursorMz(pappso_double precursor_mz, PrecisionPtr precision_ptr, std::vector< MsRunDataSetTreeNode * > &nodes)
Definition
msrundatasettreenode.cpp:309
pappso::MsRunDataSetTreeNode::flattenedView
void flattenedView(std::vector< MsRunDataSetTreeNode * > &nodes, bool with_descendants=false)
Definition
msrundatasettreenode.cpp:202
pappso::MsRunDataSetTreeNode::flattenedViewChildrenOnly
void flattenedViewChildrenOnly(std::vector< MsRunDataSetTreeNode * > &nodes, bool with_descendants=false)
Definition
msrundatasettreenode.cpp:226
pappso::MsRunDataSetTreeNode::mcsp_massSpectrum
QualifiedMassSpectrumCstSPtr mcsp_massSpectrum
Definition
msrundatasettreenode.h:91
pappso::MsRunDataSetTreeNode::toString
QString toString(bool with_data=false) const
Definition
msrundatasettreenode.cpp:426
pappso::MsRunDataSetTreeNode::getQualifiedMassSpectrum
QualifiedMassSpectrumCstSPtr getQualifiedMassSpectrum() const
Definition
msrundatasettreenode.cpp:81
pappso::MsRunDataSetTreeNode::flattenedViewMsLevelNodes
void flattenedViewMsLevelNodes(std::size_t ms_level, std::size_t depth, std::vector< MsRunDataSetTreeNode * > &nodes, bool with_descendants=false)
Definition
msrundatasettreenode.cpp:238
pappso::MsRunDataSetTreeNode::depth
std::size_t depth(std::size_t depth) const
Definition
msrundatasettreenode.cpp:379
pappso::MsRunDataSetTreeNode::setParent
void setParent(MsRunDataSetTreeNode *parent)
Definition
msrundatasettreenode.cpp:88
pappso::MsRunDataSetTreeNode::hasParent
bool hasParent() const
Definition
msrundatasettreenode.cpp:104
pappso::MsRunDataSetTreeNode::size
void size(std::size_t &cumulative_node_count) const
Definition
msrundatasettreenode.cpp:116
pappso::MsRunDataSetTreeNode::getParent
MsRunDataSetTreeNode * getParent() const
Definition
msrundatasettreenode.cpp:95
pappso::MsRunDataSetTreeNode::MsRunDataSetTreeNode
MsRunDataSetTreeNode()
Definition
msrundatasettreenode.cpp:28
pappso::MsRunDataSetTreeNode::mp_parent
MsRunDataSetTreeNode * mp_parent
Definition
msrundatasettreenode.h:93
pappso::MsRunDataSetTreeNode::accept
void accept(MsRunDataSetTreeNodeVisitorInterface &visitor)
Definition
msrundatasettreenode.cpp:363
pappso::MsRunDataSetTreeNode::setQualifiedMassSpectrum
void setQualifiedMassSpectrum(QualifiedMassSpectrumCstSPtr qualified_mass_spectrum_csp)
Definition
msrundatasettreenode.cpp:73
pappso::MsRunDataSetTreeNode::findNode
MsRunDataSetTreeNode * findNode(std::size_t spectrum_index)
Definition
msrundatasettreenode.cpp:133
pappso::MsRunDataSetTreeNode::m_children
std::vector< MsRunDataSetTreeNode * > m_children
Definition
msrundatasettreenode.h:95
pappso::MsRunDataSetTreeNode::productNodesByPrecursorMz
std::vector< MsRunDataSetTreeNode * > productNodesByPrecursorMz(pappso_double precursor_mz, PrecisionPtr precision_ptr, std::vector< MsRunDataSetTreeNode * > &nodes)
Definition
msrundatasettreenode.cpp:266
pappso::MsRunDataSetTreeNode::operator=
MsRunDataSetTreeNode & operator=(const MsRunDataSetTreeNode &other)
Definition
msrundatasettreenode.cpp:58
export-import-config.h
PMSPP_LIB_DECL
#define PMSPP_LIB_DECL
Definition
export-import-config.h:14
msrundatasettreevisitor.h
pappso
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition
aa.cpp:39
pappso::pappso_double
double pappso_double
A type definition for doubles.
Definition
types.h:60
pappso::QualifiedMassSpectrumCstSPtr
std::shared_ptr< const QualifiedMassSpectrum > QualifiedMassSpectrumCstSPtr
Definition
qualifiedmassspectrum.h:44
pappso::MsRunDataSetTreeNodeCstSPtr
std::shared_ptr< const MsRunDataSetTreeNode > MsRunDataSetTreeNodeCstSPtr
Definition
msrundatasettreenode.h:30
pappso::MsRunDataSetTreeNodeSPtr
std::shared_ptr< MsRunDataSetTreeNode > MsRunDataSetTreeNodeSPtr
Definition
msrundatasettreenode.h:29
pappso::PrecisionPtr
const PrecisionBase * PrecisionPtr
Definition
precision.h:122
precision.h
qualifiedmassspectrum.h
pappsomspp
core
msrun
msrundatasettreenode.h
Generated on
for libpappsomspp by
1.17.0