OpenMS
MultiplexFilteredPeak.h
Go to the documentation of this file.
1 // Copyright (c) 2002-2023, The OpenMS Team -- EKU Tuebingen, ETH Zurich, and FU Berlin
2 // SPDX-License-Identifier: BSD-3-Clause
3 //
4 // --------------------------------------------------------------------------
5 // $Maintainer: Lars Nilse $
6 // $Authors: Lars Nilse $
7 // --------------------------------------------------------------------------
8 
9 #pragma once
10 
14 
15 #include <map>
16 #include <vector>
17 #include <algorithm>
18 #include <iostream>
19 
20 namespace OpenMS
21 {
43  class OPENMS_DLLAPI MultiplexFilteredPeak
44  {
45  public:
46 
50  MultiplexFilteredPeak(double mz, float rt, size_t mz_idx, size_t rt_idx);
51 
55  double getMZ() const;
56 
60  float getRT() const;
61 
65  size_t getMZidx() const;
66 
70  size_t getRTidx() const;
71 
75  void addSatellite(size_t rt_idx, size_t mz_idx, size_t pattern_idx);
76 
77  void addSatellite(const MultiplexSatelliteCentroided& satellite, size_t pattern_idx);
78 
82  void addSatelliteProfile(float rt, double mz, float intensity, size_t pattern_idx);
83 
84  void addSatelliteProfile(const MultiplexSatelliteProfile& satellite, size_t pattern_idx);
85 
89  bool checkSatellite(size_t rt_idx, size_t mz_idx) const;
90 
96  const std::multimap<size_t, MultiplexSatelliteCentroided >& getSatellites() const;
97 
103  const std::multimap<size_t, MultiplexSatelliteProfile >& getSatellitesProfile() const;
104 
108  size_t size() const;
109 
113  size_t sizeProfile() const;
114 
115  private:
122  double mz_;
123  float rt_;
124 
131  size_t mz_idx_;
132  size_t rt_idx_;
133 
151  std::multimap<size_t, MultiplexSatelliteCentroided > satellites_;
152 
167  std::multimap<size_t, MultiplexSatelliteProfile > satellites_profile_;
168 
169  };
170 
171 }
data structure storing a single peak that passed all filters
Definition: MultiplexFilteredPeak.h:44
void addSatellite(size_t rt_idx, size_t mz_idx, size_t pattern_idx)
add a satellite peak
void addSatellite(const MultiplexSatelliteCentroided &satellite, size_t pattern_idx)
size_t size() const
return number of satellite peaks
size_t mz_idx_
indices of the primary peak position in the centroided experiment
Definition: MultiplexFilteredPeak.h:131
bool checkSatellite(size_t rt_idx, size_t mz_idx) const
check if the peak (rt_idx, mz_idx) is already in the set of satellite peaks
size_t getMZidx() const
returns the index of the peak in the spectrum
MultiplexFilteredPeak(double mz, float rt, size_t mz_idx, size_t rt_idx)
constructor
float rt_
Definition: MultiplexFilteredPeak.h:123
size_t getRTidx() const
returns the index of the corresponding spectrum in the MS experiment
void addSatelliteProfile(float rt, double mz, float intensity, size_t pattern_idx)
add a satellite data point
size_t rt_idx_
Definition: MultiplexFilteredPeak.h:132
std::multimap< size_t, MultiplexSatelliteCentroided > satellites_
set of satellites
Definition: MultiplexFilteredPeak.h:151
const std::multimap< size_t, MultiplexSatelliteProfile > & getSatellitesProfile() const
return all satellite data points
const std::multimap< size_t, MultiplexSatelliteCentroided > & getSatellites() const
return all satellite peaks
size_t sizeProfile() const
return number of satellite data points
std::multimap< size_t, MultiplexSatelliteProfile > satellites_profile_
set of profile satellites (used on profile data only)
Definition: MultiplexFilteredPeak.h:167
void addSatelliteProfile(const MultiplexSatelliteProfile &satellite, size_t pattern_idx)
float getRT() const
returns RT of the peak
double mz_
position of the primary peak
Definition: MultiplexFilteredPeak.h:122
double getMZ() const
returns m/z of the peak
data structure storing a single satellite peak
Definition: MultiplexSatelliteCentroided.h:29
data structure storing a single satellite data point
Definition: MultiplexSatelliteProfile.h:22
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:22