ProteoWizard
pwiz
utility
chemistry
IsotopeTable.hpp
Go to the documentation of this file.
1
//
2
// $Id$
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 _ISOTOPETABLE_HPP_
25
#define _ISOTOPETABLE_HPP_
26
27
28
#include "
pwiz/utility/misc/Export.hpp
"
29
#include "
Chemistry.hpp
"
30
31
32
namespace
pwiz
{
33
namespace
chemistry {
34
35
36
/// Class representing a table of isotope distributions for collections of multiple
37
/// atoms of a single element; the table is computed on instantiation, based on the
38
/// element's mass distribution, a maximum atom count, and abundance cutoff value.
39
class
PWIZ_API_DECL
IsotopeTable
40
{
41
public
:
42
43
IsotopeTable
(
const
MassDistribution
& md,
int
maxAtomCount,
double
cutoff);
44
~
IsotopeTable
();
45
46
MassDistribution
distribution(
int
atomCount)
const
;
47
48
private
:
49
class
Impl;
50
std::auto_ptr<Impl>
impl_
;
51
52
// no copying
53
IsotopeTable
(
const
IsotopeTable
&);
54
IsotopeTable
& operator=(
const
IsotopeTable
&);
55
56
/// debugging
57
friend
PWIZ_API_DECL
std::ostream&
operator<<
(std::ostream& os,
const
IsotopeTable
& isotopeTable);
58
};
59
60
61
}
// namespace chemistry
62
}
// namespace pwiz
63
64
65
#endif // _ISOTOPETABLE_HPP_
66
pwiz
Definition:
ChromatogramList_Filter.hpp:36
PWIZ_API_DECL
#define PWIZ_API_DECL
Definition:
Export.hpp:32
Export.hpp
pwiz::chemistry::operator<<
PWIZ_API_DECL std::ostream & operator<<(std::ostream &os, const MassAbundance &ma)
pwiz::chemistry::MassDistribution
std::vector< MassAbundance > MassDistribution
struct for holding isotope distribution
Definition:
Chemistry.hpp:66
pwiz::chemistry::IsotopeTable
Class representing a table of isotope distributions for collections of multiple atoms of a single ele...
Definition:
IsotopeTable.hpp:39
pwiz::chemistry::IsotopeTable::impl_
std::auto_ptr< Impl > impl_
Definition:
IsotopeTable.hpp:49
Chemistry.hpp
Generated by
1.8.17