OpenMS
SpectrumAccessQuadMZTransforming Class Reference

A transforming m/z wrapper around spectrum access using a quadratic equation. More...

#include <OpenMS/ANALYSIS/OPENSWATH/DATAACCESS/SpectrumAccessQuadMZTransforming.h>

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

Public Member Functions

 SpectrumAccessQuadMZTransforming (OpenSwath::SpectrumAccessPtr sptr, double a, double b, double c, bool ppm)
 Constructor. More...
 
 ~SpectrumAccessQuadMZTransforming () override
 
boost::shared_ptr< OpenSwath::ISpectrumAccesslightClone () const override
 Light clone operator to produce a copy for concurrent read access. More...
 
OpenSwath::SpectrumPtr getSpectrumById (int id) override
 Return a pointer to a spectrum at the given id. More...
 
- Public Member Functions inherited from SpectrumAccessTransforming
 SpectrumAccessTransforming (OpenSwath::SpectrumAccessPtr sptr)
 
 ~SpectrumAccessTransforming () override=0
 
OpenSwath::SpectrumPtr getSpectrumById (int id) override
 Return a pointer to a spectrum at the given id. More...
 
OpenSwath::SpectrumMeta getSpectrumMetaById (int id) const override
 Returns the meta information for a spectrum. More...
 
std::vector< std::size_t > getSpectraByRT (double RT, double deltaRT) const override
 Return a vector of ids of spectra that are within RT +/- deltaRT. More...
 
size_t getNrSpectra () const override
 Returns the number of spectra available. More...
 
OpenSwath::ChromatogramPtr getChromatogramById (int id) override
 Return a pointer to a chromatogram at the given id. More...
 
size_t getNrChromatograms () const override
 Returns the number of chromatograms available. More...
 
std::string getChromatogramNativeID (int id) const override
 Returns the native id of the chromatogram at the given id. More...
 
- Public Member Functions inherited from ISpectrumAccess
virtual ~ISpectrumAccess ()
 Destructor. More...
 
SpectrumPtr getSpectrumById (int id, double drift_start, double drift_end)
 Return pointer to a spectrum at the given id, the spectrum will be filtered by drift time. More...
 
SpectrumSequence getMultipleSpectra (double RT, int nr_spectra_to_fetch)
 
SpectrumSequence getMultipleSpectra (double RT, int nr_spectra_to_fetch, double drift_start, double drift_end)
 

Private Attributes

double a_
 
double b_
 
double c_
 
bool ppm_
 

Additional Inherited Members

- Static Public Member Functions inherited from ISpectrumAccess
static SpectrumPtr filterByDrift (const SpectrumPtr &input, double drift_start, double drift_end)
 filters a spectrum by drift time, spectrum pointer returned is a copy More...
 
- Protected Attributes inherited from SpectrumAccessTransforming
OpenSwath::SpectrumAccessPtr sptr_
 

Detailed Description

A transforming m/z wrapper around spectrum access using a quadratic equation.

For each spectrum access, each m/z value is transformed using the equation mz = a + b * mz + c * mz^2

This can be used to implement an on-line mass correction for TOF instruments (for example).

Constructor & Destructor Documentation

◆ SpectrumAccessQuadMZTransforming()

SpectrumAccessQuadMZTransforming ( OpenSwath::SpectrumAccessPtr  sptr,
double  a,
double  b,
double  c,
bool  ppm 
)
explicit

Constructor.

Parameters
sptrThe spectrum to work on
aRegression parameter 0
bRegression parameter 1
cRegression parameter 2
ppmWhether the transformation should be applied in ppm domain (if false, it is applied directly in m/z domain)

◆ ~SpectrumAccessQuadMZTransforming()

Member Function Documentation

◆ getSpectrumById()

OpenSwath::SpectrumPtr getSpectrumById ( int  id)
overridevirtual

Return a pointer to a spectrum at the given id.

Implements ISpectrumAccess.

◆ lightClone()

boost::shared_ptr<OpenSwath::ISpectrumAccess> lightClone ( ) const
overridevirtual

Light clone operator to produce a copy for concurrent read access.

This function guarantees to produce a copy of the underlying object that provides thread-safe concurrent read access to the underlying data. It should be implemented with minimal copy-overhead to make this operation as fast as possible.

To use this function, each thread should call this function to produce an individual copy on which it can operate.

Implements SpectrumAccessTransforming.

Member Data Documentation

◆ a_

double a_
private

◆ b_

double b_
private

◆ c_

double c_
private

◆ ppm_

bool ppm_
private