OpenMS
Instrument Class Reference

Description of a MS instrument. More...

#include <OpenMS/METADATA/Instrument.h>

Inheritance diagram for Instrument:
[legend]
Collaboration diagram for Instrument:
[legend]

Public Types

enum  IonOpticsType {
  UNKNOWN , MAGNETIC_DEFLECTION , DELAYED_EXTRACTION , COLLISION_QUADRUPOLE ,
  SELECTED_ION_FLOW_TUBE , TIME_LAG_FOCUSING , REFLECTRON , EINZEL_LENS ,
  FIRST_STABILITY_REGION , FRINGING_FIELD , KINETIC_ENERGY_ANALYZER , STATIC_FIELD ,
  SIZE_OF_IONOPTICSTYPE
}
 ion optics type More...
 

Public Member Functions

 Instrument ()
 Constructor. More...
 
 Instrument (const Instrument &)=default
 Copy constructor. More...
 
 Instrument (Instrument &&)=default
 Move constructor. More...
 
 ~Instrument ()
 Destructor. More...
 
Instrumentoperator= (const Instrument &)=default
 Assignment operator. More...
 
Instrumentoperator= (Instrument &&) &=default
 Move assignment operator. More...
 
bool operator== (const Instrument &rhs) const
 Equality operator. More...
 
bool operator!= (const Instrument &rhs) const
 Equality operator. More...
 
const StringgetName () const
 returns the name of the instrument More...
 
void setName (const String &name)
 sets the name of the instrument More...
 
const StringgetVendor () const
 returns the instrument vendor More...
 
void setVendor (const String &vendor)
 sets the instrument vendor More...
 
const StringgetModel () const
 returns the instrument model More...
 
void setModel (const String &model)
 sets the instrument model More...
 
const StringgetCustomizations () const
 returns a description of customizations More...
 
void setCustomizations (const String &customizations)
 sets a description of customizations More...
 
const std::vector< IonSource > & getIonSources () const
 returns a const reference to the ion source list More...
 
std::vector< IonSource > & getIonSources ()
 returns a mutable reference to the ion source list More...
 
void setIonSources (const std::vector< IonSource > &ion_sources)
 sets the ion source list More...
 
const std::vector< MassAnalyzer > & getMassAnalyzers () const
 returns a const reference to the mass analyzer list More...
 
std::vector< MassAnalyzer > & getMassAnalyzers ()
 returns a mutable reference to the mass analyzer list More...
 
void setMassAnalyzers (const std::vector< MassAnalyzer > &mass_analyzers)
 sets the mass analyzer list More...
 
const std::vector< IonDetector > & getIonDetectors () const
 returns a const reference to the ion detector list More...
 
std::vector< IonDetector > & getIonDetectors ()
 returns a mutable reference to the ion detector list More...
 
void setIonDetectors (const std::vector< IonDetector > &ion_detectors)
 sets the ion detector list More...
 
const SoftwaregetSoftware () const
 returns a const reference to the instrument software More...
 
SoftwaregetSoftware ()
 returns a mutable reference to the instrument software More...
 
void setSoftware (const Software &software)
 sets the instrument software More...
 
IonOpticsType getIonOptics () const
 returns the ion optics type More...
 
void setIonOptics (IonOpticsType ion_optics)
 sets the ion optics type More...
 
- Public Member Functions inherited from MetaInfoInterface
 MetaInfoInterface ()
 Constructor. More...
 
 MetaInfoInterface (const MetaInfoInterface &rhs)
 Copy constructor. More...
 
 MetaInfoInterface (MetaInfoInterface &&) noexcept
 Move constructor. More...
 
 ~MetaInfoInterface ()
 Destructor. More...
 
MetaInfoInterfaceoperator= (const MetaInfoInterface &rhs)
 Assignment operator. More...
 
MetaInfoInterfaceoperator= (MetaInfoInterface &&) noexcept
 Move assignment operator. More...
 
void swap (MetaInfoInterface &rhs)
 Swap contents. More...
 
bool operator== (const MetaInfoInterface &rhs) const
 Equality operator. More...
 
