35 #ifndef OPENMS_KERNEL_MASSTRACE_H 36 #define OPENMS_KERNEL_MASSTRACE_H 70 SIZE_OF_MT_QUANTMETHOD
72 static const std::string names_of_quantmethod[SIZE_OF_MT_QUANTMETHOD];
86 MassTrace(
const std::list<PeakType>& trace_peaks);
89 MassTrace(
const std::vector<PeakType>& trace_peaks);
101 PeakType& operator[](
const Size & mt_idx);
102 const PeakType& operator[](
const Size & mt_idx)
const;
108 typedef std::vector<PeakType>::iterator
iterator;
116 return trace_peaks_.begin();
121 return trace_peaks_.end();
126 return trace_peaks_.begin();
129 const_iterator
end()
const 131 return trace_peaks_.end();
136 return trace_peaks_.rbegin();
141 return trace_peaks_.rend();
146 return trace_peaks_.rbegin();
149 const_reverse_iterator
rend()
const 151 return trace_peaks_.rend();
163 return trace_peaks_.size();
197 centroid_sd_ = tmp_sd;
210 if (trace_peaks_.size() > 1)
212 length = std::fabs(trace_peaks_.rbegin()->getRT() - trace_peaks_.begin()->getRT());
220 return std::make_pair(fwhm_start_idx_, fwhm_end_idx_);
226 return smoothed_intensities_;
232 if (trace_peaks_.size() != db_vec.size())
235 "Number of smoothed intensities deviates from mass trace size! Aborting...",
String(db_vec.size()));
238 smoothed_intensities_ = db_vec;
244 if (trace_peaks_.size() <= 1)
return 0.0;
246 return (trace_peaks_.rbegin()->getRT() - trace_peaks_.begin()->getRT()) / (trace_peaks_.size() - 1);
255 double computeSmoothedPeakArea()
const;
258 double computePeakArea()
const;
261 Size findMaxByIntPeak(
bool use_smoothed_ints =
false)
const;
265 double estimateFWHM(
bool use_smoothed_ints =
false);
274 double computeFwhmAreaSmooth()
const;
275 double computeFwhmArea()
const;
279 double getIntensity(
bool smoothed)
const;
280 double getMaxIntensity(
bool smoothed)
const;
290 void updateSmoothedMaxRT();
293 void updateWeightedMeanRT();
295 void updateSmoothedWeightedMeanRT();
298 void updateMedianRT();
301 void updateMedianMZ();
307 void updateWeightedMeanMZ();
314 void updateWeightedMZsd();
323 double computeMedianIntensity_()
const;
354 #endif // OPENMS_KERNEL_MASSTRACE_H iterator end()
Definition: MassTrace.h:119
A more convenient string class.
Definition: String.h:57
A 2-dimensional raw data point or peak.
Definition: Peak2D.h:55
void setSmoothedIntensities(const std::vector< double > &db_vec)
Set smoothed intensities (smoothing is done externally, e.g. by LowessSmoothing). ...
Definition: MassTrace.h:230
MT_QUANTMETHOD quant_method_
use area under mass trace or the median of intensities
Definition: MassTrace.h:348
Peak2D PeakType
Definition: MassTrace.h:48
MT_QUANTMETHOD
Definition: MassTrace.h:67
double centroid_sd_
intensity-weighted STD
Definition: MassTrace.h:332
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:47
reverse_iterator rbegin()
Definition: MassTrace.h:134
A 2-dimensional hull representation in [counter]clockwise direction - depending on axis labelling...
Definition: ConvexHull2D.h:73
std::vector< PeakType >::const_iterator const_iterator
Definition: MassTrace.h:110
double getTraceLength() const
Returns the length of the trace (as difference in RT)
Definition: MassTrace.h:206
double centroid_rt_
Centroid RT.
Definition: MassTrace.h:335
const_iterator begin() const
Definition: MassTrace.h:124
std::vector< PeakType >::iterator iterator
Definition: MassTrace.h:109
double getCentroidRT() const
Returns the centroid RT.
Definition: MassTrace.h:185
Definition: MassTrace.h:69
double getCentroidMZ() const
Returns the centroid m/z.
Definition: MassTrace.h:179
double getAverageMS1CycleTime() const
Get average scan time of mass trace.
Definition: MassTrace.h:242
std::vector< PeakType >::reverse_iterator reverse_iterator
Definition: MassTrace.h:111
void setCentroidSD(const double &tmp_sd)
Definition: MassTrace.h:195
iterator begin()
Definition: MassTrace.h:114
double getCentroidSD() const
Definition: MassTrace.h:190
Size fwhm_end_idx_
Definition: MassTrace.h:345
const std::vector< double > & getSmoothedIntensities() const
Gets smoothed intensities (empty if no smoothing was explicitly done beforehand!).
Definition: MassTrace.h:224
std::vector< PeakType > trace_peaks_
Actual MassTrace container for doing centroid calculation, peak width estimation etc.
Definition: MassTrace.h:326
double centroid_mz_
Centroid m/z.
Definition: MassTrace.h:329
double fwhm_
Definition: MassTrace.h:343
std::vector< PeakType >::const_reverse_iterator const_reverse_iterator
Definition: MassTrace.h:112
Invalid value exception.
Definition: Exception.h:336
std::vector< double > smoothed_intensities_
Container for smoothed intensities. Smoothing must be done externally.
Definition: MassTrace.h:341
double getFWHM() const
Definition: MassTrace.h:200
const_reverse_iterator rbegin() const
Definition: MassTrace.h:144
reverse_iterator rend()
Definition: MassTrace.h:139
Size fwhm_start_idx_
Definition: MassTrace.h:344
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:128
void setLabel(const String &label)
Sets label of mass trace.
Definition: MassTrace.h:173
const_iterator end() const
Definition: MassTrace.h:129
String label_
Trace label.
Definition: MassTrace.h:338
Size getSize() const
Returns the number of peaks contained in the mass trace.
Definition: MassTrace.h:161
double fwhm_mz_avg
Average FWHM of m/z peaks.
Definition: MassTrace.h:318
A container type that gathers peaks similar in m/z and moving along retention time.
Definition: MassTrace.h:62
const_reverse_iterator rend() const
Definition: MassTrace.h:149
std::pair< Size, Size > getFWHMborders() const
Definition: MassTrace.h:218
String getLabel() const
Gets label of mass trace.
Definition: MassTrace.h:167