OpenMS
OpenSwathWorkflowSonar Class Reference

Execute all steps in an OpenEcho analysis (OpenSwath for SONAR data) More...

#include <OpenMS/ANALYSIS/OPENSWATH/OpenSwathWorkflow.h>

Inheritance diagram for OpenSwathWorkflowSonar:
[legend]
Collaboration diagram for OpenSwathWorkflowSonar:
[legend]

Public Member Functions

 OpenSwathWorkflowSonar (bool use_ms1_traces)
 
void performExtractionSonar (const std::vector< OpenSwath::SwathMap > &swath_maps, const TransformationDescription &trafo, const ChromExtractParams &cp, const ChromExtractParams &cp_ms1, const Param &feature_finder_param, const OpenSwath::LightTargetedExperiment &transition_exp, FeatureMap &out_featureFile, bool store_features, OpenSwathTSVWriter &tsv_writer, OpenSwathOSWWriter &osw_writer, Interfaces::IMSDataConsumer *chromConsumer, int batchSize, bool load_into_memory)
 Execute OpenSWATH analysis on a set of SONAR SwathMaps and transitions. More...
 
void computeSonarWindows_ (const std::vector< OpenSwath::SwathMap > &swath_maps, double &sonar_winsize, double &sonar_start, double &sonar_end, int &sonar_total_win)
 Compute start, end and total number of (virtual) SONAR windows. More...
 
void performSonarExtraction_ (const std::vector< OpenSwath::SwathMap > &used_maps, const std::vector< ChromatogramExtractor::ExtractionCoordinates > &coordinates, std::vector< OpenSwath::ChromatogramPtr > &chrom_list, const ChromExtractParams &cp)
 Perform extraction from multiple SONAR windows. More...
 
OpenSwath::ChromatogramPtr addChromatograms (OpenSwath::ChromatogramPtr base_chrom, OpenSwath::ChromatogramPtr newchrom)
 Add two chromatograms. More...
 
- Public Member Functions inherited from OpenSwathWorkflow
 OpenSwathWorkflow (bool use_ms1_traces, bool use_ms1_ion_mobility, bool prm, bool pasef, int threads_outer_loop)
 Constructor. More...
 
void performExtraction (const std::vector< OpenSwath::SwathMap > &swath_maps, const TransformationDescription &rt_trafo, const ChromExtractParams &chromatogram_extraction_params, const ChromExtractParams &ms1_chromatogram_extraction_params, const Param &feature_finder_param, const OpenSwath::LightTargetedExperiment &assay_library, FeatureMap &result_featureFile, bool store_features_in_featureFile, OpenSwathTSVWriter &result_tsv, OpenSwathOSWWriter &result_osw, Interfaces::IMSDataConsumer *result_chromatograms, int batchSize, int ms1_isotopes, bool load_into_memory)
 Execute OpenSWATH analysis on a set of SwathMaps and transitions. More...
 
- Public Member Functions inherited from ProgressLogger
 ProgressLogger ()
 Constructor. More...
 
virtual ~ProgressLogger ()
 Destructor. More...
 
 ProgressLogger (const ProgressLogger &other)
 Copy constructor. More...
 
ProgressLoggeroperator= (const ProgressLogger &other)
 Assignment Operator. More...
 
void setLogType (LogType type) const
 Sets the progress log that should be used. The default type is NONE! More...
 
LogType getLogType () const
 Returns the type of progress log being used. More...
 
void setLogger (ProgressLoggerImpl *logger)
 Sets the logger to be used for progress logging. More...
 
void startProgress (SignedSize begin, SignedSize end, const String &label) const
 Initializes the progress display. More...
 
void setProgress (SignedSize value) const
 Sets the current progress. More...
 
void endProgress (UInt64 bytes_processed=0) const
 
void nextProgress () const
 increment progress by 1 (according to range begin-end) More...
 

Additional Inherited Members

- Public Types inherited from ProgressLogger
enum  LogType { CMD , GUI , NONE }
 Possible log types. More...
 
- Protected Member Functions inherited from OpenSwathWorkflow
void writeOutFeaturesAndChroms_ (std::vector< OpenMS::MSChromatogram > &chromatograms, std::vector< MSChromatogram > &ms1_chromatograms, const FeatureMap &featureFile, FeatureMap &out_featureFile, bool store_features, Interfaces::IMSDataConsumer *chromConsumer)
 Write output features and chromatograms. More...
 
void scoreAllChromatograms_ (const std::vector< OpenMS::MSChromatogram > &ms2_chromatograms, const std::vector< OpenMS::MSChromatogram > &ms1_chromatograms, const std::vector< OpenSwath::SwathMap > &swath_maps, const OpenSwath::LightTargetedExperiment &transition_exp, const Param &feature_finder_param, const TransformationDescription &trafo, const double rt_extraction_window, FeatureMap &output, OpenSwathTSVWriter &tsv_writer, OpenSwathOSWWriter &osw_writer, int nr_ms1_isotopes=0, bool ms1only=false) const
 Perform scoring on a set of chromatograms. More...
 
void selectCompoundsForBatch_ (const OpenSwath::LightTargetedExperiment &transition_exp_used_all, OpenSwath::LightTargetedExperiment &transition_exp_used, int batch_size, size_t batch_idx)
 Select which compounds to analyze in the next batch (and copy to output) More...
 
void copyBatchTransitions_ (const std::vector< OpenSwath::LightCompound > &used_compounds, const std::vector< OpenSwath::LightTransition > &all_transitions, std::vector< OpenSwath::LightTransition > &output)
 Helper function for selectCompoundsForBatch_() More...
 
