Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages
Classes | Public Member Functions | Protected Attributes | List of all members
MSChromatogram Class Reference

The representation of a chromatogram. More...

#include <OpenMS/KERNEL/MSChromatogram.h>

Inheritance diagram for MSChromatogram:
RangeManager< 1 > ChromatogramSettings MetaInfoInterface

Classes

struct  MZLess
 Comparator for the retention time. More...
 

Public Types

Base type definitions

Peak type

typedef ChromatogramPeak PeakType
 
typedef PeakType::CoordinateType CoordinateType
 Coordinate (RT) type. More...
 
typedef std::vector< PeakTypeContainerType
 Chromatogram base type. More...
 
typedef OpenMS::DataArrays::FloatDataArray FloatDataArray
 Float data array vector type. More...
 
typedef std::vector< FloatDataArrayFloatDataArrays
 
typedef OpenMS::DataArrays::StringDataArray StringDataArray
 String data array vector type. More...
 
typedef std::vector< StringDataArrayStringDataArrays
 
typedef OpenMS::DataArrays::IntegerDataArray IntegerDataArray
 Integer data array vector type. More...
 
typedef std::vector< IntegerDataArrayIntegerDataArrays
 
Peak container iterator type definitions
typedef ContainerType::iterator Iterator
 Mutable iterator. More...
 
typedef ContainerType::const_iterator ConstIterator
 Non-mutable iterator. More...
 
typedef ContainerType::reverse_iterator ReverseIterator
 Mutable reverse iterator. More...
 
typedef ContainerType::const_reverse_iterator ConstReverseIterator
 Non-mutable reverse iterator. More...
 
- Public Types inherited from RangeManager< 1 >
enum  
 Dimension of the position range. More...
 
typedef DRange< D > PositionRangeType
 Position range type. More...
 
typedef DPosition< D > PositionType
 Position Type. More...
 
typedef DRange< 1 > IntensityRangeType
 Intensity range type. More...
 
- Public Types inherited from ChromatogramSettings
enum  ChromatogramType {
  MASS_CHROMATOGRAM = 0, TOTAL_ION_CURRENT_CHROMATOGRAM, SELECTED_ION_CURRENT_CHROMATOGRAM, BASEPEAK_CHROMATOGRAM,
  SELECTED_ION_MONITORING_CHROMATOGRAM, SELECTED_REACTION_MONITORING_CHROMATOGRAM, ELECTROMAGNETIC_RADIATION_CHROMATOGRAM, ABSORPTION_CHROMATOGRAM,
  EMISSION_CHROMATOGRAM, SIZE_OF_CHROMATOGRAM_TYPE
}
 

Public Member Functions

 MSChromatogram ()
 Constructor. More...
 
 MSChromatogram (const MSChromatogram &source)
 Copy constructor. More...
 
virtual ~MSChromatogram ()
 Destructor. More...
 
MSChromatogramoperator= (const MSChromatogram &source)
 Assignment operator. More...
 
bool operator== (const MSChromatogram &rhs) const
 Equality operator. More...
 
bool operator!= (const MSChromatogram &rhs) const
 Equality operator. More...
 
virtual void updateRanges ()
 Updates minimum and maximum position/intensity. More...
 
double getMZ () const
 returns the mz of the product entry, makes sense especially for MRM scans More...
 
Accessors for meta information

Returns the name

const StringgetName () const
 
void setName (const String &name)
 Sets the name. More...
 
Peak data array methods

These methods are used to annotate each peak in a chromatogram with meta information. It is an intermediate way between storing the information in the peak's MetaInfoInterface and deriving a new peak type with members for this information.

These statements should help you chose which approach to use

  • Access to meta info arrays is slower than to a member variable
  • Access to meta info arrays is faster than to a MetaInfoInterface
  • Meta info arrays are stored when using mzML format for storing
const FloatDataArraysgetFloatDataArrays () const
 
FloatDataArraysgetFloatDataArrays ()
 Returns a mutable reference to the float meta data arrays. More...
 
void setFloatDataArrays (const FloatDataArrays &fda)
 Sets the float meta data arrays. More...
 
const StringDataArraysgetStringDataArrays () const
 Returns a const reference to the string meta data arrays. More...
 
StringDataArraysgetStringDataArrays ()
 Returns a mutable reference to the string meta data arrays. More...
 
