libpappsomspp
Library for mass spectrometry
Toggle main menu visibility
Loading...
Searching...
No Matches
peptidemodificatorpipeline.h
Go to the documentation of this file.
1
/*******************************************************************************
2
* Copyright (c) 2016 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 "
enzymeproductinterface.h
"
28
#include "
peptidemodificatortee.h
"
29
30
namespace
pappso
31
{
32
33
class
PMSPP_LIB_DECL
PeptideModificatorPipeline
34
:
public
PeptideModificatorInterface
,
35
public
PeptideSpSinkInterface
,
36
public
EnzymeProductInterface
37
{
38
public
:
39
PeptideModificatorPipeline
();
40
PeptideModificatorPipeline
(
const
PeptideModificatorPipeline
&other);
41
virtual
~PeptideModificatorPipeline
();
42
43
void
addFixedModificationString
(
const
QString &mod_str);
44
// protein Nter modification
45
void
addFixedNterModificationString
(
const
QString &mod_str);
46
// protein Cter modification
47
void
addFixedCterModificationString
(
const
QString &mod_str);
48
49
void
addPotentialModificationString
(
const
QString &mod_str);
50
// protein Nter modification
51
void
addPotentialNterModificationString
(
const
QString &mod_str);
52
// protein Cter modification
53
void
addPotentialCterModificationString
(
const
QString &mod_str);
54
55
void
setSink
(
PeptideModificatorInterface
*sink)
override
;
56
57
void
setPeptideSp
(std::int8_t sequence_database_id,
58
const
ProteinSp
&protein_sp,
59
bool
is_decoy,
60
const
PeptideSp
&peptide_sp_original,
61
unsigned
int
start,
62
bool
is_nter,
63
unsigned
int
missed_cleavage_number,
64
bool
semi_enzyme)
override
;
65
void
setPeptide
(std::int8_t sequence_database_id,
66
const
ProteinSp
&protein_sp,
67
bool
is_decoy,
68
const
QString &peptide_str,
69
unsigned
int
start,
70
bool
is_nter,
71
unsigned
int
missed_cleavage_number,
72
bool
semi_enzyme)
override
;
73
74
void
addLabeledModificationString
(
const
QString &mod_str);
75
76
77
private
:
78
PeptideModificatorTee
*
mp_peptideModificatorTee
=
nullptr
;
79
80
PeptideModificatorInterface
*
m_sink
=
nullptr
;
81
82
PeptideSpSinkInterface
*
mp_lastPeptideSinkInterface
;
83
84
PeptideModificatorInterface
*
mp_firstModificator
=
nullptr
;
85
86
std::vector<PeptideModificatorInterface *>
m_pepModificatorPtrList
;
87
88
void
parseFixedModification
(
const
QString &mod_str,
89
bool
Nter,
90
bool
Cter,
91
bool
else_prot);
92
void
privAddFixedModificationString
(
const
QString &mod_str,
93
bool
Nter,
94
bool
Cter,
95
bool
else_prot);
96
void
parsePotentialModification
(
const
QString &mod_str,
97
bool
Nter,
98
bool
Cter,
99
bool
else_prot);
100
void
privAddPotentialModificationString
(
const
QString &mod_str,
101
bool
Nter,
102
bool
Cter,
103
bool
else_prot);
104
void
parseLabeledModification
(
const
QString &mod_str,
105
bool
Nter,
106
bool
Cter,
107
bool
else_prot);
108
};
109
110
111
}
// namespace pappso
pappso::EnzymeProductInterface
Definition
enzymeproductinterface.h:34
pappso::PeptideModificatorInterface
Definition
enzymeproductinterface.h:65
pappso::PeptideModificatorPipeline::m_sink
PeptideModificatorInterface * m_sink
Definition
peptidemodificatorpipeline.h:80
pappso::PeptideModificatorPipeline::addFixedNterModificationString
void addFixedNterModificationString(const QString &mod_str)
Definition
peptidemodificatorpipeline.cpp:101
pappso::PeptideModificatorPipeline::PeptideModificatorPipeline
PeptideModificatorPipeline()
Definition
peptidemodificatorpipeline.cpp:36
pappso::PeptideModificatorPipeline::addPotentialCterModificationString
void addPotentialCterModificationString(const QString &mod_str)
Definition
peptidemodificatorpipeline.cpp:176
pappso::PeptideModificatorPipeline::parsePotentialModification
void parsePotentialModification(const QString &mod_str, bool Nter, bool Cter, bool else_prot)
Definition
peptidemodificatorpipeline.cpp:204
pappso::PeptideModificatorPipeline::addLabeledModificationString
void addLabeledModificationString(const QString &mod_str)
Definition
peptidemodificatorpipeline.cpp:254
pappso::PeptideModificatorPipeline::setSink
void setSink(PeptideModificatorInterface *sink) override
Definition
peptidemodificatorpipeline.cpp:80
pappso::PeptideModificatorPipeline::parseLabeledModification
void parseLabeledModification(const QString &mod_str, bool Nter, bool Cter, bool else_prot)
Definition
peptidemodificatorpipeline.cpp:299
pappso::PeptideModificatorPipeline::privAddFixedModificationString
void privAddFixedModificationString(const QString &mod_str, bool Nter, bool Cter, bool else_prot)
Definition
peptidemodificatorpipeline.cpp:112
pappso::PeptideModificatorPipeline::privAddPotentialModificationString
void privAddPotentialModificationString(const QString &mod_str, bool Nter, bool Cter, bool else_prot)
Definition
peptidemodificatorpipeline.cpp:182
pappso::PeptideModificatorPipeline::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
peptidemodificatorpipeline.cpp:324
pappso::PeptideModificatorPipeline::addFixedModificationString
void addFixedModificationString(const QString &mod_str)
Definition
peptidemodificatorpipeline.cpp:96
pappso::PeptideModificatorPipeline::m_pepModificatorPtrList
std::vector< PeptideModificatorInterface * > m_pepModificatorPtrList
Definition
peptidemodificatorpipeline.h:86
pappso::PeptideModificatorPipeline::mp_firstModificator
PeptideModificatorInterface * mp_firstModificator
Definition
peptidemodificatorpipeline.h:84
pappso::PeptideModificatorPipeline::setPeptide
void setPeptide(std::int8_t sequence_database_id, const ProteinSp &protein_sp, bool is_decoy, const QString &peptide_str, unsigned int start, bool is_nter, unsigned int missed_cleavage_number, bool semi_enzyme) override
function to give the products of a protein digestion by an enzyme
Definition
peptidemodificatorpipeline.cpp:359
pappso::PeptideModificatorPipeline::mp_lastPeptideSinkInterface
PeptideSpSinkInterface * mp_lastPeptideSinkInterface
Definition
peptidemodificatorpipeline.h:82
pappso::PeptideModificatorPipeline::mp_peptideModificatorTee
PeptideModificatorTee * mp_peptideModificatorTee
Definition
peptidemodificatorpipeline.h:78
pappso::PeptideModificatorPipeline::addFixedCterModificationString
void addFixedCterModificationString(const QString &mod_str)
Definition
peptidemodificatorpipeline.cpp:106
pappso::PeptideModificatorPipeline::addPotentialNterModificationString
void addPotentialNterModificationString(const QString &mod_str)
Definition
peptidemodificatorpipeline.cpp:170
pappso::PeptideModificatorPipeline::addPotentialModificationString
void addPotentialModificationString(const QString &mod_str)
Definition
peptidemodificatorpipeline.cpp:164
pappso::PeptideModificatorPipeline::parseFixedModification
void parseFixedModification(const QString &mod_str, bool Nter, bool Cter, bool else_prot)
Definition
peptidemodificatorpipeline.cpp:133
pappso::PeptideModificatorTee
Definition
peptidemodificatortee.h:35
pappso::PeptideSpSinkInterface
Definition
enzymeproductinterface.h:108
enzymeproductinterface.h
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::ProteinSp
std::shared_ptr< const Protein > ProteinSp
shared pointer on a Protein object
Definition
protein.h:47
peptidemodificatortee.h
pappsomspp
core
protein
peptidemodificatorpipeline.h
Generated on
for libpappsomspp by
1.17.0