Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages
SuperHirnParameters.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-2017.
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: Peter Kunszt $
32 // $Authors: Peter Kunszt $
33 // --------------------------------------------------------------------------
34 //
35 
36 #ifndef OPENMS_TRANSFORMATIONS_FEATUREFINDER_SUPERHIRN_SUPERHIRNPARAMETERS_H
37 #define OPENMS_TRANSFORMATIONS_FEATUREFINDER_SUPERHIRN_SUPERHIRNPARAMETERS_H
38 
39 #include <OpenMS/TRANSFORMATIONS/FEATUREFINDER/SUPERHIRN/SuperHirnConfig.h>
40 
41 namespace OpenMS
42 {
43 
49  {
50 public:
51  static SuperHirnParameters * instance();
52 
54 
59 
60  double getMinTR();
61  double getMaxTR();
62  double getMinFeatureMZ();
63  double getMaxFeatureMZ();
64  int getMinFeatureChrg();
65  int getMaxFeatureChrg();
66 
67  float getIntensityThreshold();
68  double getToleranceMZ();
71  std::map<int, float> * getScanTRIndex();
72  // bool getMonoIsoDebugging();
73  // double getDebugMonoIsoMassMin();
74  // double getDebugMonoIsoMassMax();
75  // double getMS1IntensityApexPercentilCutoff();
76  double getMS1TRResolution();
77  bool centroidDataModus();
79 
81  /*
82  * @brief Maximal deviation between expected and measured isotopic intensities
83  */
84  double getIntensityCV();
85 
86  /*
87  * @brief Mass tolerance in ppm between isotopes
88  */
89  double getMassTolPpm();
90 
91  /*
92  * @brief Mass tolerance in Da between isotopes - total mass to = mass*fMassTolPpm/1000000 + fMassTolDa
93  */
94  double getMassTolDa();
95 
96  /*
97  * @brief Peak below this values are not considered as monoisotopic peaks
98  */
99  double getMinIntensity();
100 
101  /*
102  * @brief Intensities below this value are considered as 0
103  */
104  double getIntensityFloor();
105 
106  /*
107  * @brief M/Z tolerance in Parts per Million
108  */
109  double getMzTolPpm();
110 
111  /*
112  * @brief TR tolerance
113  */
114  double getTrTol();
115 
118 
120  bool ms1FeatureClustering();
121 
123  double getInitialTrTolerance();
127 
129 
130  bool isInitIsotopeDist();
131  void setInitIsotopeDist();
132 
134 
135 private:
136  /*
137  * @brief The constructors are private as only the class itself
138  * can construct an instance. Use the static instance() method to access the parameters.
139  */
143 
144  static SuperHirnParameters * instance_; // the singleton instance
145  static bool haveInstance_;
146 
151 
152  double minTR_;
153  double maxTR_;
158 
159  float intensityThreshold_; // minimal intensity level: NEVER USED
160  double toleranceMZ_; // m/z tolerance value: NEVER CONFIGURED
161  double maxInterScanRetentionTimeDistance_; // max_distance from next elution peak member in min.
162  int minNbClusterMembers_; // define minimal number of members in LC elution peaks cluster
163 
164  std::map<int, float> scanTRIndex_;
165 
166  // bool monoIsoDebugging_; // to track detected monoisotopic mass for debugging
167  // double debugMonoIsoMassMin_;
168  // double debugMonoIsoMassMax_;
169  // double ms1IntensityApexPercentilCutoff_;
171  bool centroidDataModus_; // if data are in centroid form or not
173 
174  // int reportMonoPeaks_; // 1 if info about monoisotopic peaks should be written to mono_peaks.txt
175  // std::string debugDirectory_; // Directory where peak detection debug files are written
176  // int reportScanNumber_; // if sfReportMonoPeaks is set to 1, details about this spectrum will be written to debug files
177 
178  // int ms1BaseInterScanDistance_;
179  // int ms2BaseInterScanDistance;
180  // bool ms2PeakProcessing_;
181 
182  // std::vector<double> peakExtractionScanLevels_;
183  // std::vector<double> fragmentMassScanLevels_;
184 
186  double intensityCV_;
187 
188  double massTolPpm_; // mass tolerance in ppm between isotopes
189  double massTolDa_; // mass tolerance in Da between isotopes - total mass to = mass*fMassTolPpm/1000000 + fMassTolDa
190  double minIntensity_; // peak below this values are not considered as monoisotopic peaks
191  double intensityFloor_; // intensities below this value are considered as 0
192 
193 
194  double mzTolPpm_; // tolerance in m/z and TR:
195  double trTol_;
198 
201 
207 
210 
211  };
212 
213 //------------------------- inline methods --------------------------
214 
216  {
217  }
218 
220  {
221  return *this;
222  }
223 
225  {
226  if (haveInstance_)
227  {
228  return instance_;
229  }
231  haveInstance_ = true;
232  return instance_;
233  }
234 
236  {
238  }
239 
241  {
243  }
244 
246  {
248  }
249 
251  {
253  }
254 
256  {
257  return minTR_;
258  }
259 
261  {
262  return maxTR_;
263  }
264 
266  {
267  return minFeatureMZ_;
268  }
269 
271  {
272  return maxFeatureMZ_;
273  }
274 
276  {
277  return minFeatureChrg_;
278  }
279 
281  {
282  return maxFeatureChrg_;
283  }
284 
286  {
287  return intensityThreshold_;
288  }
289 
291  {
292  return toleranceMZ_;
293  }
294 
296  {
298  }
299 
301  {
302  return minNbClusterMembers_;
303  }
304 
305  inline std::map<int, float> * SuperHirnParameters::getScanTRIndex()
306  {
307  return &scanTRIndex_;
308  }
309 
310  /*
311  inline bool SuperHirnParameters::getMonoIsoDebugging()
312  {
313  return monoIsoDebugging_;
314  }
315 
316  inline double SuperHirnParameters::getDebugMonoIsoMassMin()
317  {
318  return debugMonoIsoMassMin_;
319  }
320 
321  inline double SuperHirnParameters::getDebugMonoIsoMassMax()
322  {
323  return debugMonoIsoMassMax_;
324  }
325 
326  inline double SuperHirnParameters::getMS1IntensityApexPercentilCutoff()
327  {
328  return ms1IntensityApexPercentilCutoff_;
329  }
330  */
331 
333  {
334  return ms1TRResolution_;
335  }
336 
338  {
339  return centroidDataModus_;
340  }
341 
343  {
344  return centroidWindowWidth_;
345  }
346 
348  {
350  }
351 
353  {
354  return intensityCV_;
355  }
356 
358  {
359  return massTolPpm_;
360  }
361 
363  {
364  return massTolDa_;
365  }
366 
368  {
369  return minIntensity_;
370  }
371 
373  {
374  return intensityFloor_;
375  }
376 
378  {
379  return mzTolPpm_;
380  }
381 
383  {
384  return trTol_;
385  }
386 
388  {
390  }
391 
393  {
395  }
396 
398  {
400  }
401 
403  {
404  return ms1FeatureClustering_;
405  }
406 
408  {
409  return initIsotopeDist_;
410  }
411 
413  {
414  initIsotopeDist_ = true;
415  }
416 
418  {
420  }
421 
423  {
424  return initialTrTolerance_;
425  }
426 
428  {
430  }
431 
433  {
435  }
436 
438  {
440  }
441 
443  {
445  }
446 
447 }
448 
449 #endif // OPENMS_TRANSFORMATIONS_FEATUREFINDER_SUPERHIRN_SUPERHIRNPARAMETERS_H
double getInitialTrTolerance()
Definition: SuperHirnParameters.h:422
double getLowIntensityMSSignalThreshold()
Definition: SuperHirnParameters.h:442
int getBackgroundIntensityBinsMinBinCount()
Definition: SuperHirnParameters.h:250
double getMassTolPpm()
Definition: SuperHirnParameters.h:357
std::map< int, float > * getScanTRIndex()
Definition: SuperHirnParameters.h:305
bool centroidDataModus_
Definition: SuperHirnParameters.h:171
double maxFeatureMZ_
Definition: SuperHirnParameters.h:155
int getMinNbClusterMembers()
Definition: SuperHirnParameters.h:300
double getToleranceMZ()
Definition: SuperHirnParameters.h:290
double getMinTR()
Definition: SuperHirnParameters.h:255
double getPercentageIntensityElutionBorderVariation()
Definition: SuperHirnParameters.h:432
double ms1PeakAreaTrResolution_
Definition: SuperHirnParameters.h:202
double getMinFeatureMZ()
Definition: SuperHirnParameters.h:265
void setInitIsotopeDist()
Definition: SuperHirnParameters.h:412
SuperHirn parameters singleton class containing all static configuration variables.
Definition: SuperHirnParameters.h:48
double backgroundIntensityBinsIntens_
Definition: SuperHirnParameters.h:149
double getMs1PeakAreaTrResolution()
Definition: SuperHirnParameters.h:417
float intensityThreshold_
Definition: SuperHirnParameters.h:159
bool createFeatureElutionProfiles()
Definition: SuperHirnParameters.h:397
static SuperHirnParameters * instance_
Definition: SuperHirnParameters.h:144
double getTrTol()
Definition: SuperHirnParameters.h:382
bool initIsotopeDist_
Definition: SuperHirnParameters.h:209
double getMs1FeatureMergingTrTolerance()
Definition: SuperHirnParameters.h:427
double detectableIsotopeFactor_
Definition: SuperHirnParameters.h:185
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:47
double massTolPpm_
Definition: SuperHirnParameters.h:188
static bool haveInstance_
Definition: SuperHirnParameters.h:145
double percentageIntensityElutionBorderVariation_
Definition: SuperHirnParameters.h:205
double ms1TRResolution_
Definition: SuperHirnParameters.h:170
bool storeAllLowProbabilityMS2Scans()
Definition: SuperHirnParameters.h:392
double minTR_
Definition: SuperHirnParameters.h:152
double backgroundIntensityBinsMZ_
Definition: SuperHirnParameters.h:148
double getMassTolDa()
Definition: SuperHirnParameters.h:362
int minFeatureChrg_
Definition: SuperHirnParameters.h:156
double getMaxTR()
Definition: SuperHirnParameters.h:260
double getDetectableIsotopeFactor()
Definition: SuperHirnParameters.h:347
bool createFeatureElutionProfiles_
Definition: SuperHirnParameters.h:199
double mzTolPpm_
Definition: SuperHirnParameters.h:194
double initialTrTolerance_
Definition: SuperHirnParameters.h:203
double getIntensityCV()
Definition: SuperHirnParameters.h:352
double ppmToleranceForMZClustering_
Definition: SuperHirnParameters.h:206
SuperHirnParameters & operator=(const SuperHirnParameters &)
Definition: SuperHirnParameters.h:219
double intensityFloor_
Definition: SuperHirnParameters.h:191
double lowIntensityMSSignalThreshold_
Definition: SuperHirnParameters.h:208
double maxInterScanRetentionTimeDistance_
Definition: SuperHirnParameters.h:161
double getMinIntensity()
Definition: SuperHirnParameters.h:367
double getMaxInterScanRetentionTimeDistance()
Definition: SuperHirnParameters.h:295
int minNbClusterMembers_
Definition: SuperHirnParameters.h:162
double getIntensityFloor()
Definition: SuperHirnParameters.h:372
int backgroundIntensityBinsMinBinCount_
Definition: SuperHirnParameters.h:150
double trTol_
Definition: SuperHirnParameters.h:195
int maxFeatureChrg_
Definition: SuperHirnParameters.h:157
double getMaxFeatureMZ()
Definition: SuperHirnParameters.h:270
float getIntensityThreshold()
Definition: SuperHirnParameters.h:285
int getMinFeatureChrg()
Definition: SuperHirnParameters.h:275
bool storeAllLowProbabilityMS2Scans_
Definition: SuperHirnParameters.h:197
double maxTR_
Definition: SuperHirnParameters.h:153
double getBackgroundIntensityBinsTR()
Definition: SuperHirnParameters.h:235
int centroidWindowWidth_
Definition: SuperHirnParameters.h:172
double minFeatureMZ_
Definition: SuperHirnParameters.h:154
double getBackgroundIntensityBinsMZ()
Definition: SuperHirnParameters.h:240
bool ms1FeatureClustering_
Definition: SuperHirnParameters.h:200
int getMaxFeatureChrg()
Definition: SuperHirnParameters.h:280
double getMS1TRResolution()
Definition: SuperHirnParameters.h:332
double backgroundIntensityBinsTR_
Definition: SuperHirnParameters.h:147
A facade for various Superhirn FeatureFinder classes. Use FeatureFinderAlgorithmSH instead...
Definition: FeatureFinderAlgorithmSHCtrl.h:56
static SuperHirnParameters * instance()
Definition: SuperHirnParameters.h:224
bool centroidDataModus()
Definition: SuperHirnParameters.h:337
bool ms1FeatureClustering()
Definition: SuperHirnParameters.h:402
double peptideProbabilityThreshold_
Definition: SuperHirnParameters.h:196
double getBackgroundIntensityBinsIntens()
Definition: SuperHirnParameters.h:245
double toleranceMZ_
Definition: SuperHirnParameters.h:160
int getCentroidWindowWidth()
Definition: SuperHirnParameters.h:342
double getMzTolPpm()
Definition: SuperHirnParameters.h:377
double getPeptideProbabilityThreshold()
Definition: SuperHirnParameters.h:387
double minIntensity_
Definition: SuperHirnParameters.h:190
double ms1FeatureMergingTrTolerance_
Definition: SuperHirnParameters.h:204
bool isInitIsotopeDist()
Definition: SuperHirnParameters.h:407
std::map< int, float > scanTRIndex_
Definition: SuperHirnParameters.h:164
double massTolDa_
Definition: SuperHirnParameters.h:189
double intensityCV_
Definition: SuperHirnParameters.h:186
double getPpmToleranceForMZClustering()
Definition: SuperHirnParameters.h:437

OpenMS / TOPP release 2.3.0 Documentation generated on Tue Jan 9 2018 18:22:04 using doxygen 1.8.13