libpappsomspp
Library for mass spectrometry
Toggle main menu visibility
Loading...
Searching...
No Matches
peptidevariablemodificationbuilder.h
Go to the documentation of this file.
1
/*******************************************************************************
2
* Copyright (c) 2015 Olivier Langella <Olivier.Langella@moulon.inra.fr>.
3
*
4
* This file is part of the PAPPSOms++ library.
5
*
6
* PAPPSOms++ is free software: you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation, either version 3 of the License, or
9
* (at your option) any later version.
10
*
11
* PAPPSOms++ is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
15
*
16
* You should have received a copy of the GNU General Public License
17
* along with PAPPSOms++. If not, see <http://www.gnu.org/licenses/>.
18
*
19
* Contributors:
20
* Olivier Langella <Olivier.Langella@moulon.inra.fr> - initial API and
21
*implementation
22
******************************************************************************/
23
24
#pragma once
25
26
27
#include "
peptidemodificatorbase.h
"
28
29
namespace
pappso
30
{
31
32
33
/** \brief Modify a peptide shared pointer with a variable modification on one
34
* AA
35
* */
36
class
PMSPP_LIB_DECL
PeptideVariableModificationBuilder
37
:
public
PeptideModificatorBase
38
{
39
public
:
40
PeptideVariableModificationBuilder
(
AaModificationP
mod);
41
virtual
~PeptideVariableModificationBuilder
();
42
void
setPeptideSp
(std::int8_t sequence_database_id,
43
const
ProteinSp
&protein_sp,
44
bool
is_decoy,
45
const
PeptideSp
&peptide_sp_original,
46
unsigned
int
start,
47
bool
is_nter,
48
unsigned
int
missed_cleavage_number,
49
bool
semi_enzyme)
override
;
50
51
void
addAa
(
char
aa);
52
53
void
54
setMaxNumberMod
(
unsigned
int
max_num)
55
{
56
m_maxNumberMod
= max_num;
57
};
58
void
59
setMinNumberMod
(
unsigned
int
min_num)
60
{
61
m_minNumberMod
= min_num;
62
};
63
void
64
setModificationCounter
(
unsigned
int
counter)
65
{
66
m_modificationCount
= counter;
67
};
68
69
void
70
setSink
(
PeptideModificatorInterface
*sink)
override
71
{
72
m_sink
= sink;
73
};
74
75
76
/** \brief this modification concerns the Nter peptide
77
* */
78
void
79
setProtNter
(
bool
arg1)
80
{
81
m_isProtNterMod
= arg1;
82
};
83
/** \brief this modification concerns the Cter peptide
84
* */
85
void
86
setProtCter
(
bool
arg1)
87
{
88
m_isProtCterMod
= arg1;
89
};
90
/** \brief this modification concerns all peptides between Nter and Cter
91
* */
92
void
93
setProtElse
(
bool
arg1)
94
{
95
m_isProtElseMod
= arg1;
96
};
97
98
protected
:
99
static
bool
next_combination(
const
std::vector<unsigned int>::iterator first,
100
std::vector<unsigned int>::iterator k,
101
const
std::vector<unsigned int>::iterator last);
102
103
PeptideModificatorInterface
*
m_sink
=
nullptr
;
104
AaModificationP
mp_mod
;
105
// minimum number of positions to modify
106
unsigned
int
m_minNumberMod
= 0;
107
// maximum number of positions to modify
108
unsigned
int
m_maxNumberMod
= 30000;
109
// modification counter per site
110
unsigned
int
m_modificationCount
= 0;
111
112
// protein Nter modification
113
bool
m_isProtNterMod
=
true
;
114
// protein Cter modification
115
bool
m_isProtCterMod
=
true
;
116
117
bool
m_isProtElseMod
=
true
;
118
119
120
private
:
121
QString
m_aaModificationList
;
122
};
123
124
125
}
// namespace pappso
pappso::PeptideModificatorBase::PeptideModificatorBase
PeptideModificatorBase()
Definition
peptidemodificatorbase.cpp:35
pappso::PeptideModificatorInterface
Definition
enzymeproductinterface.h:65
pappso::PeptideVariableModificationBuilder::setSink
void setSink(PeptideModificatorInterface *sink) override
Definition
peptidevariablemodificationbuilder.h:70
pappso::PeptideVariableModificationBuilder::mp_mod
AaModificationP mp_mod
Definition
peptidevariablemodificationbuilder.h:104
pappso::PeptideVariableModificationBuilder::setMinNumberMod
void setMinNumberMod(unsigned int min_num)
Definition
peptidevariablemodificationbuilder.h:59
pappso::PeptideVariableModificationBuilder::setMaxNumberMod
void setMaxNumberMod(unsigned int max_num)
Definition
peptidevariablemodificationbuilder.h:54
pappso::PeptideVariableModificationBuilder::setModificationCounter
void setModificationCounter(unsigned int counter)
Definition
peptidevariablemodificationbuilder.h:64
pappso::PeptideVariableModificationBuilder::setProtNter
void setProtNter(bool arg1)
this modification concerns the Nter peptide
Definition
peptidevariablemodificationbuilder.h:79
pappso::PeptideVariableModificationBuilder::m_maxNumberMod
unsigned int m_maxNumberMod
Definition
peptidevariablemodificationbuilder.h:108
pappso::PeptideVariableModificationBuilder::m_isProtNterMod
bool m_isProtNterMod
Definition
peptidevariablemodificationbuilder.h:113
pappso::PeptideVariableModificationBuilder::setProtElse
void setProtElse(bool arg1)
this modification concerns all peptides between Nter and Cter
Definition
peptidevariablemodificationbuilder.h:93
pappso::PeptideVariableModificationBuilder::m_sink
PeptideModificatorInterface * m_sink
Definition
peptidevariablemodificationbuilder.h:103
pappso::PeptideVariableModificationBuilder::m_modificationCount
unsigned int m_modificationCount
Definition
peptidevariablemodificationbuilder.h:110
pappso::PeptideVariableModificationBuilder::addAa
void addAa(char aa)
Definition
peptidevariablemodificationbuilder.cpp:82
pappso::PeptideVariableModificationBuilder::m_isProtElseMod
bool m_isProtElseMod
Definition
peptidevariablemodificationbuilder.h:117
pappso::PeptideVariableModificationBuilder::setPeptideSp
void setPeptideSp(std::int8_t sequence_database_id, const ProteinSp &protein_sp, bool is_decoy, const PeptideSp &peptide_sp_original, unsigned int start, bool is_nter, unsigned int missed_cleavage_number, bool semi_enzyme) override
function to give the products of modifications for a digested peptide
Definition
peptidevariablemodificationbuilder.cpp:91
pappso::PeptideVariableModificationBuilder::setProtCter
void setProtCter(bool arg1)
this modification concerns the Cter peptide
Definition
peptidevariablemodificationbuilder.h:86
pappso::PeptideVariableModificationBuilder::m_aaModificationList
QString m_aaModificationList
Definition
peptidevariablemodificationbuilder.h:121
pappso::PeptideVariableModificationBuilder::m_minNumberMod
unsigned int m_minNumberMod
Definition
peptidevariablemodificationbuilder.h:106
pappso::PeptideVariableModificationBuilder::PeptideVariableModificationBuilder
PeptideVariableModificationBuilder(AaModificationP mod)
Definition
peptidevariablemodificationbuilder.cpp:72
pappso::PeptideVariableModificationBuilder::m_isProtCterMod
bool m_isProtCterMod
Definition
peptidevariablemodificationbuilder.h:115
PMSPP_LIB_DECL
#define PMSPP_LIB_DECL
Definition
export-import-config.h:14
pappso
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition
aa.cpp:39
pappso::PeptideSp
std::shared_ptr< const Peptide > PeptideSp
Definition
aamodification.h:48
pappso::AaModificationP
const AaModification * AaModificationP
Definition
aamodification.h:52
pappso::ProteinSp
std::shared_ptr< const Protein > ProteinSp
shared pointer on a Protein object
Definition
protein.h:47
peptidemodificatorbase.h
base class for all peptide modification builders
pappsomspp
core
protein
peptidevariablemodificationbuilder.h
Generated on
for libpappsomspp by
1.17.0