Home
·
Classes
·
Annotated Classes
·
Modules
·
Members
·
Namespaces
·
Related Pages
OpenMS
DATASTRUCTURES
Adduct.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-2015.
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: Chris Bielow $
32
// $Authors: $
33
// --------------------------------------------------------------------------
34
35
#ifndef OPENMS_DATASTRUCTURES_ADDUCT_H
36
#define OPENMS_DATASTRUCTURES_ADDUCT_H
37
38
#include <
OpenMS/OpenMSConfig.h
>
39
#include <
OpenMS/CONCEPT/Types.h
>
40
#include <
OpenMS/DATASTRUCTURES/String.h
>
41
42
namespace
OpenMS
43
{
44
45
class
OPENMS_DLLAPI
Adduct
46
{
47
public
:
48
49
typedef
std::vector<Adduct>
AdductsType
;
50
52
Adduct
();
53
55
Adduct
(
Int
charge);
56
58
Adduct
(
Int
charge,
Int
amount,
double
singleMass,
String
formula,
double
log_prob,
double
rt_shift,
const
String
label =
""
);
59
61
Adduct
operator*
(
const
Int
m)
const
;
63
Adduct
operator+(
const
Adduct
& rhs);
65
void
operator+=(
const
Adduct
& rhs);
66
67
69
friend
OPENMS_DLLAPI std::ostream&
operator<<
(std::ostream& os,
const
Adduct
& a);
70
72
friend
OPENMS_DLLAPI
bool
operator==(
const
Adduct
& a,
const
Adduct
& b);
73
75
const
Int
& getCharge()
const
;
76
77
void
setCharge(
const
Int
& charge);
78
79
const
Int
& getAmount()
const
;
80
void
setAmount(
const
Int
& amount);
81
82
const
double
& getSingleMass()
const
;
83
void
setSingleMass(
const
double
& singleMass);
84
85
const
double
& getLogProb()
const
;
86
void
setLogProb(
const
double
& log_prob);
87
88
const
String
& getFormula()
const
;
89
void
setFormula(
const
String
& formula);
90
91
const
double
& getRTShift()
const
;
92
const
String
& getLabel()
const
;
93
//}
94
95
private
:
96
Int
charge_
;
//< usually +1
97
Int
amount_
;
//< number of entities
98
double
singleMass_
;
//< mass of a single entity
99
double
log_prob_
;
//< log probability of observing a single entity of this adduct
100
String
formula_
;
//< chemical formula (parsable by EmpiricalFormula)
101
double
rt_shift_
;
//< RT shift induced by a single entity of this adduct (this is for adducts attached prior to ESI, e.g. labeling)
102
String
label_
;
//< Label for this adduct (can be used to indicate heavy labels)
103
104
String
checkFormula_(
const
String
& formula);
105
106
};
107
108
}
// namespace OpenMS
109
110
111
#endif
Types.h
OpenMS::String
A more convenient string class.
Definition:
String.h:57
OpenMS::Adduct::log_prob_
double log_prob_
Definition:
Adduct.h:99
OpenMS::Adduct::charge_
Int charge_
Definition:
Adduct.h:96
OpenMS::Adduct::label_
String label_
Definition:
Adduct.h:102
OpenMS
Main OpenMS namespace.
Definition:
FeatureDeconvolution.h:47
OpenMS::Adduct::AdductsType
std::vector< Adduct > AdductsType
Definition:
Adduct.h:49
OpenMSConfig.h
OpenMS::Adduct::amount_
Int amount_
Definition:
Adduct.h:97
OpenMS::operator<<
std::ostream & operator<<(std::ostream &os, const AccurateMassSearchResult &amsr)
OpenMS::Adduct
Definition:
Adduct.h:45
OpenMS::operator*
DPosition< D, TCoordinateType > operator*(DPosition< D, TCoordinateType > position, typename DPosition< D, TCoordinateType >::CoordinateType scalar)
Scalar multiplication (a bit inefficient)
Definition:
DPosition.h:421
OpenMS::Adduct::formula_
String formula_
Definition:
Adduct.h:100
OpenMS::Adduct::singleMass_
double singleMass_
Definition:
Adduct.h:98
OpenMS::Adduct::rt_shift_
double rt_shift_
Definition:
Adduct.h:101
OpenMS::Int
int Int
Signed integer type.
Definition:
Types.h:96
String.h
OpenMS / TOPP release 2.0.0
Documentation generated on Fri May 29 2015 17:20:21 using doxygen 1.8.9.1