OpenMS
OpenSwathBase.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, Justin Sing$
6 // $Authors: Hannes Roest, Justin Sing$
7 // --------------------------------------------------------------------------
8 
9 #pragma once
10 
11 // Consumers
14 
15 // Files
23 
24 // Kernel and implementations
30 
31 // Helpers
35 
36 // Algorithms
42 
44 
45 #include <cassert>
46 #include <limits>
47 
49 
50 namespace OpenMS
51 {
52  class OPENMS_DLLAPI TOPPOpenSwathBase : public TOPPBase
53  {
54 
55  public:
58  {
61 
63  double ms2_mz_window_ppm{ -1.0 };
64 
66  double ms2_im_window{ -1.0 };
67 
69  double ms1_mz_window_ppm{ -1.0 };
70 
72  double ms1_im_window{ -1.0 };
73  };
74 
86  TOPPOpenSwathBase(String name, String description, bool official = true, const std::vector<Citation>& citations = {});
87 
89  ~TOPPOpenSwathBase() override;
90 
91  protected:
117  bool loadSwathFiles(const StringList& file_list,
118  boost::shared_ptr<ExperimentalSettings >& exp_meta,
119  std::vector< OpenSwath::SwathMap >& swath_maps,
120  const bool split_file,
121  const String& tmp,
122  const String& readoptions,
123  const String& swath_windows_file,
124  const double min_upper_edge_dist,
125  const bool force,
126  const bool sort_swath_maps,
127  const bool prm,
128  const bool pasef,
129  Interfaces::IMSDataConsumer* plugin_consumer = nullptr);
130 
144  void prepareChromOutput(Interfaces::IMSDataConsumer ** chromatogramConsumer,
145  const boost::shared_ptr<ExperimentalSettings>& exp_meta,
146  const OpenSwath::LightTargetedExperiment& transition_exp,
147  const String& out_chrom,
148  const UInt64 run_id);
149 
159  const String& tr_file,
160  const Param& tsv_reader_param);
161 
200  const OpenSwath::LightTargetedExperiment& irt_transitions,
201  std::vector< OpenSwath::SwathMap > & swath_maps,
202  double min_rsq,
203  double min_coverage,
204  const Param& feature_finder_param,
205  const ChromExtractParams& cp_irt,
206  const Param& irt_detection_param,
207  const Param& calibration_param,
208  Size debug_level,
209  bool pasef,
210  bool load_into_memory,
211  const String& irt_trafo_out,
212  const String& irt_mzml_out);
213 
214  private:
215  void loadSwathFiles_(const StringList& file_list,
216  const bool split_file,
217  const String& tmp,
218  const String& readoptions,
219  boost::shared_ptr<ExperimentalSettings > & exp_meta,
220  std::vector< OpenSwath::SwathMap > & swath_maps,
221  Interfaces::IMSDataConsumer* plugin_consumer);
222  }; // end TOPPOpenSwathBase
223 } // end NS OpenMS
The interface of a consumer of spectra and chromatograms.
Definition: IMSDataConsumer.h:46
Management and storage of parameters / INI files.
Definition: Param.h:44
A more convenient string class.
Definition: String.h:34
Base class for TOPP applications.
Definition: TOPPBase.h:122
Definition: OpenSwathBase.h:53
void prepareChromOutput(Interfaces::IMSDataConsumer **chromatogramConsumer, const boost::shared_ptr< ExperimentalSettings > &exp_meta, const OpenSwath::LightTargetedExperiment &transition_exp, const String &out_chrom, const UInt64 run_id)
Prepare chromatogram output.
TOPPOpenSwathBase(String name, String description, bool official=true, const std::vector< Citation > &citations={})
Constructor.
CalibrationResult performCalibration(String trafo_in, const OpenSwath::LightTargetedExperiment &irt_transitions, std::vector< OpenSwath::SwathMap > &swath_maps, double min_rsq, double min_coverage, const Param &feature_finder_param, const ChromExtractParams &cp_irt, const Param &irt_detection_param, const Param &calibration_param, Size debug_level, bool pasef, bool load_into_memory, const String &irt_trafo_out, const String &irt_mzml_out)
Perform retention time and m/z calibration.
OpenMS::TransformationDescription rt_trafo
RT normalization transformation (fitted Trafo)
Definition: OpenSwathBase.h:60
~TOPPOpenSwathBase() override
Destructor.
OpenSwath::LightTargetedExperiment loadTransitionList(const FileTypes::Type &tr_type, const String &tr_file, const Param &tsv_reader_param)
Loads transition list from TraML / TSV or PQP.
bool loadSwathFiles(const StringList &file_list, boost::shared_ptr< ExperimentalSettings > &exp_meta, std::vector< OpenSwath::SwathMap > &swath_maps, const bool split_file, const String &tmp, const String &readoptions, const String &swath_windows_file, const double min_upper_edge_dist, const bool force, const bool sort_swath_maps, const bool prm, const bool pasef, Interfaces::IMSDataConsumer *plugin_consumer=nullptr)
Load the DIA files into internal data structures.
void loadSwathFiles_(const StringList &file_list, const bool split_file, const String &tmp, const String &readoptions, boost::shared_ptr< ExperimentalSettings > &exp_meta, std::vector< OpenSwath::SwathMap > &swath_maps, Interfaces::IMSDataConsumer *plugin_consumer)
Outputs of RT, m/z, IM calibration.
Definition: OpenSwathBase.h:58
Generic description of a coordinate transformation.
Definition: TransformationDescription.h:37
uint64_t UInt64
Unsigned integer type (64bit)
Definition: Types.h:47
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:97
std::vector< String > StringList
Vector of String.
Definition: ListUtils.h:44
Main OpenMS namespace.
Definition: openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/ISpectrumAccess.h:19
ChromatogramExtractor parameters.
Definition: OpenSwathWorkflow.h:56
Type
Actual file types enum.
Definition: FileTypes.h:31
Definition: TransitionExperiment.h:185