ProteoWizard
pwiz
data
vendor_readers
Thermo
ChromatogramList_Thermo.hpp
Go to the documentation of this file.
1
//
2
// $Id$
3
//
4
//
5
// Original author: Darren Kessner <darren@proteowizard.org>
6
//
7
// Copyright 2008 Spielberg Family Center for Applied Proteomics
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 _CHROMATOGRAMLIST_THERMO_
25
#define _CHROMATOGRAMLIST_THERMO_
26
27
28
#include "
pwiz/utility/misc/Export.hpp
"
29
#include "
pwiz/data/msdata/ChromatogramListBase.hpp
"
30
#include "
pwiz/utility/misc/Container.hpp
"
31
#include "
pwiz/utility/misc/String.hpp
"
32
#include "
pwiz/utility/misc/Stream.hpp
"
33
#include "
pwiz/data/msdata/Reader.hpp
"
34
35
36
#ifdef PWIZ_READER_THERMO
37
#include "pwiz_aux/msrc/utility/vendor_api/thermo/RawFile.h"
38
#include "
pwiz/utility/misc/IntegerSet.hpp
"
39
#include "
pwiz/utility/misc/Once.hpp
"
40
#include <boost/icl/interval_set.hpp>
41
#include <boost/icl/continuous_interval.hpp>
42
using namespace
pwiz::vendor_api::Thermo;
43
#endif // PWIZ_READER_THERMO
44
45
46
using
boost::shared_ptr;
47
48
49
namespace
pwiz
{
50
namespace
msdata {
51
namespace
detail {
52
53
class
PWIZ_API_DECL
ChromatogramList_Thermo
:
public
ChromatogramListBase
54
{
55
public
:
56
57
virtual
size_t
size()
const
;
58
virtual
const
ChromatogramIdentity
& chromatogramIdentity(
size_t
index)
const
;
59
virtual
size_t
find(
const
string
&
id
)
const
;
60
virtual
ChromatogramPtr
chromatogram(
size_t
index,
bool
getBinaryData)
const
;
61
62
#ifdef PWIZ_READER_THERMO
63
ChromatogramList_Thermo
(
const
MSData
& msd, RawFilePtr rawfile,
const
Reader::Config
& config);
64
65
ChromatogramPtr
xic(
double
startTime,
double
endTime,
const
boost::icl::interval_set<double>& massRanges,
int
msLevel);
66
67
private
:
68
69
const
MSData
& msd_;
70
shared_ptr<RawFile> rawfile_;
71
const
Reader::Config
config_;
72
73
mutable
util::once_flag_proxy
indexInitialized_;
74
75
struct
IndexEntry :
public
ChromatogramIdentity
76
{
77
CVID chromatogramType;
78
ControllerType controllerType;
79
long
controllerNumber;
80
string
filter
;
81
double
q1, q3;
82
double
q3Offset;
83
CVID polarityType;
84
};
85
86
mutable
vector<IndexEntry> index_;
87
mutable
map<string, size_t> idMap_;
88
89
void
createIndex()
const
;
90
#endif // PWIZ_READER_THERMO
91
};
92
93
}
// detail
94
}
// msdata
95
}
// pwiz
96
97
#endif // _CHROMATOGRAMLIST_THERMO_
pwiz::msdata::Reader::Config
Reader configuration.
Definition:
Reader.hpp:44
pwiz::util::once_flag_proxy
Definition:
Once.hpp:34
pwiz
Definition:
ChromatogramList_Filter.hpp:36
ralab::base::filter::filter
void filter(const TContainer &data, const TContainer &filter, TContainer &result, bool circular=false, uint32_t sides=2)
Applies linear convolution (filtering) to a univariate time series.
Definition:
filter.hpp:112
ChromatogramListBase.hpp
pwiz::msdata::ChromatogramListBase
common functionality for base ChromatogramList implementations
Definition:
ChromatogramListBase.hpp:37
PWIZ_API_DECL
#define PWIZ_API_DECL
Definition:
Export.hpp:32
Container.hpp
pwiz::msdata::ChromatogramIdentity
Identifying information for a chromatogram.
Definition:
MSData.hpp:489
Export.hpp
pwiz::msdata::detail::ChromatogramList_Thermo
Definition:
ChromatogramList_Thermo.hpp:53
Once.hpp
String.hpp
Stream.hpp
pwiz::msdata::MSData
This is the root element of ProteoWizard; it represents the mzML element, defined as: intended to cap...
Definition:
MSData.hpp:849
pwiz::msdata::ChromatogramPtr
boost::shared_ptr< Chromatogram > ChromatogramPtr
Definition:
MSData.hpp:624
IntegerSet.hpp
Reader.hpp
Generated by
1.8.17