OpenMS  2.4.0
AbsoluteQuantitationMethod.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-2018.
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: Douglas McCloskey, Pasquale Domenico Colaianni $
32 // $Authors: Douglas McCloskey, Pasquale Domenico Colaianni $
33 // --------------------------------------------------------------------------
34 
35 #pragma once
36 
37 #include <OpenMS/config.h> // OPENMS_DLLAPI
40 
41 namespace OpenMS
42 {
52  class OPENMS_DLLAPI AbsoluteQuantitationMethod
53  {
54 public:
56  ~AbsoluteQuantitationMethod() = default;
57 
58  inline bool operator==(const AbsoluteQuantitationMethod& other) const
59  {
60  return
61  std::tie(
62  component_name_,
63  feature_name_,
64  IS_name_,
65  llod_,
66  ulod_,
67  lloq_,
68  uloq_,
69  n_points_,
70  correlation_coefficient_,
71  concentration_units_,
72  transformation_model_,
73  transformation_model_params_
74  ) == std::tie(
75  other.component_name_,
76  other.feature_name_,
77  other.IS_name_,
78  other.llod_,
79  other.ulod_,
80  other.lloq_,
81  other.uloq_,
82  other.n_points_,
87  )
88  ;
89  }
90 
91  inline bool operator!=(const AbsoluteQuantitationMethod& other) const
92  {
93  return !(*this == other);
94  }
95 
96  void setComponentName(const String& component_name);
97  String getComponentName() const;
98 
99  void setFeatureName(const String& feature_name);
100  String getFeatureName() const;
101 
102  void setISName(const String& IS_name);
103  String getISName() const;
104 
105  void setLLOD(const double llod);
106  double getLLOD() const;
107  void setULOD(const double ulod);
108  double getULOD() const;
109  bool checkLOD(const double value) const;
110 
111  void setLLOQ(const double lloq);
112  double getLLOQ() const;
113  void setULOQ(const double uloq);
114  double getULOQ() const;
115  bool checkLOQ(const double value) const;
116 
117  void setNPoints(const Int n_points);
118  Int getNPoints() const;
119 
120  void setCorrelationCoefficient(const double correlation_coefficient);
121  double getCorrelationCoefficient() const;
122 
123  void setConcentrationUnits(const String& concentration_units);
124  String getConcentrationUnits() const;
125 
126  void setTransformationModel(const String& transformation_model);
127  String getTransformationModel() const;
128 
129  void setTransformationModelParams(const Param& transformation_model_params);
130  Param getTransformationModelParams() const;
131 
132 private:
136  double llod_;
137  double ulod_;
138  double lloq_;
139  double uloq_;
145  };
146 }
147 
bool operator!=(const AbsoluteQuantitationMethod &other) const
Definition: AbsoluteQuantitationMethod.h:91
A more convenient string class.
Definition: String.h:57
double llod_
lower limit of detection (LLOD) of the transition
Definition: AbsoluteQuantitationMethod.h:136
String transformation_model_
transformation model
Definition: AbsoluteQuantitationMethod.h:143
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:46
Int n_points_
number of points used in a calibration curve
Definition: AbsoluteQuantitationMethod.h:140
String concentration_units_
concentration units of the component&#39;s concentration
Definition: AbsoluteQuantitationMethod.h:142
AbsoluteQuantitationMethod is a class to hold information about the quantitation method and for apply...
Definition: AbsoluteQuantitationMethod.h:52
String IS_name_
the internal standard (IS) name for the transition
Definition: AbsoluteQuantitationMethod.h:135
bool operator==(const AbsoluteQuantitationMethod &other) const
Definition: AbsoluteQuantitationMethod.h:58
String component_name_
id of the component
Definition: AbsoluteQuantitationMethod.h:133
double ulod_
upper limit of detection (ULOD) of the transition
Definition: AbsoluteQuantitationMethod.h:137
double uloq_
upper limit of quantitation (ULOQ) of the transition
Definition: AbsoluteQuantitationMethod.h:139
double lloq_
lower limit of quantitation (LLOQ) of the transition
Definition: AbsoluteQuantitationMethod.h:138
Management and storage of parameters / INI files.
Definition: Param.h:74
double correlation_coefficient_
the Pearson R value for the correlation coefficient of the calibration curve
Definition: AbsoluteQuantitationMethod.h:141
Param transformation_model_params_
transformation model parameters
Definition: AbsoluteQuantitationMethod.h:144
String feature_name_
name of the feature (i.e., peak_apex_int or peak_area)
Definition: AbsoluteQuantitationMethod.h:134
int Int
Signed integer type.
Definition: Types.h:102