OpenMS
Tagging.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 {
23  class OPENMS_DLLAPI Tagging :
24  public Modification
25  {
26 public:
28  enum IsotopeVariant {LIGHT, HEAVY, SIZE_OF_ISOTOPEVARIANT};
30  static const std::string NamesOfIsotopeVariant[SIZE_OF_ISOTOPEVARIANT];
31 
35  Tagging(const Tagging &) = default;
37  Tagging(Tagging&&) = default;
39  ~Tagging() override;
40 
42  Tagging & operator=(const Tagging &) = default;
44  Tagging& operator=(Tagging&&) & = default;
45 
52  bool operator==(const SampleTreatment & rhs) const override;
53 
55  SampleTreatment * clone() const override;
56 
58  double getMassShift() const;
60  void setMassShift(double mass_shift);
61 
63  const IsotopeVariant & getVariant() const;
65  void setVariant(const IsotopeVariant & variant);
66 
67 protected:
68  double mass_shift_;
70  };
71 } // namespace OpenMS
72 
Meta information about chemical modification of a sample.
Definition: Modification.h:27
Base class for sample treatments (Digestion, Modification, Tagging, ...)
Definition: SampleTreatment.h:27
Meta information about tagging of a sample e.g. ICAT labeling.
Definition: Tagging.h:25
Tagging & operator=(const Tagging &)=default
Assignment operator.
~Tagging() override
Destructor.
Tagging & operator=(Tagging &&) &=default
Move assignment operator.
Tagging(const Tagging &)=default
Copy constructor.
Tagging()
Default constructor.
Tagging(Tagging &&)=default
Move constructor.
double mass_shift_
Definition: Tagging.h:68
void setVariant(const IsotopeVariant &variant)
sets the isotope variant of the tag
IsotopeVariant
Isotope variants (light and heavy)
Definition: Tagging.h:28
@ HEAVY
Definition: Tagging.h:28
double getMassShift() const
returns the mass difference between light and heavy variant (default is 0.0)
bool operator==(const SampleTreatment &rhs) const override
Equality operator.
IsotopeVariant variant_
Definition: Tagging.h:69
SampleTreatment * clone() const override
clone method. See SampleTreatment
const IsotopeVariant & getVariant() const
returns the isotope variant of the tag (default is LIGHT)
void setMassShift(double mass_shift)
sets the mass difference between light and heavy variant
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:22