libpappsomspp
Library for mass spectrometry
Toggle main menu visibility
Loading...
Searching...
No Matches
peptidefragmention.h
Go to the documentation of this file.
1
/**
2
* \file pappsomspp/peptide/peptidefragmention.h
3
* \date 10/3/2015
4
* \author Olivier Langella
5
* \brief peptide ion model
6
*/
7
8
/*******************************************************************************
9
* Copyright (c) 2015 Olivier Langella <Olivier.Langella@moulon.inra.fr>.
10
*
11
* This file is part of the PAPPSOms++ library.
12
*
13
* PAPPSOms++ 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++ 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++. If not, see <http://www.gnu.org/licenses/>.
25
*
26
* Contributors:
27
* Olivier Langella <Olivier.Langella@moulon.inra.fr> - initial API and
28
*implementation
29
******************************************************************************/
30
31
#pragma once
32
33
34
#include <QColor>
35
36
#include "
pappsomspp/export-import-config.h
"
37
#include "
peptidefragment.h
"
38
39
40
namespace
pappso
41
{
42
43
44
class
PeptideFragmentIon
;
45
46
typedef
std::shared_ptr<const PeptideFragmentIon>
PeptideFragmentIonSp
;
47
48
49
class
PMSPP_LIB_DECL
PeptideFragmentIon
:
public
PeptideInterface
50
{
51
52
public
:
53
PeptideFragmentIon
(
const
PeptideFragmentSp
&sp_fragment,
54
Enums::PeptideIon
ion_type,
55
unsigned
int
number_of_neutral_phospho_loss);
56
PeptideFragmentIon
(
const
PeptideFragmentSp
&sp_fragment,
Enums::PeptideIon
ion_type);
57
PeptideFragmentIon
(
const
PeptideFragmentIon
&other);
58
PeptideFragmentIon
(
PeptideFragmentIon
&&toCopy);
// move constructor
59
virtual
~PeptideFragmentIon
();
60
61
PeptideFragmentIonSp
makePeptideFragmentIonSp
()
const
;
62
63
virtual
unsigned
int
size
()
const override
;
64
virtual
const
QString
getSequence
()
const override
;
65
virtual
const
PeptideFragmentSp
&
getPeptideFragmentSp
()
const
;
66
virtual
int
getNumberOfAtom
(
Enums::AtomIsotopeSurvey
atom)
const override
;
67
68
virtual
int
getNumberOfIsotope
(
Enums::Isotope
isotope)
const override
;
69
70
virtual
const
QString
getName
()
const override
;
71
72
pappso_double
getMass
()
const override
;
73
74
const
QString
getPeptideIonName
()
const
;
75
76
/** @brief get a complete ion name string
77
* @param charge
78
* */
79
const
QString
getCompletePeptideIonName
(
unsigned
int
charge)
const
;
80
81
static
PeptideDirection
getPeptideIonDirection
(
Enums::PeptideIon
ion_type);
82
static
const
QString
getPeptideIonName
(
Enums::PeptideIon
ion_type);
83
84
static
const
QColor
getPeptideIonColor
(
Enums::PeptideIon
ion_type);
85
86
Enums::PeptideIon
getPeptideIonType
()
const
;
87
PeptideDirection
getPeptideIonDirection
()
const
;
88
unsigned
int
getNumberOfNeutralPhosphoLoss
()
const
;
89
90
91
virtual
bool
isPalindrome
()
const override
;
92
93
94
private
:
95
const
PeptideFragmentSp
msp_fragment
;
96
const
Enums::PeptideIon
m_ionType
;
97
98
pappso_double
m_mass
= 0;
99
100
// number of neutral phospho loss. this only occurs on MOD:00696
101
// it loses MOD:00696 + H2O
102
unsigned
int
m_neutralPhosphoLossNumber
= 0;
103
};
104
105
106
}
// namespace pappso
pappso::PeptideFragmentIon
Definition
peptidefragmention.h:50
pappso::PeptideFragmentIon::makePeptideFragmentIonSp
PeptideFragmentIonSp makePeptideFragmentIonSp() const
Definition
peptidefragmention.cpp:531
pappso::PeptideFragmentIon::m_neutralPhosphoLossNumber
unsigned int m_neutralPhosphoLossNumber
Definition
peptidefragmention.h:102
pappso::PeptideFragmentIon::m_ionType
const Enums::PeptideIon m_ionType
Definition
peptidefragmention.h:96
pappso::PeptideFragmentIon::getPeptideIonType
Enums::PeptideIon getPeptideIonType() const
Definition
peptidefragmention.cpp:568
pappso::PeptideFragmentIon::getPeptideIonName
const QString getPeptideIonName() const
Definition
peptidefragmention.cpp:122
pappso::PeptideFragmentIon::m_mass
pappso_double m_mass
Definition
peptidefragmention.h:98
pappso::PeptideFragmentIon::getNumberOfAtom
virtual int getNumberOfAtom(Enums::AtomIsotopeSurvey atom) const override
get the number of atom C, O, N, H in the molecule
Definition
peptidefragmention.cpp:241
pappso::PeptideFragmentIon::getPeptideFragmentSp
virtual const PeptideFragmentSp & getPeptideFragmentSp() const
Definition
peptidefragmention.cpp:550
pappso::PeptideFragmentIon::PeptideFragmentIon
PeptideFragmentIon(const PeptideFragmentSp &sp_fragment, Enums::PeptideIon ion_type, unsigned int number_of_neutral_phospho_loss)
Definition
peptidefragmention.cpp:45
pappso::PeptideFragmentIon::msp_fragment
const PeptideFragmentSp msp_fragment
Definition
peptidefragmention.h:95
pappso::PeptideFragmentIon::getCompletePeptideIonName
const QString getCompletePeptideIonName(unsigned int charge) const
get a complete ion name string
Definition
peptidefragmention.cpp:103
pappso::PeptideFragmentIon::getNumberOfNeutralPhosphoLoss
unsigned int getNumberOfNeutralPhosphoLoss() const
Definition
peptidefragmention.cpp:578
pappso::PeptideFragmentIon::getPeptideIonDirection
static PeptideDirection getPeptideIonDirection(Enums::PeptideIon ion_type)
Definition
peptidefragmention.cpp:96
pappso::PeptideFragmentIon::getSequence
virtual const QString getSequence() const override
amino acid sequence without modification
Definition
peptidefragmention.cpp:544
pappso::PeptideFragmentIon::size
virtual unsigned int size() const override
Definition
peptidefragmention.cpp:538
pappso::PeptideFragmentIon::getNumberOfIsotope
virtual int getNumberOfIsotope(Enums::Isotope isotope) const override
get the number of isotopes C13, H2, O17, O18, N15, S33, S34, S36 in the molecule
Definition
peptidefragmention.cpp:524
pappso::PeptideFragmentIon::getMass
pappso_double getMass() const override
Definition
peptidefragmention.cpp:562
pappso::PeptideFragmentIon::getPeptideIonColor
static const QColor getPeptideIonColor(Enums::PeptideIon ion_type)
Definition
peptidefragmention.cpp:186
pappso::PeptideFragmentIon::isPalindrome
virtual bool isPalindrome() const override
tells if the peptide sequence is a palindrome
Definition
peptidefragmention.cpp:584
pappso::PeptideFragmentIon::getName
virtual const QString getName() const override
Definition
peptidefragmention.cpp:556
pappso::PeptideInterface
Definition
peptideinterface.h:44
export-import-config.h
PMSPP_LIB_DECL
#define PMSPP_LIB_DECL
Definition
export-import-config.h:14
pappso::Enums::AtomIsotopeSurvey
AtomIsotopeSurvey
Definition
types.h:103
pappso::Enums::Isotope
Isotope
Definition
types.h:119
pappso::Enums::PeptideIon
PeptideIon
Enums::PeptideIon enum defines all types of ions (Nter or Cter).
Definition
types.h:272
pappso
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition
aa.cpp:39
pappso::PeptideFragmentIonSp
std::shared_ptr< const PeptideFragmentIon > PeptideFragmentIonSp
Definition
peptidefragmention.h:46
pappso::PeptideDirection
PeptideDirection
Definition
peptide.h:47
pappso::pappso_double
double pappso_double
A type definition for doubles.
Definition
types.h:60
pappso::PeptideFragmentSp
std::shared_ptr< const PeptideFragment > PeptideFragmentSp
Definition
peptidefragment.h:45
peptidefragment.h
pappsomspp
core
peptide
peptidefragmention.h
Generated on
for libpappsomspp by
1.17.0