bool operator!= (const MetaInfoInterface &rhs) const
 Equality operator. More...
 
const DataValuegetMetaValue (const String &name) const
 Returns the value corresponding to a string, or DataValue::EMPTY if not found. More...
 
DataValue getMetaValue (const String &name, const DataValue &default_value) const
 Returns the value corresponding to a string, or a default value (e.g.: DataValue::EMPTY) if not found
More...
 
const DataValuegetMetaValue (UInt index) const
 Returns the value corresponding to the index, or DataValue::EMPTY if not found. More...
 
DataValue getMetaValue (UInt index, const DataValue &default_value) const
 Returns the value corresponding to the index, or a default value (e.g.: DataValue::EMPTY) if not found
More...
 
bool metaValueExists (const String &name) const
 Returns whether an entry with the given name exists. More...
 
bool metaValueExists (UInt index) const
 Returns whether an entry with the given index exists. More...
 
void setMetaValue (const String &name, const DataValue &value)
 Sets the DataValue corresponding to a name. More...
 
void setMetaValue (UInt index, const DataValue &value)
 Sets the DataValue corresponding to an index. More...
 
void removeMetaValue (const String &name)
 Removes the DataValue corresponding to name if it exists. More...
 
void removeMetaValue (UInt index)
 Removes the DataValue corresponding to index if it exists. More...
 
void addMetaValues (const MetaInfoInterface &from)
 
void getKeys (std::vector< String > &keys) const
 Fills the given vector with a list of all keys for which a value is set. More...
 
void getKeys (std::vector< UInt > &keys) const
 Fills the given vector with a list of all keys for which a value is set. More...
 
bool isMetaEmpty () const
 Returns if the MetaInfo is empty. More...
 
void clearMetaInfo ()
 Removes all meta values. More...
 

Static Public Member Functions

static StringList getAllNamesOfIonOpticsType ()
 returns all ion optics type names known to OpenMS More...
 
- Static Public Member Functions inherited from MetaInfoInterface
static MetaInfoRegistrymetaRegistry ()
 Returns a reference to the MetaInfoRegistry. More...
 

Static Public Attributes

static const std::string NamesOfIonOpticsType [SIZE_OF_IONOPTICSTYPE]
 Names of inlet types. More...
 

Protected Attributes

String name_
 
String vendor_
 
String model_
 
String customizations_
 
std::vector< IonSourceion_sources_
 
std::vector< MassAnalyzermass_analyzers_
 
std::vector< IonDetectorion_detectors_
 
Software software_
 
IonOpticsType ion_optics_
 
- Protected Attributes inherited from MetaInfoInterface
MetaInfometa_
 Pointer to the MetaInfo object (0 by default) More...
 

Additional Inherited Members

- Protected Member Functions inherited from MetaInfoInterface
void createIfNotExists_ ()
 Creates the MetaInfo object if it does not exist. More...
 

Detailed Description

Description of a MS instrument.

It contains information like vendor, model, ion source(s), mass analyzer(s), and ion detector(s).

The parts (IonSource, MassAnalyzer, IonDetector) all have a order member. The order can be ignored, as long the instrument has this default setup:

  • one ion source
  • one or many mass analyzers
  • one ion detector

For more complex instruments, the order should be defined.

Member Enumeration Documentation

◆ IonOpticsType

ion optics type

Enumerator
UNKNOWN 

unknown

MAGNETIC_DEFLECTION 

magnetic deflection

DELAYED_EXTRACTION 

delayed extraction

COLLISION_QUADRUPOLE 

collision quadrupole

SELECTED_ION_FLOW_TUBE 

selected ion flow tube

TIME_LAG_FOCUSING 

time lag focusing

REFLECTRON 

reflectron

EINZEL_LENS 

einzel lens

FIRST_STABILITY_REGION 

first stability region

FRINGING_FIELD 

fringing field

KINETIC_ENERGY_ANALYZER 

kinetic energy analyzer

STATIC_FIELD 

static field

SIZE_OF_IONOPTICSTYPE 

Constructor & Destructor Documentation

◆ Instrument() [1/3]

Constructor.

◆ Instrument() [2/3]

Instrument ( const Instrument )
default

