libpappsomspp
Library for mass spectrometry
peptidesizefilter.h
Go to the documentation of this file.
1
2
/*******************************************************************************
3
* Copyright (c) 2015 Olivier Langella <Olivier.Langella@moulon.inra.fr>.
4
*
5
* This file is part of the PAPPSOms++ library.
6
*
7
* PAPPSOms++ is free software: you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License as published by
9
* the Free Software Foundation, either version 3 of the License, or
10
* (at your option) any later version.
11
*
12
* PAPPSOms++ is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
* GNU General Public License for more details.
16
*
17
* You should have received a copy of the GNU General Public License
18
* along with PAPPSOms++. If not, see <http://www.gnu.org/licenses/>.
19
*
20
* Contributors:
21
* Olivier Langella <Olivier.Langella@moulon.inra.fr> - initial API and
22
*implementation
23
******************************************************************************/
24
25
#pragma once
26
27
#include "
enzymeproductinterface.h
"
28
29
30
namespace
pappso
31
{
32
/** \brief filter peptide string by size
33
* */
34
class
PMSPP_LIB_DECL
PeptideSizeFilter
:
public
EnzymeProductInterface
,
35
PeptideSinkInterface
36
{
37
38
public
:
39
PeptideSizeFilter
(
unsigned
int
min_size,
unsigned
int
max_size);
40
virtual
~
PeptideSizeFilter
();
41
42
// EnzymeProductInterface
43
void
setPeptide(std::int8_t sequence_database_id,
44
const
ProteinSp
&protein_sp,
45
bool
is_decoy,
46
const
QString &peptide,
47
unsigned
int
start,
48
bool
is_nter,
49
unsigned
int
missed_cleavage_number,
50
bool
semi_enzyme)
override
;
51
52
// PeptideSinkInterface
53
void
54
setSink
(
EnzymeProductInterface
*sink)
override
55
{
56
m_sink = sink;
57
};
58
59
60
private
:
61
EnzymeProductInterface
*m_sink =
nullptr
;
62
const
int
m_minSize
;
63
const
int
m_maxSize
;
64
};
65
}
// namespace pappso
pappso::EnzymeProductInterface
Definition:
enzymeproductinterface.h:34
pappso::PeptideSinkInterface
Definition:
enzymeproductinterface.h:101
pappso::PeptideSizeFilter
filter peptide string by size
Definition:
peptidesizefilter.h:36
pappso::PeptideSizeFilter::setSink
void setSink(EnzymeProductInterface *sink) override
Definition:
peptidesizefilter.h:54
pappso::PeptideSizeFilter::m_minSize
const int m_minSize
Definition:
peptidesizefilter.h:62
pappso::PeptideSizeFilter::m_maxSize
const int m_maxSize
Definition:
peptidesizefilter.h:63
enzymeproductinterface.h
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::ProteinSp
std::shared_ptr< const Protein > ProteinSp
shared pointer on a Protein object
Definition:
protein.h:43
pappsomspp
protein
peptidesizefilter.h
Generated on Sun Jan 1 2023 15:24:07 for libpappsomspp by
1.9.1