- Protected Member Functions inherited from OpenSwathWorkflowBase
 OpenSwathWorkflowBase ()
 Default constructor. More...
 
 OpenSwathWorkflowBase (bool use_ms1_traces, bool use_ms1_ion_mobility, bool prm, bool pasef, int threads_outer_loop)
 Constructor. More...
 
void MS1Extraction_ (const OpenSwath::SpectrumAccessPtr &ms1_map, const std::vector< OpenSwath::SwathMap > &swath_maps, std::vector< MSChromatogram > &ms1_chromatograms, const ChromExtractParams &cp, const OpenSwath::LightTargetedExperiment &transition_exp, const TransformationDescription &trafo_inverse, bool ms1_only=false, int ms1_isotopes=0)
 Perform MS1 extraction and store result in ms1_chromatograms. More...
 
void prepareExtractionCoordinates_ (std::vector< OpenSwath::ChromatogramPtr > &chrom_list, std::vector< ChromatogramExtractorAlgorithm::ExtractionCoordinates > &coordinates, const OpenSwath::LightTargetedExperiment &transition_exp_used, const TransformationDescription &trafo_inverse, const ChromExtractParams &cp, const bool ms1=false, const int ms1_isotopes=-1) const
 Function to prepare extraction coordinates that also correctly handles RT transformations. More...
 
- Protected Attributes inherited from OpenSwathWorkflowBase
OpenSwath::SpectrumAccessPtr ms1_map_ = nullptr
 Spectrum Access to the MS1 map (note that this is not threadsafe!) More...
 
bool use_ms1_traces_
 Whether to use the MS1 traces. More...
 
bool use_ms1_ion_mobility_
 Whether to use ion mobility extraction on MS1 traces. More...
 
bool prm_
 Whether data is acquired in targeted DIA (e.g. PRM mode) with potentially overlapping windows. More...
 
bool pasef_
 Whether data is diaPASEF data. More...
 
int threads_outer_loop_
 How many threads should be used for the outer loop. More...
 
- Protected Attributes inherited from ProgressLogger
LogType type_
 
time_t last_invoke_
 
ProgressLoggerImplcurrent_logger_
 
- Static Protected Attributes inherited from ProgressLogger
static int recursion_depth_
 

Detailed Description

Execute all steps in an OpenEcho analysis (OpenSwath for SONAR data)

The workflow will perform a complete OpenSWATH analysis, using scanning SWATH data (SONAR data) instead of regular data. In this case, each fragment ion may appear in multiple SWATH windows and thus needs to be extracted from multiple maps.

The overall execution flow in this class is as follows (see performExtractionSonar() function)

Constructor & Destructor Documentation

◆ OpenSwathWorkflowSonar()

OpenSwathWorkflowSonar ( bool  use_ms1_traces)
inlineexplicit

Member Function Documentation

◆ addChromatograms()

OpenSwath::ChromatogramPtr addChromatograms ( OpenSwath::ChromatogramPtr  base_chrom,
OpenSwath::ChromatogramPtr  newchrom 
)

Add two chromatograms.

Parameters
base_chromThe base chromatogram to which we will add intensity
newchromThe chromatogram to be added

◆ computeSonarWindows_()

void computeSonarWindows_ ( const std::vector< OpenSwath::SwathMap > &  swath_maps,
double &  sonar_winsize,
double &  sonar_start,
double &  sonar_end,
int &  sonar_total_win 
)

Compute start, end and total number of (virtual) SONAR windows.

◆ performExtractionSonar()

void performExtractionSonar ( const std::vector< OpenSwath::SwathMap > &  swath_maps,
const TransformationDescription trafo,
const ChromExtractParams cp,
const ChromExtractParams cp_ms1,
const Param feature_finder_param,
const OpenSwath::LightTargetedExperiment transition_exp,
FeatureMap out_featureFile,
bool  store_features,
OpenSwathTSVWriter tsv_writer,
OpenSwathOSWWriter osw_writer,
Interfaces::IMSDataConsumer chromConsumer,
int  batchSize,
bool  load_into_memory 
)

Execute OpenSWATH analysis on a set of SONAR SwathMaps and transitions.

See OpenSwathWorkflowSonar class for a detailed description of this function.

Note
Given that these are scanning SWATH maps, for each transition multiple maps will be used for chromatogram extraction and scoring.
Parameters
swath_mapsThe raw data, expected to be scanning SWATH maps (SONAR)
trafoTransformation description (translating this runs' RT to normalized RT space)
cpParameter set for the chromatogram extraction
cp_ms1Parameter set for the chromatogram extraction in MS1
feature_finder_paramParameter set for the feature finding in chromatographic dimension
transition_expThe set of assays to be extracted and scored
out_featureFileOutput feature map to store identified features
store_featuresWhether features should be appended to the output feature map (if this is false, then out_featureFile will be empty)
tsv_writerTSV Writer object to store identified features in csv format (set store_features to false if using this option)
osw_writerOSW Writer object to store identified features in SQLite format (set store_features to false if using this option)
chromConsumerChromatogram consumer object to store the extracted chromatograms
batchSizeSize of the batches which should be extracted and scored
load_into_memoryWhether to cache the current SONAR map(s) in memory

◆ performSonarExtraction_()

void performSonarExtraction_ ( const std::vector< OpenSwath::SwathMap > &  used_maps,
const std::vector< ChromatogramExtractor::ExtractionCoordinates > &  coordinates,
std::vector< OpenSwath::ChromatogramPtr > &  chrom_list,
const ChromExtractParams cp 
)

Perform extraction from multiple SONAR windows.