void setStringDataArrays (const StringDataArrays &sda)
 Sets the string meta data arrays. More...
 
const IntegerDataArraysgetIntegerDataArrays () const
 Returns a const reference to the integer meta data arrays. More...
 
IntegerDataArraysgetIntegerDataArrays ()
 Returns a mutable reference to the integer meta data arrays. More...
 
void setIntegerDataArrays (const IntegerDataArrays &ida)
 Sets the integer meta data arrays. More...
 
Sorting peaks
void sortByIntensity (bool reverse=false)
 Lexicographically sorts the peaks by their intensity. More...
 
void sortByPosition ()
 Lexicographically sorts the peaks by their position. More...
 
bool isSorted () const
 Checks if all peaks are sorted with respect to ascending RT. More...
 
Searching a peak or peak range
Size findNearest (CoordinateType rt) const
 Binary search for the peak nearest to a specific RT. More...
 
Iterator RTBegin (CoordinateType rt)
 Binary search for peak range begin. More...
 
Iterator RTBegin (Iterator begin, CoordinateType rt, Iterator end)
 Binary search for peak range begin. More...
 
Iterator RTEnd (CoordinateType rt)
 Binary search for peak range end (returns the past-the-end iterator) More...
 
Iterator RTEnd (Iterator begin, CoordinateType rt, Iterator end)
 Binary search for peak range end (returns the past-the-end iterator) More...
 
ConstIterator RTBegin (CoordinateType rt) const
 Binary search for peak range begin. More...
 
ConstIterator RTBegin (ConstIterator begin, CoordinateType rt, ConstIterator end) const
 Binary search for peak range begin. More...
 
ConstIterator RTEnd (CoordinateType rt) const
 Binary search for peak range end (returns the past-the-end iterator) More...
 
ConstIterator MZEnd (CoordinateType rt) const
 
ConstIterator RTEnd (ConstIterator begin, CoordinateType rt, ConstIterator end) const
 Binary search for peak range end (returns the past-the-end iterator) More...
 
void clear (bool clear_meta_data)
 Clears all data and meta data. More...
 
- Public Member Functions inherited from RangeManager< 1 >
 RangeManager ()
 Default constructor. More...
 
 RangeManager (const RangeManager &rhs)
 Copy constructor. More...
 
virtual ~RangeManager ()
 Destructor. More...
 
RangeManageroperator= (const RangeManager &rhs)
 Assignment operator. More...
 
bool operator== (const RangeManager &rhs) const
 Equality operator. More...
 
bool operator!= (const RangeManager &rhs) const
 Equality operator. More...
 
const PositionTypegetMin () const
 Returns the minimum position. More...
 
const PositionTypegetMax () const
 Returns the maximum position. More...
 
double getMinInt () const
 Returns the minimum intensity. More...
 
double getMaxInt () const
 Returns the maximum intensity. More...
 
void clearRanges ()
 Resets the ranges. More...
 
- Public Member Functions inherited from ChromatogramSettings
 ChromatogramSettings ()
 Constructor. More...
 
 ChromatogramSettings (const ChromatogramSettings &source)
 Copy constructor. More...
 
virtual ~ChromatogramSettings ()
 Destructor. More...
 
ChromatogramSettingsoperator= (const ChromatogramSettings &source)
 
bool operator== (const ChromatogramSettings &rhs) const
 Equality operator. More...
 
bool operator!= (const ChromatogramSettings &rhs) const
 Equality operator. More...
 
const StringgetNativeID () const
 returns the native identifier for the spectrum, used by the acquisition software. More...
 
void setNativeID (const String &native_id)
 sets the native identifier for the spectrum, used by the acquisition software. More...
 
const StringgetComment () const
 returns the free-text comment More...
 
void setComment (const String &comment)
 sets the free-text comment More...
 
const InstrumentSettingsgetInstrumentSettings () const
 returns a const reference to the instrument settings of the current spectrum More...
 
InstrumentSettingsgetInstrumentSettings ()
 returns a mutable reference to the instrument settings of the current spectrum More...
 
void setInstrumentSettings (const InstrumentSettings &instrument_settings)
 sets the instrument settings of the current spectrum More...
 
const AcquisitionInfogetAcquisitionInfo () const
 returns a const reference to the acquisition info More...
 
AcquisitionInfogetAcquisitionInfo ()
 returns a mutable reference to the acquisition info More...
 
