OpenMS
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 
16 namespace OpenMS
17 {
21  class OPENMS_DLLAPI PeakFileOptions
22  {
23 public:
32 
34 
35  void setMetadataOnly(bool only);
38  bool getMetadataOnly() const;
39 
41  void setForceMQCompatability(bool forceMQ);
44 
46  void setForceTPPCompatability(bool forceTPP);
50 
52 
53  void setWriteSupplementalData(bool write);
58 
60 
61  void setRTRange(const DRange<1> & range);
64  bool hasRTRange() const;
66  const DRange<1> & getRTRange() const;
68 
70 
71  void setMZRange(const DRange<1> & range);
74  bool hasMZRange() const;
76  const DRange<1> & getMZRange() const;
78 
80 
81  void setIntensityRange(const DRange<1> & range);
84  bool hasIntensityRange() const;
86  const DRange<1> & getIntensityRange() const;
88 
98  void setMSLevels(const std::vector<Int> & levels);
100  void addMSLevel(int level);
104  bool hasMSLevels() const;
106  bool containsMSLevel(int level) const;
108  const std::vector<Int> & getMSLevels() const;
110 
117  //Sets if data should be compressed when writing
118  void setCompression(bool compress);
120  bool getCompression() const;
122 
125  void setAlwaysAppendData(bool only);
127  bool getAlwaysAppendData() const;
129  void setFillData(bool only);
131  bool getFillData() const;
133  void setSkipXMLChecks(bool only);
135  bool getSkipXMLChecks() const;
136 
139  void setSortSpectraByMZ(bool sort);
141  bool getSortSpectraByMZ() const;
143  void setSortChromatogramsByRT(bool sort);
146 
156  //Sets if mz-data and rt-data should be stored with 32bit or 64bit precision
157  void setMz32Bit(bool mz_32_bit);
158  //returns @c true, if mz-data and rt-data should be stored with 32bit precision
159  bool getMz32Bit() const;
160  //Sets if intensity data should be stored with 32bit or 64bit precision
161  void setIntensity32Bit(bool int_32_bit);
162  //returns @c true, if intensity data should be stored with 32bit precision
163  bool getIntensity32Bit() const;
165 
167  bool getWriteIndex() const;
169  void setWriteIndex(bool write_index);
170 
183 
199 
202 
204  void setPrecursorMZSelectedIon(bool choice);
205 
207  bool hasFilters() const;
208 
209 private:
222  std::vector<Int> ms_levels_;
235  };
236 
237 } // namespace OpenMS
238 
Options for loading files containing peak data.
Definition: PeakFileOptions.h:22
const DRange< 1 > & getMZRange() const
returns the MZ range
const DRange< 1 > & getIntensityRange() const
returns the intensity range
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
bool fill_data_
Definition: PeakFileOptions.h:228
bool containsMSLevel(int level) const
returns true, if MS level level has been set
bool getIntensity32Bit() const
MSNumpressCoder::NumpressConfig getNumpressConfigurationFloatDataArray() const
Set numpress configuration options for float data arrays.
bool zlib_compression_
Definition: PeakFileOptions.h:223
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)
bool getFillData() const
returns whether to fill the actual data into the container (spectrum/chromatogram)
Size getMaxDataPoolSize() const
Get maximal size of the data pool.
bool getMetadataOnly() const
returns whether or not to load only meta data
void setPrecursorMZSelectedIon(bool choice)
[mzML only!] Set whether to use the "selected ion m/z" value as the precursor m/z value (alternative:...
bool int_32_bit_
Definition: PeakFileOptions.h:218
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?
bool write_index_
Definition: PeakFileOptions.h:229
bool hasMZRange() const
returns true if an MZ range has been set
bool has_intensity_range_
Definition: PeakFileOptions.h:216
void setSortChromatogramsByRT(bool sort)
sets whether or not to sort peaks in chromatograms
MSNumpressCoder::NumpressConfig getNumpressConfigurationIntensity() const
Set numpress configuration options for intensity dimension.
MSNumpressCoder::NumpressConfig getNumpressConfigurationMassTime() const
Set numpress configuration options for m/z or rt dimension.
std::vector< Int > ms_levels_
Definition: PeakFileOptions.h:222
bool hasMSLevels() const
returns true, if MS levels have been set
bool metadata_only_
Definition: PeakFileOptions.h:210
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 mz_32_bit_
Definition: PeakFileOptions.h:217
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...
MSNumpressCoder::NumpressConfig np_config_int_
Definition: PeakFileOptions.h:231
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
MSNumpressCoder::NumpressConfig np_config_mz_
Definition: PeakFileOptions.h:230
void setIntensity32Bit(bool int_32_bit)
bool sort_spectra_by_mz_
Definition: PeakFileOptions.h:226
void setNumpressConfigurationMassTime(MSNumpressCoder::NumpressConfig config)
Get numpress configuration options for m/z or rt dimension.
bool always_append_data_
Definition: PeakFileOptions.h:224
void setMz32Bit(bool mz_32_bit)
const std::vector< Int > & getMSLevels() const
returns the set MS levels
bool hasIntensityRange() const
returns true if an intensity range has been set
PeakFileOptions & operator=(const PeakFileOptions &)=default
Copy assignment.
DRange< 1 > mz_range_
Definition: PeakFileOptions.h:220
bool sort_chromatograms_by_rt_
Definition: PeakFileOptions.h:227
DRange< 1 > rt_range_
Definition: PeakFileOptions.h:219
void setNumpressConfigurationFloatDataArray(MSNumpressCoder::NumpressConfig config)
Get numpress configuration options for float data arrays.
bool write_supplemental_data_
Definition: PeakFileOptions.h:213
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 precursor_mz_selected_ion_
Definition: PeakFileOptions.h:234
bool getSortChromatogramsByRT() const
gets whether or not peaks in chromatograms should be sorted
MSNumpressCoder::NumpressConfig np_config_fda_
Definition: PeakFileOptions.h:232
void setSortSpectraByMZ(bool sort)
void setSkipXMLChecks(bool only)
sets whether to skip some XML checks and be fast instead
~PeakFileOptions()
Destructor.
bool has_rt_range_
Definition: PeakFileOptions.h:214
bool force_tpp_compatibility_
for mzML-writing only: work around some bugs in TPP file parsers
Definition: PeakFileOptions.h:212
Size maximal_data_pool_size_
Definition: PeakFileOptions.h:233
const DRange< 1 > & getRTRange() const
returns the RT range
bool getSkipXMLChecks() const
returns whether to skip some XML checks and be fast instead
DRange< 1 > intensity_range_
Definition: PeakFileOptions.h:221
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 skip_xml_checks_
Definition: PeakFileOptions.h:225
bool force_maxquant_compatibility_
for mzXML-writing only: set a fixed vendor (Thermo Scientific), mass analyzer (FTMS)
Definition: PeakFileOptions.h:211
void setAlwaysAppendData(bool only)
bool getForceTPPCompatability() const
[mzML only!] Whether to skip writing the <isolationWindow> tag so that TPP finds the correct precurso...
bool has_mz_range_
Definition: PeakFileOptions.h:215
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