Copy constructor.

◆ Instrument() [3/3]

Instrument ( Instrument &&  )
default

Move constructor.

◆ ~Instrument()

~Instrument ( )

Destructor.

Member Function Documentation

◆ getAllNamesOfIonOpticsType()

static StringList getAllNamesOfIonOpticsType ( )
static

returns all ion optics type names known to OpenMS

◆ getCustomizations()

const String& getCustomizations ( ) const

returns a description of customizations

◆ getIonDetectors() [1/2]

std::vector<IonDetector>& getIonDetectors ( )

returns a mutable reference to the ion detector list

◆ getIonDetectors() [2/2]

const std::vector<IonDetector>& getIonDetectors ( ) const

returns a const reference to the ion detector list

◆ getIonOptics()

IonOpticsType getIonOptics ( ) const

returns the ion optics type

◆ getIonSources() [1/2]

std::vector<IonSource>& getIonSources ( )

returns a mutable reference to the ion source list

◆ getIonSources() [2/2]

const std::vector<IonSource>& getIonSources ( ) const

returns a const reference to the ion source list

Referenced by XMassFile::importExperimentalSettings().

◆ getMassAnalyzers() [1/2]

std::vector<MassAnalyzer>& getMassAnalyzers ( )

returns a mutable reference to the mass analyzer list

◆ getMassAnalyzers() [2/2]

const std::vector<MassAnalyzer>& getMassAnalyzers ( ) const

returns a const reference to the mass analyzer list

Referenced by XMassFile::importExperimentalSettings().

◆ getModel()

const String& getModel ( ) const

returns the instrument model

◆ getName()

const String& getName ( ) const

returns the name of the instrument

◆ getSoftware() [1/2]

Software& getSoftware ( )

returns a mutable reference to the instrument software

◆ getSoftware() [2/2]

const Software& getSoftware ( ) const

returns a const reference to the instrument software

◆ getVendor()

const String& getVendor ( ) const

returns the instrument vendor

◆ operator!=()

bool operator!= ( const Instrument rhs) const

Equality operator.

◆ operator=() [1/2]

Instrument& operator= ( const Instrument )
default

Assignment operator.

◆ operator=() [2/2]

Instrument& operator= ( Instrument &&  ) &
default

Move assignment operator.

◆ operator==()

bool operator== ( const Instrument rhs) const

Equality operator.

◆ setCustomizations()

void setCustomizations ( const String customizations)

sets a description of customizations

◆ setIonDetectors()

void setIonDetectors ( const std::vector< IonDetector > &  ion_detectors)

sets the ion detector list

◆ setIonOptics()

void setIonOptics ( IonOpticsType  ion_optics)

sets the ion optics type

◆ setIonSources()

void setIonSources ( const std::vector< IonSource > &  ion_sources)

sets the ion source list

◆ setMassAnalyzers()

void setMassAnalyzers ( const std::vector< MassAnalyzer > &  mass_analyzers)

sets the mass analyzer list

◆ setModel()

void setModel ( const String model)

sets the instrument model

Referenced by XMassFile::importExperimentalSettings().

◆ setName()

void setName ( const String name)

sets the name of the instrument

Referenced by XMassFile::importExperimentalSettings().

◆ setSoftware()

void setSoftware ( const Software software)

sets the instrument software

◆ setVendor()

void setVendor ( const String vendor)

sets the instrument vendor

Referenced by XMassFile::importExperimentalSettings().

Member Data Documentation

◆ customizations_

String customizations_
protected

◆ ion_detectors_

std::vector<IonDetector> ion_detectors_
protected

◆ ion_optics_

IonOpticsType ion_optics_
protected

◆ ion_sources_

std::vector<IonSource> ion_sources_
protected

◆ mass_analyzers_

std::vector<MassAnalyzer> mass_analyzers_
protected

◆ model_

String model_
protected

◆ name_

String name_
protected

◆ NamesOfIonOpticsType

const std::string NamesOfIonOpticsType[SIZE_OF_IONOPTICSTYPE]
static

Names of inlet types.

◆ software_

Software software_
protected

◆ vendor_

String vendor_
protected