libpappsomspp
Library for mass spectrometry
filterremovec13.h
Go to the documentation of this file.
1
/**
2
* \file pappsomspp/processing/filters/filterremovec13.h
3
* \date 19/08/2020
4
* \author Olivier Langella
5
* \brief sum peaks under a triangle base
6
*/
7
8
/*******************************************************************************
9
* Copyright (c) 2020 Olivier Langella <Olivier.Langella@u-psud.fr>.
10
*
11
* This file is part of the PAPPSOms++ library.
12
*
13
* PAPPSOms++ is free software: you can redistribute it and/or modify
14
* it under the terms of the GNU General Public License as published by
15
* the Free Software Foundation, either version 3 of the License, or
16
* (at your option) any later version.
17
*
18
* PAPPSOms++ is distributed in the hope that it will be useful,
19
* but WITHOUT ANY WARRANTY; without even the implied warranty of
20
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21
* GNU General Public License for more details.
22
*
23
* You should have received a copy of the GNU General Public License
24
* along with PAPPSOms++. If not, see <http://www.gnu.org/licenses/>.
25
*
26
******************************************************************************/
27
28
#pragma once
29
30
#include "
filterinterface.h
"
31
32
#include "../../trace/trace.h"
33
34
/**
35
* @brief tries to keep as much as possible monoisotopes, removing any possible
36
* C13 peaks
37
*
38
* first sort peaks by decreasing intensities, then keep most intense ones and
39
* avoid any peaks in possible C13 windows after
40
*/
41
42
namespace
pappso
43
{
44
class
PMSPP_LIB_DECL
FilterRemoveC13
:
public
FilterInterface
45
{
46
public
:
47
/**
48
* Default constructor
49
*/
50
FilterRemoveC13
(
PrecisionPtr
precision_ptr);
51
52
/**
53
* Copy constructor
54
*
55
* @param other TODO
56
*/
57
FilterRemoveC13
(
const
FilterRemoveC13
&other);
58
59
/**
60
* Destructor
61
*/
62
virtual
~
FilterRemoveC13
();
63
64
65
Trace
&filter(
Trace
&data_points)
const override
;
66
67
private
:
68
bool
notExcluded(std::vector<std::pair<double, double>> &exclusionMassMap,
69
double
mass)
const
;
70
void
addExclusionMap(std::vector<std::pair<double, double>> &exclusionMassMap,
71
double
mass)
const
;
72
73
private
:
74
double
m_diffC12C13_z1
;
75
double
m_diffC12C13_z2
;
76
PrecisionPtr
m_precisionPtr
;
77
};
78
}
// namespace pappso
pappso::FilterInterface
generic interface to apply a filter on a trace
Definition:
filterinterface.h:40
pappso::FilterRemoveC13
Definition:
filterremovec13.h:45
pappso::FilterRemoveC13::m_diffC12C13_z2
double m_diffC12C13_z2
Definition:
filterremovec13.h:75
pappso::FilterRemoveC13::m_diffC12C13_z1
double m_diffC12C13_z1
Definition:
filterremovec13.h:74
pappso::FilterRemoveC13::m_precisionPtr
PrecisionPtr m_precisionPtr
Definition:
filterremovec13.h:76
pappso::PrecisionBase
Definition:
precision.h:44
pappso::Trace
A simple container of DataPoint instances.
Definition:
trace.h:148
PMSPP_LIB_DECL
#define PMSPP_LIB_DECL
Definition:
exportinmportconfig.h:14
filterinterface.h
pappso
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition:
aa.cpp:39
pappsomspp
processing
filters
filterremovec13.h
Generated on Sun Jan 1 2023 15:24:07 for libpappsomspp by
1.9.1