OpenMS
MRMIonSeries.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: George Rosenberger $
6 // $Authors: George Rosenberger $
7 // --------------------------------------------------------------------------
8 
9 #pragma once
10 
13 #include <unordered_map>
14 
15 // #define DEBUG_MRMIONSERIES
16 
17 namespace OpenMS
18 {
19 
41  class OPENMS_DLLAPI MRMIonSeries
42  {
43 private:
45 
47 
48 public:
50  MRMIonSeries();
52 
56 
57  typedef std::unordered_map<String, double> IonSeries;
58 
68  std::pair<String, double> getIon(IonSeries& ionseries, const String& ionid);
69 
80  std::pair<String, double> annotateIon(const IonSeries& ionseries, const double ProductMZ, const double mz_threshold);
81 
90 
108  const TargetedExperiment::Peptide& peptide,
109  const double precursor_mz_threshold,
110  const double product_mz_threshold,
111  const bool enable_reannotation,
112  const std::vector<String>& fragment_types,
113  const std::vector<size_t>& fragment_charges,
114  const bool enable_specific_losses,
115  const bool enable_unspecific_losses,
116  const int round_decPow = -4);
117 
131  size_t precursor_charge,
132  const std::vector<String>& fragment_types,
133  const std::vector<size_t>& fragment_charges,
134  const bool enable_specific_losses,
135  const bool enable_unspecific_losses,
136  const int round_decPow = -4);
137  };
138 }
139 
Representation of a peptide/protein sequence.
Definition: AASequence.h:86
Generate theoretical fragment ion series for use in MRMAssay and MRMDecoy.
Definition: MRMIonSeries.h:42
std::unordered_map< String, double > IonSeries
An MRM ion series which maps: "ion_type" -> "fragment m/z".
Definition: MRMIonSeries.h:57
IonSeries getIonSeries(const AASequence &sequence, size_t precursor_charge, const std::vector< String > &fragment_types, const std::vector< size_t > &fragment_charges, const bool enable_specific_losses, const bool enable_unspecific_losses, const int round_decPow=-4)
Computed theoretical fragment ion series.
void annotationToCV_(ReactionMonitoringTransition &tr)
std::pair< String, double > getIon(IonSeries &ionseries, const String &ionid)
Selects ion from IonSeries according to annotation string.
TargetedExperiment::Interpretation annotationToCVTermList_(const String &annotation)
void annotateTransitionCV(ReactionMonitoringTransition &tr, const String &annotation)
Annotates transition with CV terms.
~MRMIonSeries()
Destructor.
void annotateTransition(ReactionMonitoringTransition &tr, const TargetedExperiment::Peptide &peptide, const double precursor_mz_threshold, const double product_mz_threshold, const bool enable_reannotation, const std::vector< String > &fragment_types, const std::vector< size_t > &fragment_charges, const bool enable_specific_losses, const bool enable_unspecific_losses, const int round_decPow=-4)
Annotates transition.
std::pair< String, double > annotateIon(const IonSeries &ionseries, const double ProductMZ, const double mz_threshold)
Selects ion from IonSeries according to product m/z.
This class stores a SRM/MRM transition.
Definition: ReactionMonitoringTransition.h:32
A more convenient string class.
Definition: String.h:34
Represents a peptide (amino acid sequence)
Definition: TargetedExperimentHelper.h:334
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:22
Product ion interpretation.
Definition: TargetedExperimentHelper.h:479