libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
psmspecpeptidoms.h
Go to the documentation of this file.
1/**
2 * \file pappsomspp/processing/cbor/psm/evalscan/psmspecglob.h
3 * \date 19/07/2025
4 * \author Olivier Langella
5 * \brief compute specglob alignment on scan's PSM
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
31#include <QJsonObject>
32
33namespace pappso
34{
35namespace cbor
36{
37namespace psm
38{
39
40
41/**
42 * @todo write docs
43 */
45{
46 public:
47 /**
48 * Default constructor
49 */
50 PsmSpecPeptidOms(std::size_t buffer_scan_size,
51 CborStreamWriter *cbor_output_p,
52 const QJsonObject &parameters);
53
54 /**
55 * Destructor
56 */
57 virtual ~PsmSpecPeptidOms();
58
59
60 void filterMassSpectrum(pappso::MassSpectrum &mass_spectrum) const;
61
62 const pappso::AaCode &getAaCode() const;
63
64 protected:
66
67 void parameterMapReady(pappso::UiMonitorInterface &monitor) override;
68
69 protected:
74 std::size_t m_nMostIntense;
75 bool m_deisotope = true;
76};
77
78
80{
81 public:
82 /**
83 * Default constructor
84 */
85 PsmSpecPeptidOmsScan(const PsmSpecPeptidOms &psm_specpeptidoms,
86 pappso::PrecisionPtr fragment_tolerance);
87
88 /**
89 * Destructor
90 */
91 virtual ~PsmSpecPeptidOmsScan();
92
93 protected:
94 void process() override;
95
96 private:
99 bool m_checkMutations = false;
100};
101} // namespace psm
102} // namespace cbor
103} // namespace pappso
collection of integer code for each amino acid 0 => null 1 to 20 => amino acid sorted by there mass (...
Definition aacode.h:44
Class to represent a mass spectrum.
CborScanMapBase(const PsmFileScanProcess &psm_file_scan_process)
PsmFileScanProcessAndCopy(std::size_t buffer_scan_size, CborStreamWriter *cbor_output_p, const QString &operation)
const PsmSpecPeptidOms * mp_psmSpecPeptidOms
PsmSpecPeptidOmsScan(const PsmSpecPeptidOms &psm_specpeptidoms, pappso::PrecisionPtr fragment_tolerance)
void parameterMapReady(pappso::UiMonitorInterface &monitor) override
PsmSpecPeptidOms(std::size_t buffer_scan_size, CborStreamWriter *cbor_output_p, const QJsonObject &parameters)
const pappso::AaCode & getAaCode() const
void filterMassSpectrum(pappso::MassSpectrum &mass_spectrum) const
CborScanMapBase * newCborScanMap() override
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition aa.cpp:39
const PrecisionBase * PrecisionPtr
Definition precision.h:122