OpenMS
Loading...
Searching...
No Matches
IMTypes.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: Chris Bielow $
6// $Authors: Chris Bielow $
7// --------------------------------------------------------------------------
8
9#pragma once
10
12#include <OpenMS/OpenMSConfig.h>
13
14#include <string>
15
16namespace OpenMS
17{
18 class MSExperiment;
19 class MSSpectrum;
20
31
33 OPENMS_DLLAPI extern const std::string NamesOfDriftTimeUnit[(size_t) DriftTimeUnit::SIZE_OF_DRIFTTIMEUNIT];
34
37 OPENMS_DLLAPI DriftTimeUnit toDriftTimeUnit(const std::string& dtu_string);
38
41 OPENMS_DLLAPI const std::string& driftTimeUnitToString(const DriftTimeUnit value);
42
48 enum class IMFormat
49 {
50 NONE,
53 MIXED,
55 UNKNOWN,
57 };
59 OPENMS_DLLAPI extern const std::string NamesOfIMFormat[(size_t) IMFormat::SIZE_OF_IMFORMAT];
60
63 OPENMS_DLLAPI IMFormat toIMFormat(const std::string& IM_format);
66 OPENMS_DLLAPI const std::string& imFormatToString(const IMFormat value);
67
68 class OPENMS_DLLAPI IMTypes
69 {
70 public:
72 inline static constexpr double DRIFTTIME_NOT_SET = -1.0;
73
79
89
96 static DIM_UNIT fromIMUnit(const DriftTimeUnit from);
97 };
98
99};
100
Definition IMTypes.h:69
static IMFormat determineIMFormat(const MSExperiment &exp)
static DIM_UNIT fromIMUnit(const DriftTimeUnit from)
static IMFormat determineIMFormat(const MSSpectrum &spec)
Checks for existence of a single driftTime (using spec.getDriftTime()) or an ion-mobility float data ...
In-Memory representation of a mass spectrometry run.
Definition MSExperiment.h:49
The representation of a 1D spectrum.
Definition MSSpectrum.h:44
@ UNKNOWN
Unknown or unrecognized ion type.
Main OpenMS namespace.
Definition openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/ISpectrumAccess.h:19
IMFormat
Definition IMTypes.h:49
@ CENTROIDED
ion mobility of peaks after centroiding in IM dimension. Ion mobility is annotated in a single float ...
@ MIXED
an MSExperiment contains both CONCATENATED and MULTIPLE_SPECTRA
@ CONCATENATED
ion mobility frame is stacked in a single spectrum (i.e. has an IM float data array)
@ MULTIPLE_SPECTRA
ion mobility is recorded as multiple spectra per frame (i.e. has one IM annotation per spectrum)
DriftTimeUnit
Drift time unit for ion mobility.
Definition IMTypes.h:23
@ CCS
collisional cross section (square angstrom)
@ MILLISECOND
milliseconds
@ VSSC
volt-second per square centimeter (i.e. 1/K_0)
@ FAIMS_COMPENSATION_VOLTAGE
compensation voltage
const std::string & imFormatToString(const IMFormat value)
IMFormat toIMFormat(const std::string &IM_format)
const std::string NamesOfIMFormat[(size_t) IMFormat::SIZE_OF_IMFORMAT]
Names of IMFormat.
const std::string & driftTimeUnitToString(const DriftTimeUnit value)
const std::string NamesOfDriftTimeUnit[(size_t) DriftTimeUnit::SIZE_OF_DRIFTTIMEUNIT]
Names of IM Units. Should be usable as axis annotation.
DriftTimeUnit toDriftTimeUnit(const std::string &dtu_string)
DIM_UNIT
Definition CommonEnums.h:20