OpenMS
IonSource.h
Go to the documentation of this file.
1 // Copyright (c) 2002-2023, The OpenMS Team -- EKU Tuebingen, ETH Zurich, and FU Berlin
2 // SPDX-License-Identifier: BSD-3-Clause
3 //
4 // --------------------------------------------------------------------------
5 // $Maintainer: Timo Sachsenberg $
6 // $Authors: Marc Sturm $
7 // --------------------------------------------------------------------------
8 
9 #pragma once
10 
12 
13 namespace OpenMS
14 {
15 
21  class OPENMS_DLLAPI IonSource :
22  public MetaInfoInterface
23  {
24 public:
26  enum InletType
27  {
48  SIZE_OF_INLETTYPE
49  };
51  static const std::string NamesOfInletType[SIZE_OF_INLETTYPE];
52 
55  {
57  ESI,
58  EI,
59  CI,
60  FAB,
61  TSP,
62  LD,
63  FD,
64  FI,
65  PD,
66  SI,
67  TI,
68  API,
69  ISI,
70  CID,
71  CAD,
72  HN,
73  APCI,
74  APPI,
75  ICP,
76  NESI,
77  MESI,
79  SEND,
80  FIB,
82  MPI,
83  DI,
84  FA,
85  FII,
87  NICI,
88  NRMS,
89  PI,
90  PYMS,
92  AI,
93  ASI,
94  AD,
95  AUI,
96  CEI,
99  LSI,
100  PEI,
101  SOI,
102  SPI,
103  SUI,
104  VI,
108  SIZE_OF_IONIZATIONMETHOD
109  };
111  static const std::string NamesOfIonizationMethod[SIZE_OF_IONIZATIONMETHOD];
112 
114  enum Polarity
115  {
119  SIZE_OF_POLARITY
120  };
122  static const std::string NamesOfPolarity[SIZE_OF_POLARITY];
123 
127  IonSource(const IonSource &) = default;
129  IonSource(IonSource&&) = default;
132 
134  IonSource & operator=(const IonSource &) = default;
136  IonSource& operator=(IonSource&&) & = default;
137 
139  bool operator==(const IonSource & rhs) const;
141  bool operator!=(const IonSource & rhs) const;
142 
146  void setInletType(InletType inlet_type);
147 
151  void setIonizationMethod(IonizationMethod ionization_type);
152 
156  void setPolarity(Polarity polarity);
157 
168  Int getOrder() const;
170  void setOrder(Int order);
171 
172 protected:
177 
178  };
179 
180 } // namespace OpenMS
181 
Description of an ion source (part of a MS Instrument)
Definition: IonSource.h:23
InletType
inlet type
Definition: IonSource.h:27
@ JETSEPARATOR
Jet separator.
Definition: IonSource.h:35
@ CHROMATOGRAPHY
Chromatography (liquid)
Definition: IonSource.h:31
@ MEMBRANE
Membrane inlet.
Definition: IonSource.h:46
@ MEMBRANESEPARATOR
Membrane separator.
Definition: IonSource.h:33
@ DIRECT
Direct.
Definition: IonSource.h:29
@ NANOSPRAY
Nanospray inlet.
Definition: IonSource.h:47
@ INFUSION
Infusion.
Definition: IonSource.h:43
@ MOVINGWIRE
Moving wire.
Definition: IonSource.h:39
@ PARTICLEBEAM
Particle beam.
Definition: IonSource.h:32
@ FLOWINJECTIONANALYSIS
Flow injection analysis.
Definition: IonSource.h:40
@ RESERVOIR
Reservoir.
Definition: IonSource.h:37
@ OPENSPLIT
Open split.
Definition: IonSource.h:34
@ INDUCTIVELYCOUPLEDPLASMA
Inductively coupled plasma.
Definition: IonSource.h:45
@ ELECTROSPRAYINLET
Electro spray.
Definition: IonSource.h:41
@ CONTINUOUSFLOWFASTATOMBOMBARDMENT
Continuous flow fast atom bombardment.
Definition: IonSource.h:44
@ BATCH
Batch (e.g. in MALDI)
Definition: IonSource.h:30
@ SEPTUM
Septum.
Definition: IonSource.h:36
@ INLETNULL
Unknown.
Definition: IonSource.h:28
@ THERMOSPRAYINLET
Thermo spray.
Definition: IonSource.h:42
@ MOVINGBELT
Moving belt.
Definition: IonSource.h:38
void setPolarity(Polarity polarity)
sets the ionization mode
Int getOrder() const
returns the position of this part in the whole Instrument.
~IonSource()
Destructor.
void setIonizationMethod(IonizationMethod ionization_type)
sets the ionization method
IonSource()
Constructor.
void setInletType(InletType inlet_type)
sets the inlet type
IonSource(const IonSource &)=default
Copy constructor.
void setOrder(Int order)
sets the order
Polarity getPolarity() const
returns the ionization mode
IonizationMethod ionization_method_
Definition: IonSource.h:174
Int order_
Definition: IonSource.h:176
InletType getInletType() const
returns the inlet type
Polarity
Polarity of the ion source.
Definition: IonSource.h:115
@ POSITIVE
Positive polarity.
Definition: IonSource.h:117
@ NEGATIVE
Negative polarity.
Definition: IonSource.h:118
@ POLNULL
Unknown.
Definition: IonSource.h:116
IonizationMethod
ionization method
Definition: IonSource.h:55
@ PEI
penning ionization
Definition: IonSource.h:100
@ NESI
Nano electrospray ionization.
Definition: IonSource.h:76
@ CAD
collision activated decomposition
Definition: IonSource.h:71
@ TI
thermal ionization
Definition: IonSource.h:67
@ NICI
negative ion chemical ionization
Definition: IonSource.h:87
@ LD
laser desorption
Definition: IonSource.h:62
@ SELDI
Surface enhanced laser desorption ionization.
Definition: IonSource.h:78
@ HN
Definition: IonSource.h:72
@ EI
electron ionization
Definition: IonSource.h:58
@ CEI
charge exchange ionization
Definition: IonSource.h:96
@ AUI
autoionization
Definition: IonSource.h:95
@ ICP
inductively coupled plasma
Definition: IonSource.h:75
@ IONMETHODNULL
Unknown.
Definition: IonSource.h:56
@ ESI
electrospray ionisation
Definition: IonSource.h:57
@ DI
desorption ionization
Definition: IonSource.h:83
@ GD_MS
glow discharge ionization
Definition: IonSource.h:86
@ ISI
Definition: IonSource.h:69
@ FA
flowing afterglow
Definition: IonSource.h:84
@ PI
photoionization
Definition: IonSource.h:89
@ APPI
atmospheric pressure photo ionization
Definition: IonSource.h:74
@ SUI
surface ionization
Definition: IonSource.h:103
@ MESI
Micro electrospray ionization.
Definition: IonSource.h:77
@ SEND
Surface enhanced neat desorption.
Definition: IonSource.h:79
@ NRMS
neutralization reionization mass spectrometry
Definition: IonSource.h:88
@ SI
secondary ion MS
Definition: IonSource.h:66
@ API
atmospheric pressure ionisation
Definition: IonSource.h:68
@ FII
field ionization
Definition: IonSource.h:85
@ SOI
soft ionization
Definition: IonSource.h:101
@ VI
vertical ionization
Definition: IonSource.h:104
@ AI
adiabatic ionization
Definition: IonSource.h:92
@ FI
flame ionization
Definition: IonSource.h:64
@ APCI
atmospheric pressure chemical ionization
Definition: IonSource.h:73
@ SALDI
surface-assisted laser desorption ionization
Definition: IonSource.h:107
@ REMPI
resonance enhanced multiphoton ionization
Definition: IonSource.h:91
@ PYMS
pyrolysis mass spectrometry
Definition: IonSource.h:90
@ CID
collision induced decomposition
Definition: IonSource.h:70
@ FAB
fast atom bombardment
Definition: IonSource.h:60
@ LSI
liquid secondary ionization
Definition: IonSource.h:99
@ TSP
thermospray
Definition: IonSource.h:61
@ ASI
associative ionization
Definition: IonSource.h:93
@ AP_MALDI
atmospheric pressure matrix-assisted laser desorption ionization
Definition: IonSource.h:105
@ CHEMI
chemi-ionization
Definition: IonSource.h:97
@ AD
autodetachment
Definition: IonSource.h:94
@ MPI
Multiphoton ionization.
Definition: IonSource.h:82
@ FIB
Fast ion bombardment.
Definition: IonSource.h:80
@ CI
chemical ionisation
Definition: IonSource.h:59
@ PD
plasma desorption
Definition: IonSource.h:65
@ SPI
spark ionization
Definition: IonSource.h:102
@ MALDI
Matrix-assisted laser desorption ionization.
Definition: IonSource.h:81
@ FD
field desorption
Definition: IonSource.h:63
@ SILI
desorption/ionization on silicon
Definition: IonSource.h:106
@ DISSI
dissociative ionization
Definition: IonSource.h:98
IonSource & operator=(const IonSource &)=default
Assignment operator.
IonizationMethod getIonizationMethod() const
returns the ionization method
IonSource & operator=(IonSource &&) &=default
Move assignment operator.
bool operator==(const IonSource &rhs) const
Equality operator.
Polarity polarity_
Definition: IonSource.h:175
InletType inlet_type_
Definition: IonSource.h:173
IonSource(IonSource &&)=default
Move constructor.
bool operator!=(const IonSource &rhs) const
Equality operator.
Interface for classes that can store arbitrary meta information (Type-Name-Value tuples).
Definition: MetaInfoInterface.h:35
int Int
Signed integer type.
Definition: Types.h:76
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:22