libpappsomspp
Library for mass spectrometry
Toggle main menu visibility
Loading...
Searching...
No Matches
quantificationmethod.h
Go to the documentation of this file.
1
/**
2
* \file pappsomspp/masschroq/quantificationmethod.h
3
* \date 24/10/2024
4
* \author Olivier Langella
5
* \brief store parameters related to peak detection and quantification
6
*/
7
8
/*******************************************************************************
9
* Copyright (c) 2024 Olivier Langella
10
*<Olivier.Langella@universite-paris-saclay.fr>.
11
*
12
* This file is part of MassChroQ.
13
*
14
* MassChroQ is free software: you can redistribute it and/or modify
15
* it under the terms of the GNU General Public License as published by
16
* the Free Software Foundation, either version 3 of the License, or
17
* (at your option) any later version.
18
*
19
* MassChroQ is distributed in the hope that it will be useful,
20
* but WITHOUT ANY WARRANTY; without even the implied warranty of
21
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22
* GNU General Public License for more details.
23
*
24
* You should have received a copy of the GNU General Public License
25
* along with MassChroQ. If not, see <http://www.gnu.org/licenses/>.
26
*
27
******************************************************************************/
28
29
#pragma once
30
31
#include <memory>
32
#include <QString>
33
#include "
pappsomspp/export-import-config.h
"
34
#include "
pappsomspp/core/types.h
"
35
#include "
pappsomspp/core/mzrange.h
"
36
#include "
pappsomspp/core/processing/filters/filtersuitestring.h
"
37
#include "
pappsomspp/core/processing/detection/tracedetectioninterface.h
"
38
#include "
pappsomspp/core/processing/project/projectparameters.h
"
39
#include <QJsonObject>
40
41
namespace
pappso::masschroq
42
{
43
44
class
QuantificationMethod
;
45
46
typedef
std::shared_ptr<QuantificationMethod>
QuantificationMethodSp
;
47
48
/**
49
* @todo write docs
50
*/
51
class
PMSPP_LIB_DECL
QuantificationMethod
52
{
53
public
:
54
/**
55
* Default constructor
56
*/
57
QuantificationMethod
(
const
QString &
id
);
58
59
QuantificationMethod
(
const
QuantificationMethod
&other);
60
61
/**
62
* Destructor
63
*/
64
virtual
~QuantificationMethod
();
65
66
const
QString &
getId
()
const
;
67
68
void
setXicExtractMethod
(
Enums::XicExtractMethod
method);
69
70
Enums::XicExtractMethod
getXicExtractMethod
()
const
;
71
72
void
setXicExtractionLowerPrecisionPtr
(
pappso::PrecisionPtr
precision);
73
74
void
setXicExtractionUpperPrecisionPtr
(
pappso::PrecisionPtr
precision);
75
76
pappso::PrecisionPtr
getXicExtractionMeanPrecisionPtr
()
const
;
77
78
void
addXicFilter
(
const
pappso::FilterNameInterfaceSPtr
&
filter
);
79
void
setXicFilter
(
const
pappso::FilterNameInterfaceSPtr
&
filter
);
80
81
void
setTraceDetectionInterfaceCstSPtr
(
const
pappso::TraceDetectionInterfaceCstSPtr
&detection);
82
83
84
const
pappso::TraceDetectionInterfaceCstSPtr
&
getTraceDetectionInterfaceCstSPtr
()
const
;
85
86
const
pappso::FilterNameInterfaceSPtr
getXicFilter
()
const
;
87
88
const
FilterSuiteStringSPtr
&
getFilterSuiteStringSPtr
()
const
;
89
90
91
const
pappso::MzRange
getXicExtractionMzRange
(
double
mz)
const
;
92
pappso::ProjectParameters
getProjectParameters
()
const
;
93
94
95
void
setJsonObject
(
const
QJsonObject &json_object);
96
97
QJsonObject
getJsonObject
()
const
;
98
99
pappso::PrecisionPtr
getXicExtractionLowerPrecisionPtr
()
const
;
100
pappso::PrecisionPtr
getXicExtractionUppersPrecisionPtr
()
const
;
101
102
103
void
setMatchBetweenRun
(
bool
is_match);
104
bool
getMatchBetweenRun
()
const
;
105
106
void
setIsotopeMinimumRatio
(
double
ratio);
107
double
getIsotopeMinimumRatio
()
const
;
108
109
110
void
setXicExtractionRtRange
(
double
rt_range);
111
double
getXicExtractionRtRange
()
const
;
112
113
private
:
114
const
QString
m_id
;
115
Enums::XicExtractMethod
m_xicExtractMethod
=
Enums::XicExtractMethod::max
;
116
117
pappso::PrecisionPtr
mp_xicExtractionLowerPrecisionPtr
=
nullptr
;
118
pappso::PrecisionPtr
mp_xicExtractionUppersPrecisionPtr
=
nullptr
;
119
120
121
/** @brief set the retention time range in seconds around the target rt
122
*
123
* only the interesting part of the xic will be extracted, form the rt target
124
* - range_in_seconds to rt target + range in seconds by default, all the LC
125
* run time is extracted
126
*
127
* @param range_in_seconds range in seconds
128
*/
129
double
m_xicExtractionRetentionTimeAroundTarget
= 300;
130
131
132
/// the xic filters
133
pappso::FilterSuiteStringSPtr
m_xicFilterSuite
;
134
135
136
/// the peak detection method for this quantification
137
pappso::TraceDetectionInterfaceCstSPtr
mcsp_traceDetectionInterfaceCstSPtr
;
138
139
bool
m_matchBetweenRun
=
true
;
140
141
/** @brief the minimum percentage of theoretical intensity of the isotope
142
* pattern to compute
143
*/
144
double
m_isotopeMinimumRatio
= 0;
145
};
146
}
// namespace pappso::masschroq
pappso::MzRange
Definition
mzrange.h:46
pappso::ProjectParameters
Definition
projectparameters.h:66
pappso::masschroq::QuantificationMethod
Definition
quantificationmethod.h:52
pappso::masschroq::QuantificationMethod::mp_xicExtractionUppersPrecisionPtr
pappso::PrecisionPtr mp_xicExtractionUppersPrecisionPtr
Definition
quantificationmethod.h:118
pappso::masschroq::QuantificationMethod::getTraceDetectionInterfaceCstSPtr
const pappso::TraceDetectionInterfaceCstSPtr & getTraceDetectionInterfaceCstSPtr() const
Definition
quantificationmethod.cpp:199
pappso::masschroq::QuantificationMethod::getXicExtractMethod
Enums::XicExtractMethod getXicExtractMethod() const
Definition
quantificationmethod.cpp:155
pappso::masschroq::QuantificationMethod::m_xicFilterSuite
pappso::FilterSuiteStringSPtr m_xicFilterSuite
the xic filters
Definition
quantificationmethod.h:133
pappso::masschroq::QuantificationMethod::setXicExtractionUpperPrecisionPtr
void setXicExtractionUpperPrecisionPtr(pappso::PrecisionPtr precision)
Definition
quantificationmethod.cpp:174
pappso::masschroq::QuantificationMethod::getXicExtractionMeanPrecisionPtr
pappso::PrecisionPtr getXicExtractionMeanPrecisionPtr() const
Definition
quantificationmethod.cpp:140
pappso::masschroq::QuantificationMethod::mp_xicExtractionLowerPrecisionPtr
pappso::PrecisionPtr mp_xicExtractionLowerPrecisionPtr
Definition
quantificationmethod.h:117
pappso::masschroq::QuantificationMethod::getXicExtractionUppersPrecisionPtr
pappso::PrecisionPtr getXicExtractionUppersPrecisionPtr() const
Definition
quantificationmethod.cpp:442
pappso::masschroq::QuantificationMethod::mcsp_traceDetectionInterfaceCstSPtr
pappso::TraceDetectionInterfaceCstSPtr mcsp_traceDetectionInterfaceCstSPtr
the peak detection method for this quantification
Definition
quantificationmethod.h:137
pappso::masschroq::QuantificationMethod::setIsotopeMinimumRatio
void setIsotopeMinimumRatio(double ratio)
Definition
quantificationmethod.cpp:98
pappso::masschroq::QuantificationMethod::getXicExtractionRtRange
double getXicExtractionRtRange() const
Definition
quantificationmethod.cpp:80
pappso::masschroq::QuantificationMethod::m_xicExtractionRetentionTimeAroundTarget
double m_xicExtractionRetentionTimeAroundTarget
set the retention time range in seconds around the target rt
Definition
quantificationmethod.h:129
pappso::masschroq::QuantificationMethod::m_matchBetweenRun
bool m_matchBetweenRun
Definition
quantificationmethod.h:139
pappso::masschroq::QuantificationMethod::setJsonObject
void setJsonObject(const QJsonObject &json_object)
Definition
quantificationmethod.cpp:350
pappso::masschroq::QuantificationMethod::m_xicExtractMethod
Enums::XicExtractMethod m_xicExtractMethod
Definition
quantificationmethod.h:115
pappso::masschroq::QuantificationMethod::setXicExtractMethod
void setXicExtractMethod(Enums::XicExtractMethod method)
Definition
quantificationmethod.cpp:180
pappso::masschroq::QuantificationMethod::QuantificationMethod
QuantificationMethod(const QString &id)
Definition
quantificationmethod.cpp:39
pappso::masschroq::QuantificationMethod::getProjectParameters
pappso::ProjectParameters getProjectParameters() const
Definition
quantificationmethod.cpp:205
pappso::masschroq::QuantificationMethod::getXicExtractionLowerPrecisionPtr
pappso::PrecisionPtr getXicExtractionLowerPrecisionPtr() const
Definition
quantificationmethod.cpp:436
pappso::masschroq::QuantificationMethod::setMatchBetweenRun
void setMatchBetweenRun(bool is_match)
Definition
quantificationmethod.cpp:448
pappso::masschroq::QuantificationMethod::setXicFilter
void setXicFilter(const pappso::FilterNameInterfaceSPtr &filter)
Definition
quantificationmethod.cpp:113
pappso::masschroq::QuantificationMethod::getMatchBetweenRun
bool getMatchBetweenRun() const
Definition
quantificationmethod.cpp:92
pappso::masschroq::QuantificationMethod::addXicFilter
void addXicFilter(const pappso::FilterNameInterfaceSPtr &filter)
Definition
quantificationmethod.cpp:120
pappso::masschroq::QuantificationMethod::getFilterSuiteStringSPtr
const FilterSuiteStringSPtr & getFilterSuiteStringSPtr() const
Definition
quantificationmethod.cpp:133
pappso::masschroq::QuantificationMethod::setXicExtractionRtRange
void setXicExtractionRtRange(double rt_range)
Definition
quantificationmethod.cpp:86
pappso::masschroq::QuantificationMethod::m_id
const QString m_id
Definition
quantificationmethod.h:114
pappso::masschroq::QuantificationMethod::getXicExtractionMzRange
const pappso::MzRange getXicExtractionMzRange(double mz) const
Definition
quantificationmethod.cpp:192
pappso::masschroq::QuantificationMethod::m_isotopeMinimumRatio
double m_isotopeMinimumRatio
the minimum percentage of theoretical intensity of the isotope pattern to compute
Definition
quantificationmethod.h:144
pappso::masschroq::QuantificationMethod::getIsotopeMinimumRatio
double getIsotopeMinimumRatio() const
Definition
quantificationmethod.cpp:107
pappso::masschroq::QuantificationMethod::getJsonObject
QJsonObject getJsonObject() const
Definition
quantificationmethod.cpp:279
pappso::masschroq::QuantificationMethod::setXicExtractionLowerPrecisionPtr
void setXicExtractionLowerPrecisionPtr(pappso::PrecisionPtr precision)
Definition
quantificationmethod.cpp:168
pappso::masschroq::QuantificationMethod::getId
const QString & getId() const
Definition
quantificationmethod.cpp:74
pappso::masschroq::QuantificationMethod::setTraceDetectionInterfaceCstSPtr
void setTraceDetectionInterfaceCstSPtr(const pappso::TraceDetectionInterfaceCstSPtr &detection)
Definition
quantificationmethod.cpp:161
pappso::masschroq::QuantificationMethod::getXicFilter
const pappso::FilterNameInterfaceSPtr getXicFilter() const
Definition
quantificationmethod.cpp:186
export-import-config.h
PMSPP_LIB_DECL
#define PMSPP_LIB_DECL
Definition
export-import-config.h:14
filtersuitestring.h
mzrange.h
pappso::Enums::XicExtractMethod
XicExtractMethod
Definition
types.h:264
pappso::Enums::XicExtractMethod::max
@ max
maximum of intensities
Definition
types.h:266
pappso::masschroq
Definition
alignmentmethod.h:38
pappso::masschroq::QuantificationMethodSp
std::shared_ptr< QuantificationMethod > QuantificationMethodSp
Definition
quantificationmethod.h:46
pappso::FilterSuiteStringSPtr
std::shared_ptr< FilterSuiteString > FilterSuiteStringSPtr
Definition
filtersuitestring.h:83
pappso::TraceDetectionInterfaceCstSPtr
std::shared_ptr< const TraceDetectionInterface > TraceDetectionInterfaceCstSPtr
Definition
tracedetectioninterface.h:35
pappso::ProjectParamCategory::filter
@ filter
concerning filters (psm, peptide, protein validation)
Definition
projectparameters.h:48
pappso::FilterNameInterfaceSPtr
std::shared_ptr< FilterNameInterface > FilterNameInterfaceSPtr
Definition
filternameinterface.h:59
pappso::PrecisionPtr
const PrecisionBase * PrecisionPtr
Definition
precision.h:122
projectparameters.h
tracedetectioninterface.h
types.h
pappsomspp
core
masschroq
quantificationmethod.h
Generated on
for libpappsomspp by
1.17.0