ProteoWizard
pwiz
analysis
spectrum_processing
MS2NoiseFilter.hpp
Go to the documentation of this file.
1
//
2
// $Id: SpectrumList_PeakFilter.hpp 1191 2009-08-14 19:33:05Z chambm $
3
//
4
//
5
// Original author: Chris Paulse <cpaulse <a.t> systemsbiology.org>
6
//
7
// Copyright 2009 Institute for Systems Biology, Seattle, WA
8
//
9
// Licensed under the Apache License, Version 2.0 (the "License");
10
// you may not use this file except in compliance with the License.
11
// You may obtain a copy of the License at
12
//
13
// http://www.apache.org/licenses/LICENSE-2.0
14
//
15
// Unless required by applicable law or agreed to in writing, software
16
// distributed under the License is distributed on an "AS IS" BASIS,
17
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18
// See the License for the specific language governing permissions and
19
// limitations under the License.
20
//
21
22
23
#ifndef _MS2_NOISE_FILTER_HPP_
24
#define _MS2_NOISE_FILTER_HPP_
25
26
27
#include "
pwiz/utility/misc/Export.hpp
"
28
#include "
pwiz/data/msdata/MSData.hpp
"
29
#include "
pwiz/analysis/common/DataFilter.hpp
"
30
31
32
namespace
pwiz
{
33
namespace
analysis {
34
35
36
// Noise peak removal in ms2 spectra. We expect fragment masses to be relatively
37
// equally spaced throughout the spectrum. Select the top n most intense ions within a
38
// sliding window width of w. Optionally, allow more peaks at lower mass (below precursor).
39
//
40
// Reference:
41
// "When less can yield more – Computational preprocessing of MS/MS spectra for peptide
42
// identification", Bernhard Y. Renard, Marc Kirchner, Flavio Monigatti, Alexander R. Ivanov,
43
// Juri Rappsilber, Dominic Winter, Judith A. J. Steen, Fred A. Hamprecht and Hanno Steen
44
// Proteomics, 9, 4978-4984, 2009.
45
46
struct
PWIZ_API_DECL
MS2NoiseFilter
:
public
SpectrumDataFilter
47
{
48
/// MS2NoiseFilter's parameters
49
struct
PWIZ_API_DECL
Config
50
{
51
Config
(
52
int
numMassesInWindow_ = 5,
53
double
windowWidth_ = 120.0,
54
bool
relaxLowMass_ =
false
55
);
56
57
size_t
numMassesInWindow
;
58
double
windowWidth
;
59
bool
relaxLowMass
;
60
};
61
62
MS2NoiseFilter
(
const
MS2NoiseFilter::Config
params_) : params(params_) {}
63
virtual
void
operator () (
const
pwiz::msdata::SpectrumPtr
&)
const
;
64
virtual
void
describe
(
pwiz::msdata::ProcessingMethod
&)
const
;
65
66
const
MS2NoiseFilter::Config
params
;
67
};
68
69
70
}
// namespace analysis
71
}
// namespace pwiz
72
73
74
#endif // _MS2_NOISE_FILTER_HPP_
pwiz::analysis::MS2NoiseFilter::MS2NoiseFilter
MS2NoiseFilter(const MS2NoiseFilter::Config params_)
Definition:
MS2NoiseFilter.hpp:62
pwiz
Definition:
ChromatogramList_Filter.hpp:36
pwiz::msdata::ProcessingMethod
Description of the default peak processing method. This element describes the base method used in the...
Definition:
MSData.hpp:255
MSData.hpp
pwiz::analysis::MS2NoiseFilter::Config::relaxLowMass
bool relaxLowMass
Definition:
MS2NoiseFilter.hpp:59
DataFilter.hpp
PWIZ_API_DECL
#define PWIZ_API_DECL
Definition:
Export.hpp:32
Export.hpp
pwiz::analysis::MS2NoiseFilter::describe
virtual void describe(pwiz::msdata::ProcessingMethod &) const
pwiz::analysis::MS2NoiseFilter::Config
MS2NoiseFilter's parameters.
Definition:
MS2NoiseFilter.hpp:50
pwiz::analysis::MS2NoiseFilter::Config::numMassesInWindow
size_t numMassesInWindow
Definition:
MS2NoiseFilter.hpp:57
pwiz::analysis::MS2NoiseFilter::Config::Config
Config(int numMassesInWindow_=5, double windowWidth_=120.0, bool relaxLowMass_=false)
pwiz::msdata::SpectrumPtr
boost::shared_ptr< Spectrum > SpectrumPtr
Definition:
MSData.hpp:573
pwiz::analysis::MS2NoiseFilter
Definition:
MS2NoiseFilter.hpp:47
pwiz::analysis::SpectrumDataFilter
Definition:
DataFilter.hpp:36
pwiz::analysis::MS2NoiseFilter::params
const MS2NoiseFilter::Config params
Definition:
MS2NoiseFilter.hpp:66
pwiz::analysis::MS2NoiseFilter::Config::windowWidth
double windowWidth
Definition:
MS2NoiseFilter.hpp:58
Generated by
1.8.18