libpappsomspp
Library for mass spectrometry
peptidefragment.h
Go to the documentation of this file.
1
/**
2
* \file pappsomspp/peptide/peptidefragment.h
3
* \date 10/3/2015
4
* \author Olivier Langella
5
* \brief peptide fragment 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
32
#pragma once
33
34
35
#include "
peptide.h
"
36
#include "../pappsoexception.h"
37
#include "../exportinmportconfig.h"
38
39
namespace
pappso
40
{
41
42
43
class
PeptideFragment;
44
45
typedef
std::shared_ptr<const PeptideFragment>
PeptideFragmentSp
;
46
47
class
PMSPP_LIB_DECL
PeptideFragment
:
public
PeptideInterface
48
{
49
50
public
:
51
PeptideFragment
(
const
PeptideSp
&sp_peptide,
52
PeptideDirection
direction,
53
unsigned
int
size);
54
PeptideFragment
(
const
PeptideFragment
&other);
55
PeptideFragment
(
PeptideFragment
&&toCopy);
// move constructor
56
virtual
~
PeptideFragment
();
57
58
virtual
const
PeptideSp
&getPeptideSp()
const
;
59
60
virtual
unsigned
int
size()
const override
;
61
virtual
const
QString getSequence()
const override
;
62
63
virtual
pappso_double
getMass()
const override
;
64
static
const
QString getPeptideIonDirectionName(
PeptideDirection
direction);
65
PeptideDirection
getPeptideIonDirection
()
const
;
66
67
virtual
int
getNumberOfAtom(
AtomIsotopeSurvey
atom)
const override
;
68
virtual
int
getNumberOfIsotope(
Isotope
isotope)
const override
;
69
70
virtual
bool
isPalindrome()
const override
;
71
72
73
private
:
74
const
PeptideSp
msp_peptide
;
75
const
PeptideDirection
m_direction
;
76
const
unsigned
int
m_size = 0;
77
// the aa modification to add on Nter or Cter aa (depending on peptide
78
// direction)
79
AaModificationP
m_nterCterCleavage
;
80
81
pappso_double
m_mass = 0;
82
};
83
84
85
}
// namespace pappso
pappso::PeptideFragment::msp_peptide
const PeptideSp msp_peptide
Definition:
peptidefragment.h:74
pappso::pappso_double
double pappso_double
A type definition for doubles.
Definition:
types.h:48
PMSPP_LIB_DECL
#define PMSPP_LIB_DECL
Definition:
exportinmportconfig.h:14
pappso
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition:
aa.cpp:39
pappso::Isotope
Isotope
Definition:
types.h:91
peptide.h
peptide model
pappso::PeptideFragmentSp
std::shared_ptr< const PeptideFragment > PeptideFragmentSp
Definition:
peptidefragment.h:43
pappso::PeptideInterface
Definition:
peptideinterface.h:43
pappso::PeptideFragment::m_direction
const PeptideDirection m_direction
Definition:
peptidefragment.h:75
pappso::getPeptideIonDirection
PeptideDirection getPeptideIonDirection(PeptideIon ion_type)
get the direction of a peptide ion
Definition:
peptide.cpp:54
pappso::PeptideDirection
PeptideDirection
Definition:
peptide.h:46
pappso::PeptideFragment::m_nterCterCleavage
AaModificationP m_nterCterCleavage
Definition:
peptidefragment.h:79
pappso::PeptideSp
std::shared_ptr< const Peptide > PeptideSp
Definition:
aamodification.h:47
pappso::PeptideFragment
Definition:
peptidefragment.h:48
pappso::AaModification
Definition:
aamodification.h:57
pappso::AtomIsotopeSurvey
AtomIsotopeSurvey
Definition:
types.h:76
pappsomspp
peptide
peptidefragment.h
Generated on Fri Jan 8 2021 14:38:15 for libpappsomspp by
1.8.20