| OpenMS 2.5.0

IonSource.h
Go to the documentation of this file.
1 // --------------------------------------------------------------------------
2 // OpenMS -- Open-Source Mass Spectrometry
3 // --------------------------------------------------------------------------
4 // Copyright The OpenMS Team -- Eberhard Karls University Tuebingen,
5 // ETH Zurich, and Freie Universitaet Berlin 2002-2020.
6 //
7 // This software is released under a three-clause BSD license:
8 // * Redistributions of source code must retain the above copyright
9 // notice, this list of conditions and the following disclaimer.
10 // * Redistributions in binary form must reproduce the above copyright
11 // notice, this list of conditions and the following disclaimer in the
12 // documentation and/or other materials provided with the distribution.
13 // * Neither the name of any author or any participating institution
14 // may be used to endorse or promote products derived from this software
15 // without specific prior written permission.
16 // For a full list of authors, refer to the file AUTHORS.
17 // --------------------------------------------------------------------------
18 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19 // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 // ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING
22 // INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
23 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
24 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
25 // OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
26 // WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
27 // OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
28 // ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 //
30 // --------------------------------------------------------------------------
31 // $Maintainer: Timo Sachsenberg $
32 // $Authors: Marc Sturm $
33 // --------------------------------------------------------------------------
34
35 #pragma once
36
37 #include <OpenMS/METADATA/MetaInfoInterface.h>
38
39 namespace OpenMS
40 {
41
47 class OPENMS_DLLAPI IonSource :
48 public MetaInfoInterface
49 {
50 public:
52 enum InletType
53 {
54 INLETNULL,
55 DIRECT,
56 BATCH,
57 CHROMATOGRAPHY,
58 PARTICLEBEAM,
59 MEMBRANESEPARATOR,
60 OPENSPLIT,
61 JETSEPARATOR,
62 SEPTUM,
63 RESERVOIR,
64 MOVINGBELT,
65 MOVINGWIRE,
66 FLOWINJECTIONANALYSIS,
67 ELECTROSPRAYINLET,
68 THERMOSPRAYINLET,
69 INFUSION,
70 CONTINUOUSFLOWFASTATOMBOMBARDMENT,
71 INDUCTIVELYCOUPLEDPLASMA,
72 MEMBRANE,
73 NANOSPRAY,
74 SIZE_OF_INLETTYPE
75 };
77 static const std::string NamesOfInletType[SIZE_OF_INLETTYPE];
78
80 enum IonizationMethod
81 {
82 IONMETHODNULL,
83 ESI,
84 EI,
85 CI,
86 FAB,
87 TSP,
88 LD,
89 FD,
90 FI,
91 PD,
92 SI,
93 TI,
94 API,
95 ISI,
96 CID,
97 CAD,
98 HN,
99 APCI,
100 APPI,
101 ICP,
102 NESI,
103 MESI,
104 SELDI,
105 SEND,
106 FIB,
107 MALDI,
108 MPI,
109 DI,
110 FA,
111 FII,
112 GD_MS,
113 NICI,
114 NRMS,
115 PI,
116 PYMS,
117 REMPI,
118 AI,
119 ASI,
120 AD,
121 AUI,
122 CEI,
123 CHEMI,
124 DISSI,
125 LSI,
126 PEI,
127 SOI,
128 SPI,
129 SUI,
130 VI,
131 AP_MALDI,
132 SILI,
133 SALDI,
134 SIZE_OF_IONIZATIONMETHOD
135 };
137 static const std::string NamesOfIonizationMethod[SIZE_OF_IONIZATIONMETHOD];
138
140 enum Polarity
141 {
142 POLNULL,
143 POSITIVE,
144 NEGATIVE,
145 SIZE_OF_POLARITY
146 };
148 static const std::string NamesOfPolarity[SIZE_OF_POLARITY];
149
151 IonSource();
153 IonSource(const IonSource &) = default;
155 IonSource(IonSource&&) = default;
157 ~IonSource();
158
160 IonSource & operator=(const IonSource &) = default;
162 IonSource& operator=(IonSource&&) & = default;
163
165 bool operator==(const IonSource & rhs) const;
167 bool operator!=(const IonSource & rhs) const;
168
170 InletType getInletType() const;
172 void setInletType(InletType inlet_type);
173
175 IonizationMethod getIonizationMethod() const;
177 void setIonizationMethod(IonizationMethod ionization_type);
178
180 Polarity getPolarity() const;
182 void setPolarity(Polarity polarity);
183
194 Int getOrder() const;
196 void setOrder(Int order);
197
198 protected:
199 InletType inlet_type_;
200 IonizationMethod ionization_method_;
201 Polarity polarity_;
202 Int order_;
203
204 };
205
206 } // namespace OpenMS
207
OpenMS::IonSource::RESERVOIR
Reservoir.
Definition: IonSource.h:63
OpenMS::IonSource::FAB
fast atom bombardment
Definition: IonSource.h:86
OpenMS::IonSource::FII
field ionization
Definition: IonSource.h:111
OpenMS::IonSource::TSP
thermospray
Definition: IonSource.h:87
OpenMS::IonSource::HN
Definition: IonSource.h:98
OpenMS::IonSource::MEMBRANESEPARATOR
Membrane separator.
Definition: IonSource.h:59
OpenMS::IonSource::NESI
Nano electrospray ionization.
Definition: IonSource.h:102
OpenMS::IonSource::Polarity
Polarity
Polarity of the ion source.
Definition: IonSource.h:140
OpenMS::IonSource::REMPI
resonance enhanced multiphoton ionization
Definition: IonSource.h:117
OpenMS::IonSource::SEPTUM
Septum.
Definition: IonSource.h:62
OpenMS::IonSource::POSITIVE
Positive polarity.
Definition: IonSource.h:143
OpenMS::IonSource::ELECTROSPRAYINLET
Electro spray.
Definition: IonSource.h:67
OpenMS::IonSource::DI
desorption ionization
Definition: IonSource.h:109
OpenMS::IonSource::AUI
autoionization
Definition: IonSource.h:121
OpenMS::IonSource::FD
field desorption
Definition: IonSource.h:89
OpenMS::IonSource::order_
Int order_
Definition: IonSource.h:202
OpenMS::IonSource::AP_MALDI
atmospheric pressure matrix-assisted laser desorption ionization
Definition: IonSource.h:131
OpenMS::IonSource::FA
flowing afterglow
Definition: IonSource.h:110
OpenMS::IonSource::LD
laser desorption
Definition: IonSource.h:88
OpenMS::IonSource::CHEMI
chemi-ionization
Definition: IonSource.h:123
OpenMS::IonSource::LSI
liquid secondary ionization
Definition: IonSource.h:125
OpenMS::IonSource::MPI
Multiphoton ionization.
Definition: IonSource.h:108
OpenMS::IonSource
Description of an ion source (part of a MS Instrument)
Definition: IonSource.h:47
KDTree::operator!=
bool operator!=(_Iterator< _Val, _Ref, _Ptr > const &, _Iterator< _Val, _Ref, _Ptr > const &)
Definition: KDTree.h:824
OpenMS::IonSource::ASI
associative ionization
Definition: IonSource.h:119
OpenMS::IonSource::SELDI
Surface enhanced laser desorption ionization.
Definition: IonSource.h:104
OpenMS::IonSource::OPENSPLIT
Open split.
Definition: IonSource.h:60
OpenMS::IonSource::VI
vertical ionization
Definition: IonSource.h:130
OpenMS::IonSource::MESI
Micro electrospray ionization.
Definition: IonSource.h:103
OpenMS::IonSource::TI
thermal ionization
Definition: IonSource.h:93
OpenMS::IonSource::CHROMATOGRAPHY
Chromatography (liquid)
Definition: IonSource.h:57
OpenMS::IonSource::BATCH
Batch (e.g. in MALDI)
Definition: IonSource.h:56
OpenMS::IonSource::MOVINGBELT
Moving belt.
Definition: IonSource.h:64
OpenMS::IonSource::MALDI
Matrix-assisted laser desorption ionization.
Definition: IonSource.h:107
OpenMS::IonSource::POLNULL
Unknown.
Definition: IonSource.h:142
OpenMS::IonSource::CAD
collision activated decomposition
Definition: IonSource.h:97
OpenMS::IonSource::polarity_
Polarity polarity_
Definition: IonSource.h:201
OpenMS::IonSource::PI
photoionization
Definition: IonSource.h:115
OpenMS::IonSource::CID
collision induced decomposition
Definition: IonSource.h:96
OpenMS::IonSource::DISSI
dissociative ionization
Definition: IonSource.h:124
OpenMS::IonSource::NRMS
neutralization reionization mass spectrometry
Definition: IonSource.h:114
OpenMS::IonSource::ESI
electrospray ionisation
Definition: IonSource.h:83
OpenMS::IonSource::PD
plasma desorption
Definition: IonSource.h:91
OpenMS::IonSource::SEND
Surface enhanced neat desorption.
Definition: IonSource.h:105
OpenMS::IonSource::ionization_method_
IonizationMethod ionization_method_
Definition: IonSource.h:200
OpenMS::IonSource::PARTICLEBEAM
Particle beam.
Definition: IonSource.h:58
OpenMS::IonSource::SALDI
surface-assisted laser desorption ionization
Definition: IonSource.h:133
OpenMS::IonSource::CONTINUOUSFLOWFASTATOMBOMBARDMENT
Continuous flow fast atom bombardment.
Definition: IonSource.h:70
OpenMS
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:46
OpenMS::IonSource::FI
flame ionization
Definition: IonSource.h:90
OpenMS::IonSource::SPI
spark ionization
Definition: IonSource.h:128
OpenMS::IonSource::ISI
Definition: IonSource.h:95
OpenMS::IonSource::INDUCTIVELYCOUPLEDPLASMA
Inductively coupled plasma.
Definition: IonSource.h:71
OpenMS::IonSource::InletType
InletType
inlet type
Definition: IonSource.h:52
OpenMS::IonSource::CI
chemical ionisation
Definition: IonSource.h:85
OpenMS::IonSource::PYMS
pyrolysis mass spectrometry
Definition: IonSource.h:116
OpenMS::IonSource::CEI
charge exchange ionization
Definition: IonSource.h:122
OpenMS::IonSource::EI
electron ionization
Definition: IonSource.h:84
OpenMS::IonSource::SUI
surface ionization
Definition: IonSource.h:129
OpenMS::IonSource::FIB
Fast ion bombardment.
Definition: IonSource.h:106
OpenMS::IonSource::FLOWINJECTIONANALYSIS
Flow injection analysis.
Definition: IonSource.h:66
OpenMS::IonSource::API
atmospheric pressure ionisation
Definition: IonSource.h:94
OpenMS::IonSource::NANOSPRAY
Nanospray inlet.
Definition: IonSource.h:73
OpenMS::IonSource::inlet_type_
InletType inlet_type_
Definition: IonSource.h:199
OpenMS::IonSource::GD_MS
glow discharge ionization
Definition: IonSource.h:112
OpenMS::IonSource::MOVINGWIRE
Moving wire.
Definition: IonSource.h:65
OpenMS::IonSource::THERMOSPRAYINLET
Thermo spray.
Definition: IonSource.h:68
OpenMS::IonSource::APPI
atmospheric pressure photo ionization
Definition: IonSource.h:100
OpenMS::IonSource::SILI
desorption/ionization on silicon
Definition: IonSource.h:132
OpenMS::IonSource::IONMETHODNULL
Unknown.
Definition: IonSource.h:82
int
OpenMS::IonSource::DIRECT
Direct.
Definition: IonSource.h:55
OpenMS::IonSource::AI
adiabatic ionization
Definition: IonSource.h:118
MetaInfoInterface.h
OpenMS::IonSource::JETSEPARATOR
Jet separator.
Definition: IonSource.h:61
OpenMS::IonSource::NICI
negative ion chemical ionization
Definition: IonSource.h:113
OpenMS::IonSource::INFUSION
Infusion.
Definition: IonSource.h:69
OpenMS::IonSource::ICP
inductively coupled plasma
Definition: IonSource.h:101
OpenMS::IonSource::SI
secondary ion MS
Definition: IonSource.h:92
OpenMS::IonSource::APCI
atmospheric pressure chemical ionization
Definition: IonSource.h:99
OpenMS::IonSource::PEI
penning ionization
Definition: IonSource.h:126
OpenMS::IonSource::INLETNULL
Unknown.
Definition: IonSource.h:54
OpenMS::MetaInfoInterface
Interface for classes that can store arbitrary meta information (Type-Name-Value tuples).
Definition: MetaInfoInterface.h:60
OpenMS::IonSource::NEGATIVE
Negative polarity.
Definition: IonSource.h:144
OpenMS::IonSource::AD
autodetachment
Definition: IonSource.h:120
OpenMS::IonSource::IonizationMethod
IonizationMethod
ionization method
Definition: IonSource.h:80
OpenMS::IonSource::MEMBRANE
Membrane inlet.
Definition: IonSource.h:72
KDTree::operator==
bool operator==(_Iterator< _Val, _Ref, _Ptr > const &, _Iterator< _Val, _Ref, _Ptr > const &)
Definition: KDTree.h:806
OpenMS::IonSource::SOI
soft ionization
Definition: IonSource.h:127