Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages

IonSource.h

Go to the documentation of this file.
00001 // --------------------------------------------------------------------------
00002 //                   OpenMS -- Open-Source Mass Spectrometry
00003 // --------------------------------------------------------------------------
00004 // Copyright The OpenMS Team -- Eberhard Karls University Tuebingen,
00005 // ETH Zurich, and Freie Universitaet Berlin 2002-2012.
00006 //
00007 // This software is released under a three-clause BSD license:
00008 //  * Redistributions of source code must retain the above copyright
00009 //    notice, this list of conditions and the following disclaimer.
00010 //  * Redistributions in binary form must reproduce the above copyright
00011 //    notice, this list of conditions and the following disclaimer in the
00012 //    documentation and/or other materials provided with the distribution.
00013 //  * Neither the name of any author or any participating institution
00014 //    may be used to endorse or promote products derived from this software
00015 //    without specific prior written permission.
00016 // For a full list of authors, refer to the file AUTHORS.
00017 // --------------------------------------------------------------------------
00018 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00019 // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
00020 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
00021 // ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING
00022 // INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00023 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00024 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00025 // OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
00026 // WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
00027 // OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
00028 // ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00029 //
00030 // --------------------------------------------------------------------------
00031 // $Maintainer: Andreas Bertsch $
00032 // $Authors: Marc Sturm $
00033 // --------------------------------------------------------------------------
00034 
00035 #ifndef OPENMS_METADATA_IONSOURCE_H
00036 #define OPENMS_METADATA_IONSOURCE_H
00037 
00038 #include <OpenMS/METADATA/MetaInfoInterface.h>
00039 
00040 namespace OpenMS
00041 {
00047   class OPENMS_DLLAPI IonSource :
00048     public MetaInfoInterface
00049   {
00050 public:
00052     enum InletType
00053     {
00054       INLETNULL,                                                        
00055       DIRECT,                                                               
00056       BATCH,                                                                
00057       CHROMATOGRAPHY,                                               
00058       PARTICLEBEAM,                                                     
00059       MEMBRANESEPARATOR,                                        
00060       OPENSPLIT,                                                        
00061       JETSEPARATOR,                                                     
00062       SEPTUM,                                                               
00063       RESERVOIR,                                                        
00064       MOVINGBELT,                                                       
00065       MOVINGWIRE,                                                       
00066       FLOWINJECTIONANALYSIS,                                
00067       ELECTROSPRAYINLET,                                        
00068       THERMOSPRAYINLET,                                             
00069       INFUSION,                                                             
00070       CONTINUOUSFLOWFASTATOMBOMBARDMENT,        
00071       INDUCTIVELYCOUPLEDPLASMA,                             
00072       MEMBRANE,                                                             
00073       NANOSPRAY,                                                        
00074       SIZE_OF_INLETTYPE
00075     };
00077     static const std::string NamesOfInletType[SIZE_OF_INLETTYPE];
00078 
00080     enum IonizationMethod
00081     {
00082       IONMETHODNULL,        
00083       ESI,                              
00084       EI,                               
00085       CI,                               
00086       FAB,                              
00087       TSP,                              
00088       LD,                               
00089       FD,                               
00090       FI,                               
00091       PD,                               
00092       SI,                               
00093       TI,                               
00094       API,                              
00095       ISI,                              
00096       CID,                              
00097       CAD,                              
00098       HN,                               
00099       APCI,                             
00100       APPI,                             
00101       ICP,                              
00102       NESI,                             
00103       MESI,                             
00104       SELDI,                        
00105       SEND,                             
00106       FIB,                              
00107       MALDI,                        
00108       MPI,                              
00109       DI,                               
00110       FA,                               
00111       FII,                              
00112       GD_MS,                        
00113       NICI,                             
00114       NRMS,                             
00115       PI,                               
00116       PYMS,                             
00117       REMPI,                        
00118       AI,                               
00119       ASI,                              
00120       AD,                               
00121       AUI,                              
00122       CEI,                              
00123       CHEMI,                        
00124       DISSI,                        
00125       LSI,                              
00126       PEI,                              
00127       SOI,                              
00128       SPI,                              
00129       SUI,                              
00130       VI,                               
00131       AP_MALDI,                     
00132       SILI,                             
00133       SALDI,                        
00134       SIZE_OF_IONIZATIONMETHOD
00135     };
00137     static const std::string NamesOfIonizationMethod[SIZE_OF_IONIZATIONMETHOD];
00138 
00140     enum Polarity
00141     {
00142       POLNULL,      
00143       POSITIVE,   
00144       NEGATIVE,   
00145       SIZE_OF_POLARITY
00146     };
00148     static const std::string NamesOfPolarity[SIZE_OF_POLARITY];
00149 
00151     IonSource();
00153     IonSource(const IonSource & source);
00155     ~IonSource();
00156 
00158     IonSource & operator=(const IonSource & source);
00159 
00161     bool operator==(const IonSource & rhs) const;
00163     bool operator!=(const IonSource & rhs) const;
00164 
00166     InletType getInletType() const;
00168     void setInletType(InletType inlet_type);
00169 
00171     IonizationMethod getIonizationMethod() const;
00173     void setIonizationMethod(IonizationMethod ionization_type);
00174 
00176     Polarity getPolarity() const;
00178     void setPolarity(Polarity polarity);
00179 
00190     Int getOrder() const;
00192     void setOrder(Int order);
00193 
00194 protected:
00195     InletType inlet_type_;
00196     IonizationMethod ionization_method_;
00197     Polarity polarity_;
00198     Int order_;
00199 
00200   };
00201 
00202 } // namespace OpenMS
00203 
00204 #endif // OPENMS_METADATA_IONSOURCE_H

OpenMS / TOPP release 1.10.0 Documentation generated on Thu Mar 7 2013 09:42:40 using doxygen 1.7.1