libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
scorevalues.cpp
Go to the documentation of this file.
1/**
2 * \file pappsomspp/processing/specglob/scorevalues.h
3 * \date 06/11/2023
4 * \author Olivier Langella
5 * \brief scores to apply in comparisons
6 *
7 * C++ implementation of the SpecGlob algorithm described in :
8 * 1. Prunier, G. et al. Fast alignment of mass spectra in large proteomics
9 * datasets, capturing dissimilarities arising from multiple complex
10 * modifications of peptides. BMC Bioinformatics 24, 421 (2023).
11 *
12 * HAL Id : hal-04296170 , version 1
13 * Mot de passe : hxo20cl
14 * DOI : 10.1186/s12859-023-05555-y
15 */
16
17
18/*
19 * SpecGlobTool, Spectra to peptide alignment tool
20 * Copyright (C) 2023 Olivier Langella
21 * <olivier.langella@universite-paris-saclay.fr>
22 *
23 * This program is free software: you can redistribute it and/or modify
24 * it under the terms of the GNU General Public License as published by
25 * the Free Software Foundation, either version 3 of the License, or
26 * (at your option) any later version.
27 *
28 * This program is distributed in the hope that it will be useful,
29 * but WITHOUT ANY WARRANTY; without even the implied warranty of
30 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
31 * GNU General Public License for more details.
32 *
33 * You should have received a copy of the GNU General Public License
34 * along with this program. If not, see <http://www.gnu.org/licenses/>.
35 *
36 */
37
38#include "scorevalues.h"
39#include <algorithm>
40
41
42namespace pappso
43{
44namespace specglob
45{
47{
48
49 //#Scores to apply
50 //#Score for non alignment (int)
51 // sg.scoreNonAlign=-4
53
54 //#Score for re-alignment (int)
55 // sg.scoreReAlignNative=-8
57 // sg.scoreReAlignSym=-8
59 // sg.scoreReAlignBoth=-6
61
62 //#Score for good alignment(int)
66
67
68 //#Score for re - alignment without offset(int)
72}
73
75{
76 std::copy(other.m_scoreTable, other.m_scoreTable + 10, m_scoreTable);
77}
78
82
83int
85{
86 return m_scoreTable[(std::uint8_t)type];
87}
88
89void
91{
92 m_scoreTable[(std::uint8_t)type] = value;
93}
94
95const ScoreValues &
97{
98 std::copy(other.m_scoreTable, other.m_scoreTable + 10, m_scoreTable);
99 return *this;
100}
101} // namespace specglob
102} // namespace pappso
void set(ScoreValueType type, int value)
int get(ScoreValueType type)
const ScoreValues & operator=(const ScoreValues &other)
@ scoreAlignNative
Score for good alignment native (int)
@ scoreReAlignSymNO
Score for re-alignment without offset symetric (int)
@ scoreNonAlign
Score for non alignment (int)
@ scoreAlignBoth
Score for good alignment both (int)
@ scoreReAlignBoth
Score for re-alignment both (int)
@ scoreReAlignBothNO
Score for re-alignment without offset both (int)
@ scoreReAlignSym
Score for re-alignment symetric (int)
@ scoreAlignSym
Score for good alignment symetric (int)
@ scoreReAlignNativeNO
Score for re-alignment without offset native (int)
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition aa.cpp:39
scores to apply in comparisons