void setAcquisitionInfo (const AcquisitionInfo &acquisition_info)
 sets the acquisition info More...
 
const SourceFilegetSourceFile () const
 returns a const reference to the source file More...
 
SourceFilegetSourceFile ()
 returns a mutable reference to the source file More...
 
void setSourceFile (const SourceFile &source_file)
 sets the source file More...
 
const PrecursorgetPrecursor () const
 returns a const reference to the precursors More...
 
PrecursorgetPrecursor ()
 returns a mutable reference to the precursors More...
 
void setPrecursor (const Precursor &precursor)
 sets the precursors More...
 
const ProductgetProduct () const
 returns a const reference to the products More...
 
ProductgetProduct ()
 returns a mutable reference to the products More...
 
void setProduct (const Product &product)
 sets the products More...
 
ChromatogramType getChromatogramType () const
 returns the chromatogram type, e.g. a SRM chromatogram More...
 
void setChromatogramType (ChromatogramType type)
 sets the chromatogram type More...
 
void setDataProcessing (const std::vector< DataProcessingPtr > &data_processing)
 sets the description of the applied processing More...
 
std::vector< DataProcessingPtr > & getDataProcessing ()
 returns a mutable reference to the description of the applied processing More...
 
const std::vector< boost::shared_ptr< const DataProcessing > > getDataProcessing () const
 returns a const reference to the description of the applied processing More...
 
- Public Member Functions inherited from MetaInfoInterface
 MetaInfoInterface ()
 Constructor. More...
 
 MetaInfoInterface (const MetaInfoInterface &rhs)
 Copy constructor. More...
 
 ~MetaInfoInterface ()
 Destructor. More...
 
MetaInfoInterfaceoperator= (const MetaInfoInterface &rhs)
 Assignment operator. More...
 
bool operator== (const MetaInfoInterface &rhs) const
 Equality operator. More...
 
bool operator!= (const MetaInfoInterface &rhs) const
 Equality operator. More...
 
const DataValuegetMetaValue (const String &name) const
 Returns the value corresponding to a string (or DataValue::EMPTY if not found) More...
 
const DataValuegetMetaValue (UInt index) const
 Returns the value corresponding to an index (or DataValue::EMPTY if not found) More...
 
bool metaValueExists (const String &name) const
 Returns whether an entry with the given name exists. More...
 
bool metaValueExists (UInt index) const
 Returns whether an entry with the given index exists. More...
 
void setMetaValue (const String &name, const DataValue &value)
 Sets the DataValue corresponding to a name. More...
 
void setMetaValue (UInt index, const DataValue &value)
 Sets the DataValue corresponding to an index. More...
 
void removeMetaValue (const String &name)
 Removes the DataValue corresponding to name if it exists. More...
 
void removeMetaValue (UInt index)
 Removes the DataValue corresponding to index if it exists. More...
 
void getKeys (std::vector< String > &keys) const
 Fills the given vector with a list of all keys for which a value is set. More...
 
void getKeys (std::vector< UInt > &keys) const
 Fills the given vector with a list of all keys for which a value is set. More...
 
bool isMetaEmpty () const
 Returns if the MetaInfo is empty. More...
 
void clearMetaInfo ()
 Removes all meta values. More...
 

Protected Attributes

String name_
 Name. More...
 
FloatDataArrays float_data_arrays_
 Float data arrays. More...
 
StringDataArrays string_data_arrays_
 String data arrays. More...
 
IntegerDataArrays integer_data_arrays_
 Integer data arrays. More...
 
- Protected Attributes inherited from RangeManager< 1 >
IntensityRangeType int_range_
 Intensity range (1-dimensional) More...
 
PositionRangeType pos_range_
 Position range (D-dimensional) More...
 
- Protected Attributes inherited from ChromatogramSettings
String native_id_
 
String comment_
 
InstrumentSettings instrument_settings_
 
SourceFile source_file_
 
AcquisitionInfo acquisition_info_
 
Precursor precursor_
 
Product product_
 
std::vector< DataProcessingPtrdata_processing_
 
ChromatogramType type_
 
- Protected Attributes inherited from MetaInfoInterface
MetaInfometa_
 Pointer to the MetaInfo object (0 by default) More...
 

Additional Inherited Members

