OpenMS
Loading...
Searching...
No Matches
PeakFileOptions.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: Timo Sachsenberg $
6// $Authors: Marc Sturm $
7// --------------------------------------------------------------------------
8
9#pragma once
10
13
14#include <vector>
15
16namespace OpenMS
17{
21 class OPENMS_DLLAPI PeakFileOptions
22 {
23public:
32
34
35
36 void setMetadataOnly(bool only);
38 bool getMetadataOnly() const;
39
41 void setForceMQCompatability(bool forceMQ);
44
46 void setForceTPPCompatability(bool forceTPP);
50
52
53
54 void setWriteSupplementalData(bool write);
58
60
61
62 void setRTRange(const DRange<1> & range);
64 bool hasRTRange() const;
66 const DRange<1> & getRTRange() const;
68
70
71
72 void setMZRange(const DRange<1> & range);
74 bool hasMZRange() const;
76 const DRange<1> & getMZRange() const;
78
80
81
82 void setIntensityRange(const DRange<1> & range);
84 bool hasIntensityRange() const;
88
90
91
92 void setPrecursorMZRange(const DRange<1> & range);
94 bool hasPrecursorMZRange() const;
98
108 void setMSLevels(const std::vector<Int> & levels);
110 void addMSLevel(int level);
114 bool hasMSLevels() const;
116 bool containsMSLevel(int level) const;
118 const std::vector<Int> & getMSLevels() const;
120
127 //Sets if data should be compressed when writing
128 void setCompression(bool compress);
130 bool getCompression() const;
132
135 void setAlwaysAppendData(bool only);
139 void setFillData(bool only);
141 bool getFillData() const;
143 void setSkipXMLChecks(bool only);
145 bool getSkipXMLChecks() const;
146
149 void setSortSpectraByMZ(bool sort);
151 bool getSortSpectraByMZ() const;
156
166 //Sets if mz-data and rt-data should be stored with 32bit or 64bit precision
167 void setMz32Bit(bool mz_32_bit);
168 //returns @c true, if mz-data and rt-data should be stored with 32bit precision
169 bool getMz32Bit() const;
170 //Sets if intensity data should be stored with 32bit or 64bit precision
171 void setIntensity32Bit(bool int_32_bit);
172 //returns @c true, if intensity data should be stored with 32bit precision
173 bool getIntensity32Bit() const;
175
177 bool getWriteIndex() const;
179 void setWriteIndex(bool write_index);
180
193
209
212
214 void setPrecursorMZSelectedIon(bool choice);
215
217 bool hasFilters() const;
218
219 void setSkipChromatograms(bool skip);
221
222private:
223 bool metadata_only_ = false;
224 bool force_maxquant_compatibility_ = false;
225 bool force_tpp_compatibility_ = false;
226 bool write_supplemental_data_ = true;
227 bool has_rt_range_ = false;
228 bool has_mz_range_ = false;
229 bool has_intensity_range_ = false;
230 bool has_precursor_mz_range_ = false;
231 bool mz_32_bit_ = false;
232 bool int_32_bit_ = true;
233 DRange<1> rt_range_{};
234 DRange<1> mz_range_{};
235 DRange<1> intensity_range_{};
236 DRange<1> precursor_mz_range_{};
237 std::vector<Int> ms_levels_{};
238 bool zlib_compression_ = false;
239 bool always_append_data_ = false;
240 bool skip_xml_checks_ = false;
241 bool sort_spectra_by_mz_ = true;
242 bool sort_chromatograms_by_rt_ = true;
243 bool fill_data_ = true;
244 bool write_index_ = true;
248 Size maximal_data_pool_size_ = 100;
249 bool precursor_mz_selected_ion_ = true;
250 bool skip_chromatograms_ = false;
251 };
252
253} // namespace OpenMS
254
A D-dimensional half-open interval.
Definition DRange.h:39
Options for loading files containing peak data.
Definition PeakFileOptions.h:22
void setNumpressConfigurationIntensity(MSNumpressCoder::NumpressConfig config)
Get numpress configuration options for intensity dimension.
bool getWriteSupplementalData() const
returns whether or not to write supplemental peak data in MzData files
bool hasRTRange() const
returns true if an RT range has been set
const std::vector< Int > & getMSLevels() const
returns the set MS levels
bool containsMSLevel(int level) const
returns true, if MS level level has been set
bool getIntensity32Bit() const
const DRange< 1 > & getIntensityRange() const
returns the intensity range
MSNumpressCoder::NumpressConfig getNumpressConfigurationFloatDataArray() const
Set numpress configuration options for float data arrays.
PeakFileOptions(const PeakFileOptions &)
Copy constructor.
bool getAlwaysAppendData() const
returns whether or not to always append the data to the given map (even if a consumer is given)
void setRTRange(const DRange< 1 > &range)
restricts the range of RT values for peaks to load
bool getFillData() const
returns whether to fill the actual data into the container (spectrum/chromatogram) or leave container...
Size getMaxDataPoolSize() const
Get maximal size of the data pool.
bool getMetadataOnly() const
returns whether or not to load only meta data
void setPrecursorMZRange(const DRange< 1 > &range)
restricts the range of precursor m/z values for MS2+ spectra to load
void setPrecursorMZSelectedIon(bool choice)
[mzML only!] Set whether to use the "selected ion m/z" value as the precursor m/z value (alternative:...
bool getCompression() const
returns true, if data should be compressed when writing
void setCompression(bool compress)
bool hasFilters() const
do these options skip spectra or chromatograms due to RT or MSLevel filters?
const DRange< 1 > & getPrecursorMZRange() const
returns the precursor m/z range
PeakFileOptions & operator=(const PeakFileOptions &)=default
Copy assignment.
bool hasMZRange() const
returns true if an MZ range has been set
void setSortChromatogramsByRT(bool sort)
sets whether or not to sort peaks in chromatograms
MSNumpressCoder::NumpressConfig getNumpressConfigurationIntensity() const
Set numpress configuration options for intensity dimension.
void setSkipChromatograms(bool skip)
MSNumpressCoder::NumpressConfig getNumpressConfigurationMassTime() const
Set numpress configuration options for m/z or rt dimension.
bool hasMSLevels() const
returns true, if MS levels have been set
bool getWriteIndex() const
Whether to write an index at the end of the file (e.g. indexedmzML file format)
void setWriteIndex(bool write_index)
Whether to write an index at the end of the file (e.g. indexedmzML file format)
bool getForceMQCompatability() const
[mzXML only!] Whether to write a scan-index and meta data to indicate a Thermo FTMS/ITMS instrument (...
bool getPrecursorMZSelectedIon() const
[mzML only!] Whether to use the "selected ion m/z" value as the precursor m/z value (alternative: use...
void setMSLevels(const std::vector< Int > &levels)
sets the desired MS levels for peaks to load
void setFillData(bool only)
sets whether to fill the actual data into the container (spectrum/chromatogram)
void addMSLevel(int level)
adds a desired MS level for peaks to load
void setIntensity32Bit(bool int_32_bit)
void setNumpressConfigurationMassTime(MSNumpressCoder::NumpressConfig config)
Get numpress configuration options for m/z or rt dimension.
void setMz32Bit(bool mz_32_bit)
bool hasIntensityRange() const
returns true if an intensity range has been set
const DRange< 1 > & getMZRange() const
returns the MZ range
const DRange< 1 > & getRTRange() const
returns the RT range
void setNumpressConfigurationFloatDataArray(MSNumpressCoder::NumpressConfig config)
Get numpress configuration options for float data arrays.
void setWriteSupplementalData(bool write)
sets whether or not to write supplemental peak data in MzData files
void clearMSLevels()
clears the MS levels
PeakFileOptions()
Default constructor.
void setForceMQCompatability(bool forceMQ)
[mzXML only!] Whether to write a scan-index and meta data to indicate a Thermo FTMS/ITMS instrument (...
bool getSkipChromatograms() const
void setMetadataOnly(bool only)
sets whether or not to load only meta data
bool getSortChromatogramsByRT() const
gets whether or not peaks in chromatograms should be sorted
void setIntensityRange(const DRange< 1 > &range)
restricts the range of intensity values for peaks to load
void setSortSpectraByMZ(bool sort)
void setSkipXMLChecks(bool only)
sets whether to skip some XML checks and be fast instead
void setMZRange(const DRange< 1 > &range)
restricts the range of MZ values for peaks to load
~PeakFileOptions()
Destructor.
bool getSkipXMLChecks() const
returns whether to skip some XML checks and be fast instead
void setMaxDataPoolSize(Size size)
Set maximal size of the data pool.
void setForceTPPCompatability(bool forceTPP)
[mzML only!] Whether to skip writing the <isolationWindow> tag so that TPP finds the correct precurso...
bool hasPrecursorMZRange() const
returns true if a precursor m/z range has been set
void setAlwaysAppendData(bool only)
bool getForceTPPCompatability() const
[mzML only!] Whether to skip writing the <isolationWindow> tag so that TPP finds the correct precurso...
bool getSortSpectraByMZ() const
gets whether or not peaks in spectra should be sorted
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition Types.h:97
Main OpenMS namespace.
Definition openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/ISpectrumAccess.h:19
Configuration class for MSNumpress.
Definition MSNumpressCoder.h:63