ProteoWizard
Main Page
Namespaces
Classes
Files
File List
File Members
pwiz
utility
chemistry
IsotopeCalculator.hpp
Go to the documentation of this file.
1
//
2
// $Id: IsotopeCalculator.hpp 1638 2009-12-18 23:26:34Z chambm $
3
//
4
//
5
// Original author: Darren Kessner <darren@proteowizard.org>
6
//
7
// Copyright 2006 Louis Warschaw Prostate Cancer Center
8
// Cedars Sinai Medical Center, Los Angeles, California 90048
9
//
10
// Licensed under the Apache License, Version 2.0 (the "License");
11
// you may not use this file except in compliance with the License.
12
// You may obtain a copy of the License at
13
//
14
// http://www.apache.org/licenses/LICENSE-2.0
15
//
16
// Unless required by applicable law or agreed to in writing, software
17
// distributed under the License is distributed on an "AS IS" BASIS,
18
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
// See the License for the specific language governing permissions and
20
// limitations under the License.
21
//
22
23
24
#ifndef _ISOTOPECALCULATOR_HPP_
25
#define _ISOTOPECALCULATOR_HPP_
26
27
28
#include "
pwiz/utility/misc/Export.hpp
"
29
#include "
Chemistry.hpp
"
30
#include <memory>
31
32
33
namespace
pwiz {
34
namespace
chemistry {
35
36
37
class
PWIZ_API_DECL
IsotopeCalculator
38
{
39
public
:
40
41
IsotopeCalculator
(
double
abundanceCutoff,
double
massPrecision);
42
~
IsotopeCalculator
();
43
44
enum
PWIZ_API_DECL
NormalizationFlags
45
{
46
NormalizeMass
= 0x01,
// shift masses -> monoisotopic_mass == 0
47
NormalizeAbundance = 0x02
// scale abundances -> sum(abundance[i]^2) == 1
48
};
49
50
MassDistribution
distribution(
const
Formula& formula,
51
int
chargeState = 0,
52
int
normalization = 0)
const
;
53
private
:
54
class
Impl;
55
std::auto_ptr<Impl>
impl_
;
56
57
// no copying
58
IsotopeCalculator
(
const
IsotopeCalculator
&);
59
IsotopeCalculator
& operator=(
const
IsotopeCalculator
);
60
};
61
62
63
}
// namespace chemistry
64
}
// namespace pwiz
65
66
67
#endif // _ISOTOPECALCULATOR_HPP_
Generated on Mon Nov 26 2012 18:05:49 for ProteoWizard by
1.8.1.1