libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
grpmappeptidetosubgroupset.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#include <map>
27
28#include "grppeptide.h"
29#include "grpsubgroupset.h"
30#include "grppeptideset.h"
31
32namespace pappso
33{
34
35
37{
38 private:
39 std::map<GrpPeptide *, GrpSubGroupSet> m_mapPeptideToSubGroupSet;
40
41 public:
45
46 /** @brief get all subgroups concerned by a list of peptides
47 */
48 void getSubGroupSet(const GrpPeptideSet &peptide_set_in,
49 GrpSubGroupSet &impacted_subgroup_set) const;
50
51 /** @brief removes in the map all references of the group to remove
52 * (p_remove_sub_group)
53 */
54 void remove(GrpSubGroup *p_remove_sub_group);
55
56 /** @brief add in the map all peptides of the subgroup to add
57 */
58 void add(GrpSubGroup *p_add_sub_group);
59
60 /** @brief tells if this subgroup contains a specific peptide
61 */
62 bool hasSpecificPeptide(const GrpSubGroup *get) const;
63
64 /** @brief check function only usefull for testing purpose
65 */
66 void check(std::list<GrpSubGroupSp> &m_grpSubGroupSpList) const;
67
68 unsigned int size() const;
69 const QString printInfos() const;
70};
71
72} // namespace pappso
bool hasSpecificPeptide(const GrpSubGroup *get) const
tells if this subgroup contains a specific peptide
void check(std::list< GrpSubGroupSp > &m_grpSubGroupSpList) const
check function only usefull for testing purpose
void getSubGroupSet(const GrpPeptideSet &peptide_set_in, GrpSubGroupSet &impacted_subgroup_set) const
get all subgroups concerned by a list of peptides
void remove(GrpSubGroup *p_remove_sub_group)
removes in the map all references of the group to remove (p_remove_sub_group)
std::map< GrpPeptide *, GrpSubGroupSet > m_mapPeptideToSubGroupSet
void add(GrpSubGroup *p_add_sub_group)
add in the map all peptides of the subgroup to add
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition aa.cpp:39