OpenMS
2.4.0
OpenMS
TRANSFORMATIONS
FEATUREFINDER
MultiplexFilteringProfile.h
Go to the documentation of this file.
1
// --------------------------------------------------------------------------
2
// OpenMS -- Open-Source Mass Spectrometry
3
// --------------------------------------------------------------------------
4
// Copyright The OpenMS Team -- Eberhard Karls University Tuebingen,
5
// ETH Zurich, and Freie Universitaet Berlin 2002-2018.
6
//
7
// This software is released under a three-clause BSD license:
8
// * Redistributions of source code must retain the above copyright
9
// notice, this list of conditions and the following disclaimer.
10
// * Redistributions in binary form must reproduce the above copyright
11
// notice, this list of conditions and the following disclaimer in the
12
// documentation and/or other materials provided with the distribution.
13
// * Neither the name of any author or any participating institution
14
// may be used to endorse or promote products derived from this software
15
// without specific prior written permission.
16
// For a full list of authors, refer to the file AUTHORS.
17
// --------------------------------------------------------------------------
18
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21
// ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING
22
// INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
23
// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
24
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
25
// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
26
// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
27
// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
28
// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
//
30
// --------------------------------------------------------------------------
31
// $Maintainer: Lars Nilse $
32
// $Authors: Lars Nilse $
33
// --------------------------------------------------------------------------
34
35
#pragma once
36
37
#include <
OpenMS/KERNEL/BaseFeature.h
>
38
#include <
OpenMS/KERNEL/StandardTypes.h
>
39
#include <
OpenMS/CONCEPT/ProgressLogger.h
>
40
#include <
OpenMS/TRANSFORMATIONS/RAW2PEAK/PeakPickerHiRes.h
>
41
#include <
OpenMS/TRANSFORMATIONS/FEATUREFINDER/MultiplexIsotopicPeakPattern.h
>
42
#include <
OpenMS/TRANSFORMATIONS/FEATUREFINDER/MultiplexFiltering.h
>
43
#include <
OpenMS/TRANSFORMATIONS/FEATUREFINDER/MultiplexFilteredPeak.h
>
44
#include <
OpenMS/TRANSFORMATIONS/FEATUREFINDER/MultiplexFilteredMSExperiment.h
>
45
#include <
OpenMS/MATH/MISC/CubicSpline2d.h
>
46
#include <
OpenMS/FILTERING/DATAREDUCTION/SplineSpectrum.h
>
47
48
#include <vector>
49
#include <algorithm>
50
#include <iostream>
51
52
namespace
OpenMS
53
{
67
class
OPENMS_DLLAPI
MultiplexFilteringProfile
:
68
public
MultiplexFiltering
69
{
70
public
:
92
MultiplexFilteringProfile
(
MSExperiment
& exp_profile,
const
MSExperiment
& exp_picked,
const
std::vector<std::vector<PeakPickerHiRes::PeakBoundary> >& boundaries,
93
const
std::vector<MultiplexIsotopicPeakPattern>& patterns,
int
isotopes_per_peptide_min,
int
isotopes_per_peptide_max,
double
intensity_cutoff,
double
rt_band,
94
double
mz_tolerance,
bool
mz_tolerance_unit,
double
peptide_similarity,
double
averagine_similarity,
double
averagine_similarity_scaling,
String
averagine_type=
"peptide"
);
95
105
std::vector<MultiplexFilteredMSExperiment> filter();
106
107
private
:
117
bool
filterAveragineModel_(
const
MultiplexIsotopicPeakPattern
& pattern,
const
MultiplexFilteredPeak
& peak,
const
std::multimap<size_t, MultiplexSatelliteProfile >& satellites_profile)
const
;
118
127
bool
filterPeptideCorrelation_(
const
MultiplexIsotopicPeakPattern
& pattern,
const
std::multimap<size_t, MultiplexSatelliteProfile > satellites_profile)
const
;
128
132
std::vector<SplineSpectrum>
exp_spline_profile_
;
133
std::vector<std::vector<PeakPickerHiRes::PeakBoundary> >
boundaries_
;
134
135
};
136
137
}
138
CubicSpline2d.h
OpenMS::String
A more convenient string class.
Definition:
String.h:57
OpenMS::MSExperiment
In-Memory representation of a mass spectrometry experiment.
Definition:
MSExperiment.h:77
OpenMS::MultiplexIsotopicPeakPattern
data structure for pattern of isotopic peaks
Definition:
MultiplexIsotopicPeakPattern.h:54
MultiplexFilteredPeak.h
OpenMS
Main OpenMS namespace.
Definition:
FeatureDeconvolution.h:46
ProgressLogger.h
BaseFeature.h
MultiplexIsotopicPeakPattern.h
OpenMS::MultiplexFilteringProfile::boundaries_
std::vector< std::vector< PeakPickerHiRes::PeakBoundary > > boundaries_
Definition:
MultiplexFilteringProfile.h:133
OpenMS::MultiplexFilteredPeak
data structure storing a single peak that passed all filters
Definition:
MultiplexFilteredPeak.h:70
MultiplexFilteredMSExperiment.h
SplineSpectrum.h
OpenMS::MultiplexFilteringProfile
filters centroided and profile data for peak patterns
Definition:
MultiplexFilteringProfile.h:67
PeakPickerHiRes.h
MultiplexFiltering.h
OpenMS::MultiplexFilteringProfile::exp_spline_profile_
std::vector< SplineSpectrum > exp_spline_profile_
spline interpolated profile data and peak boundaries
Definition:
MultiplexFilteringProfile.h:132
StandardTypes.h
OpenMS::MultiplexFiltering
base class for filtering centroided and profile data for peak patterns
Definition:
MultiplexFiltering.h:74
Generated on Fri Apr 17 2020 11:30:42 for OpenMS by
1.8.17