libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
peptidebuilder.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
28
29namespace pappso
30{
31
32/** \brief builds a peptide shared pointer from peptide string and adds fixed
33 * modifications
34 * */
37{
38
39 public:
41 virtual ~PeptideBuilder();
42 void setPeptide(std::int8_t sequence_database_id,
43 const ProteinSp &protein_sp,
44 bool is_decoy,
45 const QString &peptide_str,
46 unsigned int start,
47 bool is_nter,
48 unsigned int missed_cleavage_number,
49 bool semi_enzyme) override;
50
51 void addFixedAaModification(char aa, AaModificationP modification);
52
53 void
55 {
56 m_sink = sink;
57 };
58
59 private:
60 PeptideModificatorInterface *m_sink = nullptr;
61
62 std::list<std::pair<char, AaModificationP>> m_fixedModificationList;
63};
64
65
66} // namespace pappso
builds a peptide shared pointer from peptide string and adds fixed modifications
void setSink(PeptideModificatorInterface *sink) override
std::list< std::pair< char, AaModificationP > > m_fixedModificationList
#define PMSPP_LIB_DECL
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition aa.cpp:39
std::shared_ptr< const Protein > ProteinSp
shared pointer on a Protein object
Definition protein.h:47