libpappsomspp
Library for mass spectrometry
Toggle main menu visibility
Loading...
Searching...
No Matches
psmionseries.h
Go to the documentation of this file.
1
/**
2
* \file pappsomspp/processing/cbor/psm/evalscan/psmionseries.h
3
* \date 04/10/2025
4
* \author Olivier Langella
5
* \brief compute ion series for a PSM and associated spectrum
6
*/
7
8
/*******************************************************************************
9
* Copyright (c) 2025 Olivier Langella <Olivier.Langella@universite-paris-saclay.fr>.
10
*
11
* This file is part of PAPPSOms-tools.
12
*
13
* PAPPSOms-tools is free software: you can redistribute it and/or modify
14
* it under the terms of the GNU General Public License as published by
15
* the Free Software Foundation, either version 3 of the License, or
16
* (at your option) any later version.
17
*
18
* PAPPSOms-tools is distributed in the hope that it will be useful,
19
* but WITHOUT ANY WARRANTY; without even the implied warranty of
20
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21
* GNU General Public License for more details.
22
*
23
* You should have received a copy of the GNU General Public License
24
* along with PAPPSOms-tools. If not, see <http://www.gnu.org/licenses/>.
25
*
26
******************************************************************************/
27
#pragma once
28
29
#include "
pappsomspp/core/processing/cbor/psm/psmfilescanprocessandcopy.h
"
30
#include <QJsonObject>
31
#include "
pappsomspp/export-import-config.h
"
32
33
34
namespace
pappso
35
{
36
namespace
cbor
37
{
38
namespace
psm
39
{
40
41
42
/**
43
* @brief computes spectrum isotope match for each PSM and stores ion series in "props"
44
*/
45
class
PMSPP_LIB_DECL
PsmIonSeries
:
public
PsmFileScanProcessAndCopy
46
{
47
public
:
48
/**
49
* Default constructor
50
*/
51
PsmIonSeries
(std::size_t buffer_scan_size,
52
CborStreamWriter
*cbor_output_p,
53
const
QJsonObject ¶meters);
54
55
/**
56
* Destructor
57
*/
58
virtual
~PsmIonSeries
();
59
60
61
void
filterMassSpectrum
(
pappso::MassSpectrum
&mass_spectrum)
const
;
62
63
protected
:
64
CborScanMapBase
*
newCborScanMap
()
override
;
65
void
parameterMapReady
(
pappso::UiMonitorInterface
&monitor)
override
;
66
67
protected
:
68
QJsonObject
m_psmIonSeriesParameters
;
69
pappso::PrecisionPtr
m_fragmentTolerance
;
70
};
71
72
73
class
PsmIonSeriesScan
:
public
CborScanMapBase
74
{
75
public
:
76
/**
77
* Default constructor
78
*/
79
PsmIonSeriesScan
(
const
PsmIonSeries
&psm_specpeptidoms,
pappso::PrecisionPtr
fragment_tolerance);
80
81
/**
82
* Destructor
83
*/
84
virtual
~PsmIonSeriesScan
();
85
86
protected
:
87
void
process
()
override
;
88
89
private
:
90
const
PsmIonSeries
*
mp_psmSpecPeptidOms
;
91
pappso::PrecisionPtr
m_fragmentTolerance
;
92
};
93
}
// namespace psm
94
}
// namespace cbor
95
}
// namespace pappso
pappso::MassSpectrum
Class to represent a mass spectrum.
Definition
massspectrum.h:70
pappso::UiMonitorInterface
Definition
uimonitorinterface.h:50
pappso::cbor::CborStreamWriter
overrides QCborStreamWriter base class to provide convenient functions
Definition
cborstreamwriter.h:46
pappso::cbor::psm::CborScanMapBase
Definition
cborscanmapbase.h:48
pappso::cbor::psm::CborScanMapBase::CborScanMapBase
CborScanMapBase(const PsmFileScanProcess &psm_file_scan_process)
Definition
cborscanmapbase.cpp:40
pappso::cbor::psm::PsmFileScanProcessAndCopy::PsmFileScanProcessAndCopy
PsmFileScanProcessAndCopy(std::size_t buffer_scan_size, CborStreamWriter *cbor_output_p, const QString &operation)
Definition
psmfilescanprocessandcopy.cpp:41
pappso::cbor::psm::PsmIonSeriesScan::mp_psmSpecPeptidOms
const PsmIonSeries * mp_psmSpecPeptidOms
Definition
psmionseries.h:90
pappso::cbor::psm::PsmIonSeriesScan::~PsmIonSeriesScan
virtual ~PsmIonSeriesScan()
Definition
psmionseries.cpp:92
pappso::cbor::psm::PsmIonSeriesScan::process
void process() override
Definition
psmionseries.cpp:97
pappso::cbor::psm::PsmIonSeriesScan::m_fragmentTolerance
pappso::PrecisionPtr m_fragmentTolerance
Definition
psmionseries.h:91
pappso::cbor::psm::PsmIonSeriesScan::PsmIonSeriesScan
PsmIonSeriesScan(const PsmIonSeries &psm_specpeptidoms, pappso::PrecisionPtr fragment_tolerance)
Definition
psmionseries.cpp:84
pappso::cbor::psm::PsmIonSeries
computes spectrum isotope match for each PSM and stores ion series in "props"
Definition
psmionseries.h:46
pappso::cbor::psm::PsmIonSeries::filterMassSpectrum
void filterMassSpectrum(pappso::MassSpectrum &mass_spectrum) const
pappso::cbor::psm::PsmIonSeries::parameterMapReady
void parameterMapReady(pappso::UiMonitorInterface &monitor) override
Definition
psmionseries.cpp:59
pappso::cbor::psm::PsmIonSeries::m_psmIonSeriesParameters
QJsonObject m_psmIonSeriesParameters
Definition
psmionseries.h:68
pappso::cbor::psm::PsmIonSeries::PsmIonSeries
PsmIonSeries(std::size_t buffer_scan_size, CborStreamWriter *cbor_output_p, const QJsonObject ¶meters)
Definition
psmionseries.cpp:35
pappso::cbor::psm::PsmIonSeries::m_fragmentTolerance
pappso::PrecisionPtr m_fragmentTolerance
Definition
psmionseries.h:69
pappso::cbor::psm::PsmIonSeries::newCborScanMap
CborScanMapBase * newCborScanMap() override
Definition
psmionseries.cpp:78
export-import-config.h
PMSPP_LIB_DECL
#define PMSPP_LIB_DECL
Definition
export-import-config.h:14
pappso::cbor::psm
Definition
cborscanmapbase.h:40
pappso::cbor
Definition
cborstreamreader.cpp:35
pappso
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition
aa.cpp:39
pappso::PrecisionPtr
const PrecisionBase * PrecisionPtr
Definition
precision.h:122
psmfilescanprocessandcopy.h
pappsomspp
core
processing
cbor
psm
evalscan
psmionseries.h
Generated on
for libpappsomspp by
1.17.0