- Static Public Member Functions inherited from MetaInfoInterface
static MetaInfoRegistrymetaRegistry ()
 Returns a reference to the MetaInfoRegistry. More...
 
- Static Public Attributes inherited from ChromatogramSettings
static const char *const ChromatogramNames [SIZE_OF_CHROMATOGRAM_TYPE+1]
 Names of chromatogram types corresponding to enum ChromatogramType. More...
 
- Protected Member Functions inherited from RangeManager< 1 >
void updateRanges_ (const PeakIteratorType &begin, const PeakIteratorType &end)
 Updates the range using data points in the iterator range. More...
 
- Protected Member Functions inherited from MetaInfoInterface
void createIfNotExists_ ()
 Creates the MetaInfo object if it does not exist. More...
 

Detailed Description

The representation of a chromatogram.

Member Typedef Documentation

◆ ConstIterator

typedef ContainerType::const_iterator ConstIterator

Non-mutable iterator.

◆ ConstReverseIterator

typedef ContainerType::const_reverse_iterator ConstReverseIterator

Non-mutable reverse iterator.

◆ ContainerType

typedef std::vector<PeakType> ContainerType

Chromatogram base type.

◆ CoordinateType

Coordinate (RT) type.

◆ FloatDataArray

Float data array vector type.

◆ FloatDataArrays

typedef std::vector<FloatDataArray> FloatDataArrays

◆ IntegerDataArray

Integer data array vector type.

◆ IntegerDataArrays

typedef std::vector<IntegerDataArray> IntegerDataArrays

◆ Iterator

typedef ContainerType::iterator Iterator

Mutable iterator.

◆ PeakType

◆ ReverseIterator

typedef ContainerType::reverse_iterator ReverseIterator

Mutable reverse iterator.

◆ StringDataArray

String data array vector type.

◆ StringDataArrays

typedef std::vector<StringDataArray> StringDataArrays

Constructor & Destructor Documentation

◆ MSChromatogram() [1/2]

MSChromatogram ( )
inline

Constructor.

◆ MSChromatogram() [2/2]

MSChromatogram ( const MSChromatogram source)
inline

Copy constructor.

◆ ~MSChromatogram()

virtual ~MSChromatogram ( )
inlinevirtual

Destructor.

References KDTree::operator==().

Member Function Documentation

◆ clear()

void clear ( bool  clear_meta_data)

Clears all data and meta data.

Parameters
clear_meta_dataIf true, all meta data is cleared in addition to the data.

Referenced by MSDataCachedConsumer::consumeChromatogram(), and PeakPickerHiRes::pick().

◆ findNearest()

Size findNearest ( CoordinateType  rt) const

Binary search for the peak nearest to a specific RT.

Parameters
rtThe searched for mass-to-charge ratio searched
Returns
Returns the index of the peak.
Note
Make sure the chromatogram is sorted with respect to RT! Otherwise the result is undefined.
Exceptions
Exception::Preconditionis thrown if the chromatogram is empty (not only in debug mode)

◆ getFloatDataArrays() [1/2]

const FloatDataArrays& getFloatDataArrays ( ) const

Returns a const reference to the float meta data arrays

Referenced by PeakPickerHiRes::pick().

◆ getFloatDataArrays() [2/2]

FloatDataArrays& getFloatDataArrays ( )

Returns a mutable reference to the float meta data arrays.

◆ getIntegerDataArrays() [1/2]

const IntegerDataArrays& getIntegerDataArrays ( ) const

Returns a const reference to the integer meta data arrays.

◆ getIntegerDataArrays() [2/2]

IntegerDataArrays& getIntegerDataArrays ( )

Returns a mutable reference to the integer meta data arrays.

◆ getMZ()

double getMZ ( ) const

returns the mz of the product entry, makes sense especially for MRM scans

Referenced by GaussFilter::filter().

◆ getName()

const String& getName ( ) const

Referenced by PeakPickerHiRes::pick().

◆ getStringDataArrays() [1/2]

const StringDataArrays& getStringDataArrays ( ) const

Returns a const reference to the string meta data arrays.

◆ getStringDataArrays() [2/2]

StringDataArrays& getStringDataArrays ( )

Returns a mutable reference to the string meta data arrays.

◆ isSorted()

bool isSorted ( ) const

Checks if all peaks are sorted with respect to ascending RT.

Referenced by MRMTransitionGroupPicker::pickTransitionGroup().

