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 
38 
39 namespace OpenMS
40 {
41 
47  class OPENMS_DLLAPI IonSource :
48  public MetaInfoInterface
49  {
50 public:
52  enum InletType
53  {
74  SIZE_OF_INLETTYPE
75  };
77  static const std::string NamesOfInletType[SIZE_OF_INLETTYPE];
78 
81  {
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,
101  ICP,
106  FIB,
108  MPI,
109  DI,
110  FA,
111  FII,
115  PI,
118  AI,
119  ASI,
120  AD,
121  AUI,
122  CEI,
125  LSI,
126  PEI,
127  SOI,
128  SPI,
129  SUI,
130  VI,
134  SIZE_OF_IONIZATIONMETHOD
135  };
137  static const std::string NamesOfIonizationMethod[SIZE_OF_IONIZATIONMETHOD];
138 
140  enum Polarity
141  {
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:
203 
204  };
205 
206 } // namespace OpenMS
207 
Reservoir.
Definition: IonSource.h:63
fast atom bombardment
Definition: IonSource.h:86
field ionization
Definition: IonSource.h:111
thermospray
Definition: IonSource.h:87
Definition: IonSource.h:98
Membrane separator.
Definition: IonSource.h:59
Nano electrospray ionization.
Definition: IonSource.h:102
Polarity
Polarity of the ion source.
Definition: IonSource.h:140
resonance enhanced multiphoton ionization
Definition: IonSource.h:117
Septum.
Definition: IonSource.h:62
Positive polarity.
Definition: IonSource.h:143
Electro spray.
Definition: IonSource.h:67
desorption ionization
Definition: IonSource.h:109
autoionization
Definition: IonSource.h:121
field desorption
Definition: IonSource.h:89
Int order_
Definition: IonSource.h:202
atmospheric pressure matrix-assisted laser desorption ionization
Definition: IonSource.h:131
flowing afterglow
Definition: IonSource.h:110
laser desorption
Definition: IonSource.h:88
chemi-ionization
Definition: IonSource.h:123
liquid secondary ionization
Definition: IonSource.h:125
Multiphoton ionization.
Definition: IonSource.h:108
Description of an ion source (part of a MS Instrument)
Definition: IonSource.h:47
bool operator!=(_Iterator< _Val, _Ref, _Ptr > const &, _Iterator< _Val, _Ref, _Ptr > const &)
Definition: KDTree.h:824
associative ionization
Definition: IonSource.h:119
Surface enhanced laser desorption ionization.
Definition: IonSource.h:104
Open split.
Definition: IonSource.h:60
vertical ionization
Definition: IonSource.h:130
Micro electrospray ionization.
Definition: IonSource.h:103
thermal ionization
Definition: IonSource.h:93
Chromatography (liquid)
Definition: IonSource.h:57
Batch (e.g. in MALDI)
Definition: IonSource.h:56
Moving belt.
Definition: IonSource.h:64
Matrix-assisted laser desorption ionization.
Definition: IonSource.h:107
Unknown.
Definition: IonSource.h:142
collision activated decomposition
Definition: IonSource.h:97
Polarity polarity_
Definition: IonSource.h:201
photoionization
Definition: IonSource.h:115
collision induced decomposition
Definition: IonSource.h:96
dissociative ionization
Definition: IonSource.h:124
neutralization reionization mass spectrometry
Definition: IonSource.h:114
electrospray ionisation
Definition: IonSource.h:83
plasma desorption
Definition: IonSource.h:91
Surface enhanced neat desorption.
Definition: IonSource.h:105
IonizationMethod ionization_method_
Definition: IonSource.h:200
Particle beam.
Definition: IonSource.h:58
surface-assisted laser desorption ionization
Definition: IonSource.h:133
Continuous flow fast atom bombardment.
Definition: IonSource.h:70
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:46
flame ionization
Definition: IonSource.h:90
spark ionization
Definition: IonSource.h:128
Definition: IonSource.h:95
Inductively coupled plasma.
Definition: IonSource.h:71
InletType
inlet type
Definition: IonSource.h:52
chemical ionisation
Definition: IonSource.h:85
pyrolysis mass spectrometry
Definition: IonSource.h:116
charge exchange ionization
Definition: IonSource.h:122
electron ionization
Definition: IonSource.h:84
surface ionization
Definition: IonSource.h:129
Fast ion bombardment.
Definition: IonSource.h:106
Flow injection analysis.
Definition: IonSource.h:66
atmospheric pressure ionisation
Definition: IonSource.h:94
Nanospray inlet.
Definition: IonSource.h:73
InletType inlet_type_
Definition: IonSource.h:199
glow discharge ionization
Definition: IonSource.h:112
Moving wire.
Definition: IonSource.h:65
Thermo spray.
Definition: IonSource.h:68
atmospheric pressure photo ionization
Definition: IonSource.h:100
desorption/ionization on silicon
Definition: IonSource.h:132
Unknown.
Definition: IonSource.h:82
Direct.
Definition: IonSource.h:55
adiabatic ionization
Definition: IonSource.h:118
Jet separator.
Definition: IonSource.h:61
negative ion chemical ionization
Definition: IonSource.h:113
Infusion.
Definition: IonSource.h:69
inductively coupled plasma
Definition: IonSource.h:101
secondary ion MS
Definition: IonSource.h:92
atmospheric pressure chemical ionization
Definition: IonSource.h:99
penning ionization
Definition: IonSource.h:126
Unknown.
Definition: IonSource.h:54
Interface for classes that can store arbitrary meta information (Type-Name-Value tuples).
Definition: MetaInfoInterface.h:60
Negative polarity.
Definition: IonSource.h:144
autodetachment
Definition: IonSource.h:120
IonizationMethod
ionization method
Definition: IonSource.h:80
Membrane inlet.
Definition: IonSource.h:72
bool operator==(_Iterator< _Val, _Ref, _Ptr > const &, _Iterator< _Val, _Ref, _Ptr > const &)
Definition: KDTree.h:806
soft ionization
Definition: IonSource.h:127