35 #ifndef OPENMS_KERNEL_MSSPECTRUM_H 36 #define OPENMS_KERNEL_MSSPECTRUM_H 68 private std::vector<Peak1D>,
75 struct OPENMS_DLLAPI
RTLess :
public std::binary_function<MSSpectrum, MSSpectrum, bool>
101 typedef typename ContainerType::iterator
Iterator;
113 using ContainerType::operator[];
114 using ContainerType::begin;
115 using ContainerType::rbegin;
116 using ContainerType::end;
117 using ContainerType::rend;
118 using ContainerType::resize;
119 using ContainerType::size;
120 using ContainerType::push_back;
121 using ContainerType::pop_back;
122 using ContainerType::empty;
123 using ContainerType::front;
124 using ContainerType::back;
125 using ContainerType::reserve;
126 using ContainerType::insert;
127 using ContainerType::erase;
128 using ContainerType::swap;
130 using typename ContainerType::iterator;
131 using typename ContainerType::const_iterator;
132 using typename ContainerType::size_type;
133 using typename ContainerType::value_type;
134 using typename ContainerType::reference;
135 using typename ContainerType::const_reference;
136 using typename ContainerType::pointer;
137 using typename ContainerType::difference_type;
167 virtual void updateRanges();
172 double getRT()
const;
175 void setRT(
double rt);
185 double getDriftTime()
const;
190 void setDriftTime(
double dt);
197 UInt getMSLevel()
const;
200 void setMSLevel(
UInt ms_level);
203 const String& getName()
const;
206 void setName(
const String& name);
223 const FloatDataArrays& getFloatDataArrays()
const;
229 return float_data_arrays_;
233 void setFloatDataArrays(
const FloatDataArrays& fda);
236 const StringDataArrays& getStringDataArrays()
const;
239 StringDataArrays& getStringDataArrays();
242 void setStringDataArrays(
const StringDataArrays& sda);
245 const IntegerDataArrays& getIntegerDataArrays()
const;
248 IntegerDataArrays& getIntegerDataArrays();
251 void setIntegerDataArrays(
const IntegerDataArrays& ida);
256 return *std::find_if(integer_data_arrays_.begin(), integer_data_arrays_.end(),
257 [&name](
const IntegerDataArray& da) {
return da.getName() == name; } );
263 return *std::find_if(string_data_arrays_.begin(), string_data_arrays_.end(),
264 [&name](
const StringDataArray& da) {
return da.getName() == name; } );
270 return *std::find_if(float_data_arrays_.begin(), float_data_arrays_.end(),
271 [&name](
const FloatDataArray& da) {
return da.getName() == name; } );
277 return *std::find_if(integer_data_arrays_.begin(), integer_data_arrays_.end(),
278 [&name](
const IntegerDataArray& da) {
return da.getName() == name; } );
284 return *std::find_if(string_data_arrays_.begin(), string_data_arrays_.end(),
285 [&name](
const StringDataArray& da) {
return da.getName() == name; } );
291 return *std::find_if(float_data_arrays_.begin(), float_data_arrays_.end(),
292 [&name](
const FloatDataArray& da) {
return da.getName() == name; } );
304 void sortByIntensity(
bool reverse =
false);
311 void sortByPosition();
314 bool isSorted()
const;
330 Size findNearest(CoordinateType mz)
const;
343 Int findNearest(CoordinateType mz, CoordinateType tolerance)
const;
358 Int findNearest(CoordinateType mz, CoordinateType tolerance_left, CoordinateType tolerance_right)
const;
365 Iterator MZBegin(CoordinateType mz);
372 Iterator MZBegin(Iterator begin, CoordinateType mz, Iterator end);
379 Iterator MZEnd(CoordinateType mz);
386 Iterator MZEnd(Iterator begin, CoordinateType mz, Iterator end);
393 ConstIterator MZBegin(CoordinateType mz)
const;
400 ConstIterator MZBegin(ConstIterator begin, CoordinateType mz, ConstIterator end)
const;
407 ConstIterator MZEnd(CoordinateType mz)
const;
414 ConstIterator MZEnd(ConstIterator begin, CoordinateType mz, ConstIterator end)
const;
424 void clear(
bool clear_meta_data);
433 MSSpectrum& select(
const std::vector<Size>& indices);
461 os <<
"-- MSSPECTRUM BEGIN --" << std::endl;
464 os << static_cast<const SpectrumSettings&>(spec);
469 os << *it << std::endl;
472 os <<
"-- MSSPECTRUM END --" << std::endl;
478 #endif // OPENMS_KERNEL_MSSPECTRUM_H PeakType::CoordinateType CoordinateType
Coordinate (m/z) type.
Definition: MSSpectrum.h:85
A more convenient string class.
Definition: String.h:57
IntegerDataArrays integer_data_arrays_
Integer data arrays.
Definition: MSSpectrum.h:456
FloatDataArray & getFloatDataArrayByName(String name)
Returns a mutable reference to the first float meta data array with the given name.
Definition: MSSpectrum.h:268
StringDataArrays string_data_arrays_
String data arrays.
Definition: MSSpectrum.h:453
Comparator for the retention time.
Definition: MSSpectrum.h:75
ContainerType::reverse_iterator ReverseIterator
Mutable reverse iterator.
Definition: MSSpectrum.h:106
unsigned int UInt
Unsigned integer type.
Definition: Types.h:95
Peak2D PeakType
Definition: MassTrace.h:48
ContainerType::const_iterator ConstIterator
Non-mutable iterator.
Definition: MSSpectrum.h:104
OpenMS::DataArrays::FloatDataArray FloatDataArray
Float data array vector type.
Definition: MSSpectrum.h:89
bool operator==(_Iterator< _Val, _Ref, _Ptr > const &, _Iterator< _Val, _Ref, _Ptr > const &)
Definition: KDTree.h:806
Representation of 1D spectrum settings.
Definition: SpectrumSettings.h:64
String name_
Name.
Definition: MSSpectrum.h:447
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:47
ContainerType::iterator Iterator
Mutable iterator.
Definition: MSSpectrum.h:102
const FloatDataArray & getFloatDataArrayByName(String name) const
Returns a const reference to the first float meta data array with the given name. ...
Definition: MSSpectrum.h:289
std::vector< FloatDataArray > FloatDataArrays
Definition: MSSpectrum.h:90
Float data array class.
Definition: DataArrays.h:46
Integer data array class.
Definition: DataArrays.h:52
FloatDataArrays float_data_arrays_
Float data arrays.
Definition: MSSpectrum.h:450
The representation of a 1D spectrum.
Definition: MSSpectrum.h:67
bool operator!=(const MSSpectrum &rhs) const
Equality operator.
Definition: MSSpectrum.h:161
A 1-dimensional raw data point or peak.
Definition: Peak1D.h:55
std::ostream & operator<<(std::ostream &os, const AccurateMassSearchResult &amsr)
std::vector< StringDataArray > StringDataArrays
Definition: MSSpectrum.h:93
FloatDataArrays & getFloatDataArrays()
Returns a mutable reference to the float meta data arrays.
Definition: MSSpectrum.h:227
std::vector< PeakType > ContainerType
Spectrum base type.
Definition: MSSpectrum.h:87
OpenMS::DataArrays::StringDataArray StringDataArray
String data array vector type.
Definition: MSSpectrum.h:92
std::vector< IntegerDataArray > IntegerDataArrays
Definition: MSSpectrum.h:96
StringDataArray & getStringDataArrayByName(String name)
Returns a mutable reference to the first string meta data array with the given name.
Definition: MSSpectrum.h:261
IntegerDataArray & getIntegerDataArrayByName(String name)
Returns a mutable reference to the first integer meta data array with the given name.
Definition: MSSpectrum.h:254
double retention_time_
Retention time.
Definition: MSSpectrum.h:438
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:128
UInt ms_level_
MS level.
Definition: MSSpectrum.h:444
OpenMS::DataArrays::IntegerDataArray IntegerDataArray
Integer data array vector type.
Definition: MSSpectrum.h:95
const IntegerDataArray & getIntegerDataArrayByName(String name) const
Returns a const reference to the first integer meta data array with the given name.
Definition: MSSpectrum.h:275
double drift_time_
Drift time.
Definition: MSSpectrum.h:441
const StringDataArray & getStringDataArrayByName(String name) const
Returns a const reference to the first string meta data array with the given name.
Definition: MSSpectrum.h:282
String data array class.
Definition: DataArrays.h:58
Handles the management of a position and intensity range.
Definition: RangeManager.h:48
int Int
Signed integer type.
Definition: Types.h:103
ContainerType::const_reverse_iterator ConstReverseIterator
Non-mutable reverse iterator.
Definition: MSSpectrum.h:108
~MSSpectrum()
Destructor.
Definition: MSSpectrum.h:148