◆ MZEnd()

ConstIterator MZEnd ( CoordinateType  rt) const

◆ operator!=()

bool operator!= ( const MSChromatogram rhs) const
inline

Equality operator.

References KDTree::operator==().

◆ operator=()

MSChromatogram& operator= ( const MSChromatogram source)

Assignment operator.

◆ operator==()

bool operator== ( const MSChromatogram rhs) const

Equality operator.

◆ RTBegin() [1/4]

Iterator RTBegin ( CoordinateType  rt)

Binary search for peak range begin.

Note
Make sure the chromatogram is sorted with respect to retention time! Otherwise the result is undefined.

◆ RTBegin() [2/4]

Iterator RTBegin ( Iterator  begin,
CoordinateType  rt,
Iterator  end 
)

Binary search for peak range begin.

Note
Make sure the chromatogram is sorted with respect to RT! Otherwise the result is undefined.

◆ RTBegin() [3/4]

ConstIterator RTBegin ( CoordinateType  rt) const

Binary search for peak range begin.

Note
Make sure the chromatogram is sorted with respect to RT! Otherwise the result is undefined.

◆ RTBegin() [4/4]

ConstIterator RTBegin ( ConstIterator  begin,
CoordinateType  rt,
ConstIterator  end 
) const

Binary search for peak range begin.

Note
Make sure the chromatogram is sorted with respect to RT! Otherwise the result is undefined.

◆ RTEnd() [1/4]

Iterator RTEnd ( CoordinateType  rt)

Binary search for peak range end (returns the past-the-end iterator)

Note
Make sure the chromatogram is sorted with respect to RT. Otherwise the result is undefined.

◆ RTEnd() [2/4]

Iterator RTEnd ( Iterator  begin,
CoordinateType  rt,
Iterator  end 
)

Binary search for peak range end (returns the past-the-end iterator)

Note
Make sure the chromatogram is sorted with respect to RT. Otherwise the result is undefined.

◆ RTEnd() [3/4]

ConstIterator RTEnd ( CoordinateType  rt) const

Binary search for peak range end (returns the past-the-end iterator)

Note
Make sure the chromatogram is sorted with respect to RT. Otherwise the result is undefined.

◆ RTEnd() [4/4]

ConstIterator RTEnd ( ConstIterator  begin,
CoordinateType  rt,
ConstIterator  end 
) const

Binary search for peak range end (returns the past-the-end iterator)

Note
Make sure the chromatogram is sorted with respect to RT. Otherwise the result is undefined.

◆ setFloatDataArrays()

void setFloatDataArrays ( const FloatDataArrays fda)
inline

Sets the float meta data arrays.

◆ setIntegerDataArrays()

void setIntegerDataArrays ( const IntegerDataArrays ida)
inline

Sets the integer meta data arrays.

◆ setName()

void setName ( const String name)

Sets the name.

Referenced by PeakPickerHiRes::pick().

◆ setStringDataArrays()

void setStringDataArrays ( const StringDataArrays sda)
inline

Sets the string meta data arrays.

◆ sortByIntensity()

void sortByIntensity ( bool  reverse = false)

Lexicographically sorts the peaks by their intensity.

Sorts the peaks according to ascending intensity. Meta data arrays will be sorted accordingly.

Referenced by MRMTransitionGroupPicker::pickTransitionGroup().

◆ sortByPosition()

void sortByPosition ( )

Lexicographically sorts the peaks by their position.

The chromatogram is sorted with respect to position. Meta data arrays will be sorted accordingly.

Referenced by MRMTransitionGroupPicker::pickTransitionGroup().

◆ updateRanges()

virtual void updateRanges ( )
inlinevirtual

Updates minimum and maximum position/intensity.

This method is usually implemented by calling clearRanges() and updateRanges_().

Implements RangeManager< 1 >.

Member Data Documentation

◆ float_data_arrays_

FloatDataArrays float_data_arrays_
protected

Float data arrays.

◆ integer_data_arrays_

IntegerDataArrays integer_data_arrays_
protected

Integer data arrays.

◆ name_

String name_
protected

Name.

◆ string_data_arrays_

StringDataArrays string_data_arrays_
protected

String data arrays.


OpenMS / TOPP release 2.3.0 Documentation generated on Tue Jan 9 2018 18:22:10 using doxygen 1.8.13