libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
peptidemodel.h
Go to the documentation of this file.
1/**
2 * \file pappsomspp/processing/specglob/peptidemodel.h
3 * \date 05/10/2025
4 * \author Olivier Langella
5 * \brief SpecPeptidOMS peptide model
6 * \todo https://www.psidev.info/proforma
7 *
8 */
9
10
11/*
12 * SpecGlobTool, Spectra to peptide alignment tool
13 * Copyright (C) 2025 Olivier Langella
14 * <olivier.langella@universite-paris-saclay.fr>
15 *
16 * This program is free software: you can redistribute ipetide to spectrum
17 * alignmentt and/or modify it under the terms of the GNU General Public License
18 * as published by the Free Software Foundation, either version 3 of the
19 * License, or (at your option) any later version.
20 *
21 * This program is distributed in the hope that it will be useful,
22 * but WITHOUT ANY WARRANTY; without even the implied warranty of
23 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24 * GNU General Public License for more details.
25 *
26 * You should have received a copy of the GNU General Public License
27 * along with this program. If not, see <http://www.gnu.org/licenses/>.
28 *
29 */
30
31#pragma once
32
35
36namespace pappso
37{
38namespace specpeptidoms
39{
40
41
43{
45 double m_massDifference = 0;
46 bool m_skipped = false;
47
48 QString toProForma() const;
49 QString toInterpretation() const;
50};
51/**
52 * @brief modelize peptide sequence to facilitate rendering in bracket or proforma
53 */
54class PeptideModel : public std::vector<AminoAcidModel>
55{
56 public:
57 /**
58 * Default constructor
59 */
61
62 /**
63 * Destructor
64 */
65 virtual ~PeptideModel();
66
67 void reset();
68
69 void setCterShift(double mass_shift);
70 void setNterShift(double mass_shift);
71
72 QString toProForma() const;
73
74 QString toInterpretation() const;
75
76 void setPrecursorMass(double mass);
77
78 double getPrecursorMass() const;
79
80 static QString toProFormaMass(double mass);
81
82 double getMass() const;
83
84 /**
85 * @brief Return the difference between the precursor's mass and the mass modelized by the
86 * PeptideModel.
87 */
88 double getNonAlignedMass() const;
89
90 private:
91 double m_cterShift = 0;
92 double m_nterShift = 0;
93 double m_precursorMass = 0;
94};
95
96} // namespace specpeptidoms
97} // namespace pappso
modelize peptide sequence to facilitate rendering in bracket or proforma
static QString toProFormaMass(double mass)
void setNterShift(double mass_shift)
void setCterShift(double mass_shift)
double getNonAlignedMass() const
Return the difference between the precursor's mass and the mass modelized by the PeptideModel.
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition aa.cpp:39