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 private:
85 double m_cterShift = 0;
86 double m_nterShift = 0;
87 double m_precursorMass = 0;
88};
89
90} // namespace specpeptidoms
91} // 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)
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition aa.cpp:39