libpappsomspp
Library for mass spectrometry
deepprotenum.h
Go to the documentation of this file.
1 /**
2  * \file pappsomspp/psm/deepprot/deepprotenum.h
3  * \date 22/1/2021
4  * \author Olivier Langella <olivier.langella@universite-paris-saclay.fr>
5  * \brief base type definition to use in DeepProt
6  *
7  * DeepProt is the C++ implementation of the SpecOMS algorithm
8  *
9  */
10 
11 /*******************************************************************************
12  * Copyright (c) 2021 Olivier Langella
13  *<olivier.langella@universite-paris-saclay.fr>.
14  *
15  * This file is part of the PAPPSOms++ library.
16  *
17  * PAPPSOms++ is free software: you can redistribute it and/or modify
18  * it under the terms of the GNU General Public License as published by
19  * the Free Software Foundation, either version 3 of the License, or
20  * (at your option) any later version.
21  *
22  * PAPPSOms++ is distributed in the hope that it will be useful,
23  * but WITHOUT ANY WARRANTY; without even the implied warranty of
24  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25  * GNU General Public License for more details.
26  *
27  * You should have received a copy of the GNU General Public License
28  * along with PAPPSOms++. If not, see <http://www.gnu.org/licenses/>.
29  *
30  ******************************************************************************/
31 
32 #pragma once
33 #include "../../exportinmportconfig.h"
34 #include <QString>
35 
36 namespace pappso
37 {
38 
39 /** @brief definition of different class of PSMs used by DeepProt
40  */
41 enum class DeepProtMatchType : std::uint8_t
42 {
43  uncategorized = 0, ///< precursor mass was not compared
44  ZeroMassDelta = 1, ///< peptide candidate is in precursor mz range
46  2, ///< peptide candidate with missed cleavage is in precursor mz range
48  3, ///< semi tryptic peptide candidate is in precursor mz range
49  DeltaPosition = 4, ///< spectrum shifter on peptide candidate has detected a
50  ///< position for the mass delta
51  NoDeltaPosition = 5, ///< spectrum shifter on peptide candidate has not
52  ///< detected a position for the mass delta
53  last = 6
54 };
55 
56 
57 /** @brief definition of different status for potential peptide candidates on
58  * the same spectrum
59  */
60 enum class DeepProtPeptideCandidateStatus : std::uint8_t
61 {
62  unmodified = 0, ///< precursor mass was not compared
63  ZeroMassDelta = 1,
64  CterRemoval = 2,
65  NterRemoval = 3,
66  MissedCleavage = 4,
67  DeltaPosition = 5,
68  NoDeltaPosition = 6,
69  last = 7
70 };
71 
73 {
74  public:
75  static const QString toString(DeepProtMatchType match_type);
76  static const QString toString(DeepProtPeptideCandidateStatus status);
77 
79  DeepProtPeptideCandidateStatusFromString(const QString &name);
80  static DeepProtMatchType DeepProtMatchTypeFromString(const QString &name);
81 };
82 
83 } // namespace pappso
84 
85 
#define PMSPP_LIB_DECL
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition: aa.cpp:39
DeepProtMatchType
definition of different class of PSMs used by DeepProt
Definition: deepprotenum.h:42
@ ZeroMassDeltaMissedCleavage
peptide candidate with missed cleavage is in precursor mz range
@ uncategorized
precursor mass was not compared
@ ZeroMassDelta
peptide candidate is in precursor mz range
@ ZeroMassDeltaSemiTryptic
semi tryptic peptide candidate is in precursor mz range
DeepProtPeptideCandidateStatus
definition of different status for potential peptide candidates on the same spectrum
Definition: deepprotenum.h:61
@ unmodified
precursor mass was not compared