ProteoWizard
pwiz
analysis
spectrum_processing
SpectrumList_3D.hpp
Go to the documentation of this file.
1
//
2
// $Id$
3
//
4
//
5
// Original author: Matt Chambers <matt.chambers <a.t> vanderbilt.edu>
6
//
7
// Copyright 2008 Vanderbilt University - Nashville, TN 37232
8
//
9
// Licensed under the Apache License, Version 2.0 (the "License");
10
// you may not use this file except in compliance with the License.
11
// You may obtain a copy of the License at
12
//
13
// http://www.apache.org/licenses/LICENSE-2.0
14
//
15
// Unless required by applicable law or agreed to in writing, software
16
// distributed under the License is distributed on an "AS IS" BASIS,
17
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18
// See the License for the specific language governing permissions and
19
// limitations under the License.
20
//
21
22
23
#ifndef _SPECTRUMLIST_3D_HPP_
24
#define _SPECTRUMLIST_3D_HPP_
25
26
27
#include "
pwiz/utility/misc/Export.hpp
"
28
#include <boost/icl/interval_set.hpp>
29
#include "
pwiz/data/msdata/SpectrumListWrapper.hpp
"
30
#include <boost/container/flat_map.hpp>
31
32
namespace
pwiz
{
33
namespace
analysis {
34
35
typedef
boost::container::flat_map<double, boost::container::flat_map<double, float> >
Spectrum3D
;
36
typedef
boost::shared_ptr<Spectrum3D>
Spectrum3DPtr
;
37
38
/// SpectrumList implementation that can create 3D spectra of ion mobility drift time and m/z
39
class
PWIZ_API_DECL
SpectrumList_3D
:
public
msdata::SpectrumListWrapper
40
{
41
public
:
42
43
SpectrumList_3D
(
const
msdata::SpectrumListPtr
& inner);
44
45
static
bool
accept(
const
msdata::SpectrumListPtr
& inner);
46
virtual
msdata::SpectrumPtr
spectrum(
size_t
index,
bool
getBinaryData =
false
)
const
;
47
48
/// creates a 3d spectrum at the given scan start time (specified in seconds) and including the given drift time ranges (specified in milliseconds)
49
virtual
Spectrum3DPtr
spectrum3d(
double
scanStartTime,
const
boost::icl::interval_set<double>& driftTimeRanges)
const
;
50
51
private
:
52
int
mode_
;
53
};
54
55
56
}
// namespace analysis
57
}
// namespace pwiz
58
59
60
#endif // _SPECTRUMLIST_3D_HPP_
pwiz::msdata::SpectrumListPtr
boost::shared_ptr< SpectrumList > SpectrumListPtr
Definition:
MSData.hpp:711
pwiz::analysis::SpectrumList_3D
SpectrumList implementation that can create 3D spectra of ion mobility drift time and m/z.
Definition:
SpectrumList_3D.hpp:39
pwiz
Definition:
ChromatogramList_Filter.hpp:36
pwiz::msdata::SpectrumListWrapper
Inheritable pass-through implementation for wrapping a SpectrumList.
Definition:
SpectrumListWrapper.hpp:37
PWIZ_API_DECL
#define PWIZ_API_DECL
Definition:
Export.hpp:32
Export.hpp
pwiz::analysis::Spectrum3D
boost::container::flat_map< double, boost::container::flat_map< double, float > > Spectrum3D
Definition:
SpectrumList_3D.hpp:35
pwiz::analysis::SpectrumList_3D::mode_
int mode_
Definition:
SpectrumList_3D.hpp:52
pwiz::msdata::SpectrumPtr
boost::shared_ptr< Spectrum > SpectrumPtr
Definition:
MSData.hpp:573
pwiz::analysis::Spectrum3DPtr
boost::shared_ptr< Spectrum3D > Spectrum3DPtr
Definition:
SpectrumList_3D.hpp:36
SpectrumListWrapper.hpp
Generated by
1.8.17