Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages
ReactionMonitoringTransition.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-2015.
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: Andreas Bertsch $
32 // $Authors: Andreas Bertsch $
33 // --------------------------------------------------------------------------
34 
35 #ifndef OPENMS_ANALYSIS_MRM_REACTIONMONITORINGTRANSITION_H
36 #define OPENMS_ANALYSIS_MRM_REACTIONMONITORINGTRANSITION_H
37 
41 
42 #include <vector>
43 
44 namespace OpenMS
45 {
55  class OPENMS_DLLAPI ReactionMonitoringTransition :
56  public CVTermList
57  {
58 
59 public:
60 
65 
67  {
70  DECOY
71  };
72 
78 
81 
85 
88 
92  void setName(const String & name);
93 
94  const String & getName() const;
95 
96  void setNativeID(const String & name);
97 
98  const String & getNativeID() const;
99 
100  void setPeptideRef(const String & peptide_ref);
101 
102  const String & getPeptideRef() const;
103 
104  void setCompoundRef(const String & compound_ref);
105 
106  const String & getCompoundRef() const;
107 
109  void setPrecursorMZ(double mz);
110 
111  double getPrecursorMZ() const;
112 
113  void setPrecursorCVTermList(const CVTermList & list);
114 
115  void addPrecursorCVTerm(const CVTerm & cv_term);
116 
117  const CVTermList & getPrecursorCVTermList() const;
118 
119  void setProductMZ(double mz);
120 
121  double getProductMZ() const;
122 
123  //void setProductCVTermList(const CVTermList& list);
124 
125  void addProductCVTerm(const CVTerm & cv_term);
126 
127  //const CVTermList& getProductCVTermList() const;
128 
129  const std::vector<Product> & getIntermediateProducts() const;
130 
131  void addIntermediateProduct(Product product);
132 
133  void setIntermediateProducts(const std::vector<Product> & products);
134 
135  void setProduct(Product product);
136 
137  const Product & getProduct() const;
138 
139  void setRetentionTime(RetentionTime rt);
140 
141  const RetentionTime & getRetentionTime() const;
142 
143  void setPrediction(const Prediction & prediction);
144 
145  void addPredictionTerm(const CVTerm & prediction);
146 
147  const Prediction & getPrediction() const;
148 
149  DecoyTransitionType getDecoyTransitionType() const;
150 
151  void setDecoyTransitionType(const DecoyTransitionType & d);
152 
153  double getLibraryIntensity() const;
154 
155  void setLibraryIntensity(double intensity);
156 
158 
162  bool operator==(const ReactionMonitoringTransition & rhs) const;
164 
166  bool operator!=(const ReactionMonitoringTransition & rhs) const;
168 
174  struct ProductMZLess :
176  std::binary_function<ReactionMonitoringTransition, ReactionMonitoringTransition, bool>
177  {
178  inline bool operator()(ReactionMonitoringTransition const & left, ReactionMonitoringTransition const & right) const
179  {
180  return left.getProductMZ() < right.getProductMZ();
181  }
182 
183  };
185 
186 protected:
187 
188  void updateMembers_();
189 
191 
193  String name_; // id, required attribute
194 
195  // attributes to a peptide / compound (optional)
199 
201 
203  // Precursor
204  // Product
205  // IntermediateProduct
206  // RetentionTime
207  // Prediction
208  // cvparam / userParam
209 
210  // A transition has exactly one precursor and it must supply the CV Term 1000827 (isolation window target m/z)
212 
214 
216 
217  std::vector<Product> intermediate_products_;
218 
220 
223 
226 
228  };
229 }
230 
231 #endif // OPENMS_ANALYSIS_MRM_REACTIONMONITORINGTRANSITION_H
DecoyTransitionType decoy_type_
specific properties of a transition (e.g. specific CV terms)
Definition: ReactionMonitoringTransition.h:225
RetentionTime rts
Definition: ReactionMonitoringTransition.h:219
A more convenient string class.
Definition: String.h:57
TargetedExperimentHelper::Prediction Prediction
Definition: ReactionMonitoringTransition.h:64
Representation of controlled vocabulary term list.
Definition: CVTermList.h:54
Definition: ReactionMonitoringTransition.h:69
Product meta information.
Definition: Product.h:49
DecoyTransitionType
Definition: ReactionMonitoringTransition.h:66
CVTermList precursor_cv_terms_
Definition: ReactionMonitoringTransition.h:213
bool operator()(ReactionMonitoringTransition const &left, ReactionMonitoringTransition const &right) const
Definition: ReactionMonitoringTransition.h:178
double precursor_mz_
Subelements:
Definition: ReactionMonitoringTransition.h:211
TargetedExperimentHelper::Configuration Configuration
Definition: ReactionMonitoringTransition.h:61
Definition: TargetedExperimentHelper.h:55
Definition: TargetedExperimentHelper.h:447
Prediction prediction_
Definition: ReactionMonitoringTransition.h:221
String peptide_ref_
Definition: ReactionMonitoringTransition.h:196
TargetedExperimentHelper::RetentionTime RetentionTime
Definition: ReactionMonitoringTransition.h:62
Representation of controlled vocabulary term.
Definition: CVTerm.h:51
String name_
Attributes:
Definition: ReactionMonitoringTransition.h:193
Product product_
Definition: ReactionMonitoringTransition.h:215
double library_intensity_
Definition: ReactionMonitoringTransition.h:227
String compound_ref_
Definition: ReactionMonitoringTransition.h:197
Definition: ReactionMonitoringTransition.h:68
Definition: TargetedExperimentHelper.h:133
Definition: TargetedExperimentHelper.h:416
std::vector< Product > intermediate_products_
Definition: ReactionMonitoringTransition.h:217
TargetedExperimentHelper::TraMLProduct Product
Definition: ReactionMonitoringTransition.h:63
This class stores a SRM/MRM transition.
Definition: ReactionMonitoringTransition.h:55

OpenMS / TOPP release 2.0.0 Documentation generated on Wed Mar 30 2016 16:18:41 using doxygen 1.8.5