OpenMS
Loading...
Searching...
No Matches
OpenSwathScoring.h
Go to the documentation of this file.
1// Copyright (c) 2002-present, OpenMS Inc. -- EKU Tuebingen, ETH Zurich, and FU Berlin
2// SPDX-License-Identifier: BSD-3-Clause
3//
4// --------------------------------------------------------------------------
5// $Maintainer: Hannes Roest $
6// $Authors: Hannes Roest $
7// --------------------------------------------------------------------------
8
9#pragma once
10
11// data access
17
18// Kernel classes
21
22// scoring
25
26#include <vector>
27#include <memory>
28#include <boost/make_shared.hpp>
29
30//logging
32
33struct RangeMZ;
34struct RangeMobility;
35
36namespace OpenMS
37{
43 class MobilogramParquetConsumer;
44
45 class OPENMS_DLLAPI OpenSwathScoring
46 {
50
52 {
53 ADDITION,
54 RESAMPLE
55 };
56
58 {
59 FIXED,
60 DYNAMIC
61 };
62
73
74 public:
75
78
81
98 void initialize(double rt_normalization_factor,
99 int add_up_spectra,
100 double spacing_for_spectra_resampling,
101 double merge_spectra_by_peak_width_fraction,
102 const double drift_extra,
103 const OpenSwath_Scores_Usage & su,
104 const std::string& spectrum_addition_method,
105 const std::string& spectrum_merge_method_type,
106 bool use_ms1_ion_mobility,
107 bool apply_im_peak_picking);
108
128 const std::vector<std::string>& native_ids,
129 const std::vector<std::string>& precursor_ids,
130 const std::vector<double>& normalized_library_intensity,
131 std::vector<OpenSwath::ISignalToNoisePtr>& signal_noise_estimators,
132 OpenSwath_Scores & scores) const;
133
153 const std::vector<std::string>& native_ids_identification,
154 const std::vector<std::string>& native_ids_detection,
155 std::vector<OpenSwath::ISignalToNoisePtr>& signal_noise_estimators,
156 OpenSwath_Ind_Scores & scores) const;
157
174 const std::vector<TransitionType> & transitions,
175 const CompoundType& compound,
176 const double normalized_feature_rt,
177 OpenSwath_Scores & scores);
178
198 const std::vector<TransitionType>& transitions,
199 const std::vector<OpenSwath::SwathMap>& swath_maps,
200 const OpenSwath::SpectrumAccessPtr& ms1_map,
201 const OpenMS::DIAScoring& diascoring,
202 const CompoundType& compound,
203 OpenSwath_Scores& scores,
204 std::vector<double>& mzerror_ppm,
205 const double drift_target,
206 const RangeMobility& range_im,
207 MobilogramParquetConsumer* mobilogram_consumer = nullptr,
208 Int64 feature_id = -1);
209
224 const OpenMS::DIAScoring& diascoring,
225 double precursor_mz,
226 double rt,
227 const CompoundType& compound,
228 RangeMobility im_range,
229 OpenSwath_Scores& scores);
230
248 const TransitionType & transition,
249 MRMTransitionGroupType& transition_group_detection,
250 const std::vector<OpenSwath::SwathMap>& swath_maps,
251 RangeMobility& range_im,
252 const OpenMS::DIAScoring & diascoring,
253 OpenSwath_Scores & scores,
254 const double drift_target,
255 MobilogramParquetConsumer* mobilogram_consumer = nullptr,
256 Int64 feature_id = -1);
257
266 void getNormalized_library_intensities_(const std::vector<TransitionType> & transitions,
267 std::vector<double>& normalized_library_intensity);
268
291 SpectrumSequence fetchSpectrumSwath(const std::vector<OpenSwath::SwathMap>& swath_maps, double RT, int nr_spectra_to_add, const RangeMobility& im_range);
292
293
318 SpectrumSequence fetchSpectrumSwath(OpenSwath::SpectrumAccessPtr swath_map, double RT, int nr_spectra_to_add, const RangeMobility& im_range);
319 };
320}
Scoring of an spectrum at the peak apex of an chromatographic elution peak.
Definition DIAScoring.h:65
The representation of a group of transitions in a targeted proteomics experiment.
Definition MRMTransitionGroup.h:42
Writes Mobilograms (ion-mobility traces) to a Parquet file using a PyProphet-compatible-like schema.
Definition MobilogramParquetConsumer.h:25
Definition OpenSwathScoring.h:46
void calculateLibraryScores(OpenSwath::IMRMFeature *imrmfeature, const std::vector< TransitionType > &transitions, const CompoundType &compound, const double normalized_feature_rt, OpenSwath_Scores &scores)
Score a single chromatographic feature against a spectral library.
OpenSwathScoring()
Constructor.
MRMTransitionGroup< MSChromatogram, TransitionType > MRMTransitionGroupType
Definition OpenSwathScoring.h:49
SpectrumAdditionMethod
Definition OpenSwathScoring.h:52
double merge_spectra_by_peak_width_fraction_
Definition OpenSwathScoring.h:65
void calculatePrecursorDIAScores(const OpenSwath::SpectrumAccessPtr &ms1_map, const OpenMS::DIAScoring &diascoring, double precursor_mz, double rt, const CompoundType &compound, RangeMobility im_range, OpenSwath_Scores &scores)
Score a single chromatographic feature using the precursor map.
bool apply_im_peak_picking_
whether to apply peak picking on ion mobilograms
Definition OpenSwathScoring.h:72
SpectrumSequence fetchSpectrumSwath(OpenSwath::SpectrumAccessPtr swath_map, double RT, int nr_spectra_to_add, const RangeMobility &im_range)
Prepares a spectrum for DIA analysis (multiple map)
int add_up_spectra_
Definition OpenSwathScoring.h:66
double spacing_for_spectra_resampling_
Definition OpenSwathScoring.h:64
void calculateDIAIdScores(OpenSwath::IMRMFeature *imrmfeature, const TransitionType &transition, MRMTransitionGroupType &transition_group_detection, const std::vector< OpenSwath::SwathMap > &swath_maps, RangeMobility &range_im, const OpenMS::DIAScoring &diascoring, OpenSwath_Scores &scores, const double drift_target, MobilogramParquetConsumer *mobilogram_consumer=nullptr, Int64 feature_id=-1)
Score a single chromatographic feature using DIA / SWATH scores.
void calculateDIAScores(OpenSwath::IMRMFeature *imrmfeature, const std::vector< TransitionType > &transitions, const std::vector< OpenSwath::SwathMap > &swath_maps, const OpenSwath::SpectrumAccessPtr &ms1_map, const OpenMS::DIAScoring &diascoring, const CompoundType &compound, OpenSwath_Scores &scores, std::vector< double > &mzerror_ppm, const double drift_target, const RangeMobility &range_im, MobilogramParquetConsumer *mobilogram_consumer=nullptr, Int64 feature_id=-1)
Score a single chromatographic feature using DIA / SWATH scores.
SpectrumAdditionMethod spectra_addition_method_
Definition OpenSwathScoring.h:67
void getNormalized_library_intensities_(const std::vector< TransitionType > &transitions, std::vector< double > &normalized_library_intensity)
Computing the normalized library intensities from the transition objects.
void calculateChromatographicScores(OpenSwath::IMRMFeature *imrmfeature, const std::vector< std::string > &native_ids, const std::vector< std::string > &precursor_ids, const std::vector< double > &normalized_library_intensity, std::vector< OpenSwath::ISignalToNoisePtr > &signal_noise_estimators, OpenSwath_Scores &scores) const
Score a single peakgroup in a chromatogram using only chromatographic properties.
double im_drift_extra_pcnt_
Definition OpenSwathScoring.h:69
void calculateChromatographicIdScores(OpenSwath::IMRMFeature *imrmfeature, const std::vector< std::string > &native_ids_identification, const std::vector< std::string > &native_ids_detection, std::vector< OpenSwath::ISignalToNoisePtr > &signal_noise_estimators, OpenSwath_Ind_Scores &scores) const
Score identification transitions against detection transitions of a single peakgroup in a chromatogra...
OpenSwath::LightTransition TransitionType
Definition OpenSwathScoring.h:48
double rt_normalization_factor_
Definition OpenSwathScoring.h:63
OpenSwath_Scores_Usage su_
Definition OpenSwathScoring.h:70
OpenSwath::LightCompound CompoundType
Definition OpenSwathScoring.h:47
void initialize(double rt_normalization_factor, int add_up_spectra, double spacing_for_spectra_resampling, double merge_spectra_by_peak_width_fraction, const double drift_extra, const OpenSwath_Scores_Usage &su, const std::string &spectrum_addition_method, const std::string &spectrum_merge_method_type, bool use_ms1_ion_mobility, bool apply_im_peak_picking)
Initialize the scoring object.
SpectrumSequence fetchSpectrumSwath(const std::vector< OpenSwath::SwathMap > &swath_maps, double RT, int nr_spectra_to_add, const RangeMobility &im_range)
Prepares a spectrum for DIA analysis (single map)
bool use_ms1_ion_mobility_
whether to use MS1 ion mobility extraction in DIA scores
Definition OpenSwathScoring.h:71
SpectrumMergeMethodType
Definition OpenSwathScoring.h:58
~OpenSwathScoring()
Destructor.
SpectrumMergeMethodType spectra_merge_method_type_
Definition OpenSwathScoring.h:68
Definition ITransition.h:31
int64_t Int64
Signed integer type (64bit)
Definition Types.h:40
Main OpenMS namespace.
Definition openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/ISpectrumAccess.h:19
std::vector< OpenSwath::SpectrumPtr > SpectrumSequence
a vector of spectrum pointers that DIA scores can operate on, allows for clever integration of only t...
Definition openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/ISpectrumAccess.h:20
A structure to store which scores should be used by the OpenSWATH Algorithm.
Definition OpenSwathScores.h:25
std::shared_ptr< ISpectrumAccess > SpectrumAccessPtr
Definition openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/ISpectrumAccess.h:131
A structure to hold the individual scores computed for unique ion signatures (UIS) scores for the Inf...
Definition OpenSwathScores.h:181
A structure to hold the different scores computed by OpenSWATH.
Definition OpenSwathScores.h:57
Definition RangeManager.h:482
Definition TransitionExperiment.h:268
Definition TransitionExperiment.h:105